Переглянути джерело

Bridge: Add t114 rs232 targets

João Brázio 8 місяців тому
батько
коміт
69a9a0bce9

+ 3 - 5
src/helpers/bridges/RS232Bridge.cpp

@@ -15,10 +15,9 @@ void RS232Bridge::begin() {
 
 #if defined(ESP32)
   ((HardwareSerial *)_serial)->setPins(WITH_RS232_BRIDGE_RX, WITH_RS232_BRIDGE_TX);
-#elif defined(RAK_4631) 
-  ((Uart *)_serial)->setPins(WITH_RS232_BRIDGE_RX, WITH_RS232_BRIDGE_TX);
 #elif defined(NRF52_PLATFORM)
-  ((HardwareSerial *)_serial)->setPins(WITH_RS232_BRIDGE_RX, WITH_RS232_BRIDGE_TX);
+  // Tested with RAK_4631 and T114
+  ((Uart *)_serial)->setPins(WITH_RS232_BRIDGE_RX, WITH_RS232_BRIDGE_TX);
 #elif defined(RP2040_PLATFORM)
   ((SerialUART *)_serial)->setRX(WITH_RS232_BRIDGE_RX);
   ((SerialUART *)_serial)->setTX(WITH_RS232_BRIDGE_TX);
@@ -123,8 +122,7 @@ void RS232Bridge::sendPacket(mesh::Packet *packet) {
 
     // Check if packet fits within our maximum payload size
     if (len > (MAX_TRANS_UNIT + 1)) {
-      BRIDGE_DEBUG_PRINTLN("TX packet too large (payload=%d, max=%d)\n", len,
-                           MAX_TRANS_UNIT + 1);
+      BRIDGE_DEBUG_PRINTLN("TX packet too large (payload=%d, max=%d)\n", len, MAX_TRANS_UNIT + 1);
       return;
     }
 

+ 1 - 1
src/helpers/bridges/RS232Bridge.h

@@ -40,7 +40,7 @@
  * Platform Support:
  * Different platforms require different pin configuration methods:
  * - ESP32: Uses HardwareSerial::setPins(rx, tx)
- * - NRF52: Uses HardwareSerial::setPins(rx, tx)
+ * - NRF52: Uses Uart::setPins(rx, tx)
  * - RP2040: Uses SerialUART::setRX(rx) and SerialUART::setTX(tx)
  * - STM32: Uses HardwareSerial::setRx(rx) and HardwareSerial::setTx(tx)
  */

+ 38 - 0
variants/heltec_t114/platformio.ini

@@ -59,6 +59,25 @@ build_flags =
 ;  -D MESH_PACKET_LOGGING=1
 ;  -D MESH_DEBUG=1
 
+[env:Heltec_t114_without_display_repeater_bridge_rs232]
+extends = Heltec_t114
+build_flags =
+  ${Heltec_t114.build_flags}
+  -D ADVERT_NAME='"RS232 Bridge"'
+  -D ADVERT_LAT=0.0
+  -D ADVERT_LON=0.0
+  -D ADMIN_PASSWORD='"password"'
+  -D MAX_NEIGHBOURS=50
+  -D WITH_RS232_BRIDGE=Serial2
+  -D WITH_RS232_BRIDGE_RX=9
+  -D WITH_RS232_BRIDGE_TX=10
+;  -D BRIDGE_DEBUG=1
+;  -D MESH_PACKET_LOGGING=1
+;  -D MESH_DEBUG=1
+build_src_filter = ${Heltec_t114.build_src_filter}
+  +<helpers/bridges/RS232Bridge.cpp>
+  +<../examples/simple_repeater>
+
 [env:Heltec_t114_without_display_room_server]
 extends = Heltec_t114
 build_src_filter = ${Heltec_t114.build_src_filter}
@@ -151,6 +170,25 @@ build_flags =
 ;  -D MESH_PACKET_LOGGING=1
 ;  -D MESH_DEBUG=1
 
+[env:Heltec_t114_repeater_bridge_rs232]
+extends = Heltec_t114
+build_flags =
+  ${Heltec_t114.build_flags}
+  -D ADVERT_NAME='"RS232 Bridge"'
+  -D ADVERT_LAT=0.0
+  -D ADVERT_LON=0.0
+  -D ADMIN_PASSWORD='"password"'
+  -D MAX_NEIGHBOURS=50
+  -D WITH_RS232_BRIDGE=Serial2
+  -D WITH_RS232_BRIDGE_RX=9
+  -D WITH_RS232_BRIDGE_TX=10
+;  -D BRIDGE_DEBUG=1
+;  -D MESH_PACKET_LOGGING=1
+;  -D MESH_DEBUG=1
+build_src_filter = ${Heltec_t114_with_display.build_src_filter}
+  +<helpers/bridges/RS232Bridge.cpp>
+  +<../examples/simple_repeater>
+
 [env:Heltec_t114_room_server]
 extends = Heltec_t114_with_display
 build_src_filter = ${Heltec_t114_with_display.build_src_filter}