Support Home


Knowledge Base


Documentation


Contact Support


Unofficial Forum

Transferring Files Via a DS Using HyperTerminal

Question: I am trying to do the following: Connect a DS100 to COM1 and to the network. I open Hyperterminal from com1 and another terminal with TCP/IP (to the IP address of the DS).

The DS is in slave mode. I open the connection from the TCP terminal first and when I type something everything works fine and I see it on the other terminal (connected to the COM port).

When I try to send a file from the TCP terminal to the COM terminal, I can't. I get an error message in the hyperterminal file transfer window saying that the file packet is corrupted. Sometimes I get buffer overflow in the ds.

The flowcontrol in on. Everything seems fine in the settings. Can you help?

Answer: This is not a problem with the DS. It goes like this:

HyperTerminal, and other programs using TCP, treat the character 255 as a “Special Character”. They use it for control purposes etc. Now… when the data stream contains this 255 character, HyperTerminal sends it TWICE – doubles it – to clarify to the other side that this 255 is a data char, and not a control char.

When the “other side” is a TCP connection, then there's no problem – the extra “255” is removed, and the data goes in just as it was meant.

However, when the “other side” is a SERIAL connection (like what we tried to do), then the “extra” 255 comes in as serial data, and it is actually garbage. It is not removed, because the serial side does not expect it to be there – it does not think there are “extra 255s”, so every 255 coming in is counted as valid. So you get junk characters!

So this is why it doesn't work!

To verify that this is indeed so:

  1. Take two DSes
  2. Set their serial settings so they would match. Set also RTS/CTS Flow Control!
  3. Connect them to one another with a SERIAL cable
  4. Open a Network connection in HyperTerminal to each one of these DSes.
  5. Send an EXE file from one DS to the other DS – it will WORK!

And it will WORK because both HyperTerminal sessions are TCP – thus, the receiving HyperTerminal session knows it should remove all extra “255” characters.

So, in summary, this is not a problem with the DS – it is just how terminal programs work sometimes.


© Tibbo Technology Inc. 2001-2009   Contact Us | Account