This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

UART TTL Level Communication Distance

I am facing some embarrassing problems recently.

After some trouble-shooting, I found that:
We have Board-A and Board-B. Board-A and Board-B communicate to each other with a UART TTL Level Communication. The communication cable is around 80cm long. During the communication, I got a lot of UART errors.

My mission is to build a more reliable communication between Board-A and Board-B; but not allowed to modify the hardware design and baud-rate.

To me, it is not wise to use a UART TTL Level Communication between two boards. However, I am being told that, it is very popular to us to use a UART TTL Level Communication between two boards.

I tried to find some articles/documentation to convince the involved people, that, they should not use a UART TTL Level Communication between two boards. But I can not find anything useful. What I could find is something like:
The UART usually does not directly generate or receive the external signals used between different items of equipment.

My question is:
Where can I find some convincing articles/documentation to convince the involved people? (This is to avoid the future problems.)
If I am not allowed to modify the hardware design and baud-rate, what choices do I have to build a more reliable communication?

Parents
  • How does it work with a shorter cable?

    Do you have any differential in your PCB grounds or are there things injecting current spikes in the power leads?

    TTL 19.2k baud should not be a problem over 80cm.

    For reflash and calibration purposes, I have had 40 foot or longer 18 ga cable for a 5v TTL RS-232 at 115.2kbaud without any communication problems.

    The drive circuits were a simple CPU -> resistor -> transistor base. Transistor emitter was grounded. Collector had a pullup resistor to +5. Collector was also the controller TX output. Rx circuit was the same except backwards and had base pulldown resistor. A 2N3904 was used. Note, when a 2n2222 was used, certain PCB's had errors at high baud rates due distorted waveforms.

    If you can't modify the design or baud rate it sounds like choices are slim if the problem is in the design or UARTs. Perhaps a cable that can clean up any noise or ground potential? Send out some 0x55 or 0xaa's and see what the bits look like.

    Chad

Reply
  • How does it work with a shorter cable?

    Do you have any differential in your PCB grounds or are there things injecting current spikes in the power leads?

    TTL 19.2k baud should not be a problem over 80cm.

    For reflash and calibration purposes, I have had 40 foot or longer 18 ga cable for a 5v TTL RS-232 at 115.2kbaud without any communication problems.

    The drive circuits were a simple CPU -> resistor -> transistor base. Transistor emitter was grounded. Collector had a pullup resistor to +5. Collector was also the controller TX output. Rx circuit was the same except backwards and had base pulldown resistor. A 2N3904 was used. Note, when a 2n2222 was used, certain PCB's had errors at high baud rates due distorted waveforms.

    If you can't modify the design or baud rate it sounds like choices are slim if the problem is in the design or UARTs. Perhaps a cable that can clean up any noise or ground potential? Send out some 0x55 or 0xaa's and see what the bits look like.

    Chad

Children