This page last changed on May 14, 2013 by stif.

Hi Folks,

I am completely out of luck with sending a Carriage Return over TCP/IP.

I use a Global Cache iTach IP2SL and want to control a DVD Player which need a command like "STOP<CR><LF>"
The iTach Documentation says it does no conversation at all and sends data received by TCP as is to RS232.

In Order to isolate the problem i also removed the iTach and send the Command to a TCP Server running locally on Port 4999 (Hercules from HW-group.com)

No matter how i try to escape the Carriage Return / Line Feed, everytime the TCP Server receives a literal string and no control characters at all.
I tried to the following inputs in the command window (without the quotes):

 "STOP\r\n", "STOP\\r\\n", "STOP\x0D\x0A", "STOP/x0D/x0A", "STOP0x0D0x0A", "STOP\0x0D\0x0A","STOP&#10;&#13;" "STOP&#xD;&#xA;", "STOP$0D$0A", "STOP%0D%0A", etc 

and also complete Hex strings like "0x50574F4E0D" but none of this inputs where converted to control characters while sending it.

I also searched the forum for possible answers, and find some people with the same problem, but so far without any solution.

So my question(s):
Is it possible to send control characters over TCP/IP, UDP or Telnet. And if so how to Escape them?
Is OpenRemote capable of sending an RS232 carriage return via Global Cache iTach IP2SL?

It would be great if anybody can answer my questions, since i am trying to solve this issue since 2 days now

With regards to TCP, I will need to check and run some tests.

Posted by juha at May 16, 2013 08:35

Hi Juha, thanks for your answer.

To solve this issue i took a look at the source code and changed following line in the function RequestSocket() in the file TCPSocketCommand.java

out.write((cmd + "\r\n").getBytes());

I know this is a dirty workaround, but at least the setup is working right now

Anyway i am still interested in a clean solution how to send control characters via TCP.

cheers and keep up all the great work,
Stefan

Posted by stif at May 16, 2013 18:34

Hello Stefan,

can you tell me where I find source code or more specific the TCPSocketCommand.java? I need to have a look inside for sorting out an other problem I have at the moment.

Marc

Posted by hennemarc at Nov 08, 2013 09:19

Hello Marc,

Depends on what version you are using.
For the Controller 2.0.2 Stable, here is the source directory for TCPSocketCommand.java: http://sourceforge.net/p/openremote/code/HEAD/tree/tags/project/Controller/Controller_2_0_2/src/org/openremote/controller/protocol/socket/

See also this page for building the project with your own modification: http://www.openremote.org/display/docs/Building+OpenRemote+2.0+Developer+Releases

cheers,
stefan

Posted by stif at Nov 08, 2013 13:16
Document generated by Confluence on Jun 05, 2016 09:40