This project tries to implement multihopping data relay on the network of ESP32 modules -- TTGO-T-Beam nodes. It uses flood routing from the project: Flood Routing with Motelib.
The firmware uses UART2 for communicating with the weather station through UART-232 module, while UART0 and UART1 are used for debugging and connecting with GPS respectively. The signal pins between the two modules are connected as following:
- [T-Beam].2 (TXD2) <--> [UART-232].TXD
- [T-Beam].13 (RXD2) <--> [UART-232].RXD
- [T-Beam].GND <--> [UART-232].GND
- [T-Beam].5V <--> [UART-232].VCC
Board of the weather station sends data through DB9 connector. T-Beam receives the data with the transceiver board, UART-232 module. The DB9 pins are connected as following:
- [station].2 (TX232) <--> [UART-232].3 (RX232)
- [station].3 (RX232) <--> [UART-232].2 (TX232)
- [station].5 (GND) <--> [UART-232].5 (GND)
- Use Vscode plus Arduino extension to open the project in directory src.
- Compile and flash into a T-Beam board without any re-configuration. The code will automatically dectect revision of the board.
- At runtime, pass a command to set id as 0 for the node connected to the gateway device.
- The work flow is explained in the next section.
- After booting, a T-Beam node will be waiting data passed from its attached weather station.
- If the data is available through UART2, the node sends it out via the routing protocol to the sink node id 0 which is determined to be connected to the gateway.
- The sink node sends out the data it received, to the gateway through UART0 -- debugging port.
- Project that is provided the routing mechanism.
On purpose, these commands could be send to T-Beam through UART0, debugging port.
help
for listing all commands.hello
for testing only.node_id
for setting node id, e.g.,node_id
for asking the current node id.node_id <id>
for setting the new id where in [0..25535].
vtube <params>
for forwarding data through UART2.