I need to read UART data from one device, and send different data to the other device, all via raspberry pi zero. It has only one UART TX and one UART RX on GPIO pins, but I heard that it is possible to accomplish such thing. I need to use only GPIO pins (Micro USB + FTDI is not an option). Can someone suggest an option? I need to fully communicate with one device (RX+TX), and only listen to the second device (RX only).

1 Answer 1


I suggest you use the hardware UART (pins 8/10, GPIO 14/15) to communicate with the read/write device.

As long as the receive baud rate is 19.2kbps or less you should be able to use pigpio to read data from the read only device. Higher rates may also work but you are likely to have the occasional error.

You can use any spare GPIO for the read device.

For a command line example see SLRO and SLR.

  • I tried bit banging, but whatever i do, i still get 0 bits read, while constantly sending data via uart :/
    – leller
    Apr 13, 2019 at 18:12
  • Could be many things wrong, most likely is there is no ground connection between the device and the Pi. If that's not the reason ask a new question adding a photo of the connections.
    – joan
    Apr 13, 2019 at 19:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.