A collection of my MicroPython tests for cheap TTL-UART to RS485 converters, the ping-pong program requiring 4 converters at all.
README.md |
micropython-rp2-rs485-examples
Whats this?
This is a small collection of some programs I wrote to test the functionality of some cheap TTL-UART to RS485 converters, written in MicroPython
Here's a short list of the different programs and what they do:
-
rs485_send.py: sends a incrementing counter (starting at 0) as an UTF-8 encoded string with \r\n as delimiter over rs485
-
rs485_receive.py: receives utf-8 encoded strings and prints them out as soon as a \n is received.
-
rs485_pingpong.py: this implements a simple ping-pong over two channels (4 converters needed). For more information, see [Wiring].
Wiring
TODO
Useful links
- https://www.berrybase.de/2-kanal-rs485-modul-fuer-raspberry-pi-pico-sp3485-transceiver - Pinout for a two-channel rs485 converter HAT by waveshare for the pi pico I used during development
- https://www.analog.com/media/en/technical-documentation/data-sheets/MAX1487-MAX491.pdf - Datasheet of MAX485, a well-known chip soldered on another converter I bought (gives useful insights in how the UART communications work, and how to enable/disable read/write)
- https://www.python-forum.de/viewtopic.php?t=56795 - German forum entry with sample code
- https://www.waveshare.com/wiki/Pico-2CH-RS485 - the wiki entry of waveshare about the 2-Channel converter I used among other converters (also contains sample code)
- https://docs.micropython.org/en/latest/library/machine.UART.html - Documentation of the UART library of MicroPython I used for transferring data to the converters
License
see LICENSE.md