Commit Graph
27 Commits
Author SHA1 Message Date
João Brázio 04e70829a4 Rename RS232 bridge environments 2025-09-07 21:46:51 +01:00
João Brázio 5b9d11ac8f Support ESPNow and improve documentation 2025-09-07 21:39:54 +01:00
João Brázio cb99eb4ae8 Remove retransmit check for RS232 bridge in logTx
Since the flag is preserved and respected by the mesh processing on the receiving end, there's no risk of these packets being retransmitted endlessly.
2025-09-05 14:49:06 +01:00
João Brázio 5843a12c71 Rename SerialBridge to RS232Bridge 2025-09-05 11:28:40 +01:00
João Brázio 375093f78d Add nRF52 support and refactor packet handling
This commit introduces several improvements to the SerialBridge helper:

- Adds support for the nRF52 platform by implementing the `setPins` configuration.
- Corrects the type cast for the RP2040 platform from `HardwareSerial` to `SerialUART`.
- Refactors packet deserialization to use a new `Packet::readFrom()` method instead of a direct `memcpy`, improving encapsulation.
- Updates the packet length validation to use the more appropriate `MAX_TRANS_UNIT` constant.
2025-09-05 09:22:06 +01:00
João Brázio 77ab19153e Add serial logging for TX/RX packets 2025-09-05 02:07:26 +01:00
João Brázio 2b920dfed3 Rework packet serialization and parsing 2025-09-05 01:50:50 +01:00
João Brázio ee3c4baea5 Prevent packet loops and duplicates
Implement a "seen packets" table to track packets that have already been processed by the serial bridge.

This prevents packets from being re-transmitted over the serial link if they have already been seen, and it stops inbound packets from serial from being re-injected into the mesh if they are duplicates.

Duplicate inbound packets are now freed to prevent memory leaks.
2025-09-04 23:50:13 +01:00
João Brázio 1948d284a0 Extract serial bridge into dedicated classes
This commit refactors the serial bridge functionality out of the `simple_repeater` example and into a more reusable, object-oriented structure.

An `AbstractBridge` interface has been introduced, along with a concrete `SerialBridge` implementation. This encapsulates all the logic for packet framing, checksum calculation, and serial communication, cleaning up the main example file significantly.

The `simple_repeater` example now instantiates and uses the `SerialBridge` class, resulting in better separation of concerns and improved code organization.
2025-09-04 23:43:05 +01:00
João Brázio 9fd7e9427a Add bridge support for WSL3 board 2025-09-01 10:53:51 +01:00
João Brázio cf4720bd34 Merge remote-tracking branch 'upstream/dev' into jbrazio/2025_3f11ad35 2025-09-01 10:47:19 +01:00
João Brázio 78fcb704bc Increase power limit for Heltec v3 433 MHz 2025-08-25 17:44:14 +01:00
João Brázio 7f142245e6 Merge remote-tracking branch 'origin/dev' into jbrazio/2025_3f11ad35 2025-08-22 23:00:35 +01:00
João Brázio 85273a6dc6 Merge remote-tracking branch 'origin/dev' into jbrazio/2025_3f11ad35 2025-07-29 00:31:52 +01:00
João Brázio 04042e3ca0 Refactor serial bridge handling 2025-07-09 11:03:35 +01:00
João Brázio 97b51900f8 More robust handling of pkt len 2025-07-08 21:45:49 +01:00
João Brázio 92ee1820c4 Add null check for packet allocation and clean up Dispatcher 2025-07-08 16:02:10 +01:00
João Brázio ac056fb0b9 Remove serial bridge implementation and implement simplified version directly in the repeater source code. 2025-07-08 14:04:21 +01:00
João Brázio 3375389181 Merge remote-tracking branch 'upstream/dev' into jbrazio/2025_3f11ad35 2025-07-04 11:57:09 +01:00
João Brázio 2f77cef04b Add config flags to variants 2025-06-29 16:28:11 +01:00
João Brázio 4b70ee863d Serial bridge implementation 2025-06-27 20:16:14 +01:00
João Brázio 24464d0c4e Update VBAT schematic 2025-06-16 21:28:59 +01:00
João Brázio 110bd49407 VBAT schematic 2025-06-16 19:51:53 +01:00
João Brázio f3e85a6fba Update SX126X_CURRENT_LIMIT 2025-06-16 16:57:43 +01:00
João Brázio 3448db6e36 Rename LED pin 2025-06-16 02:01:16 +01:00
João Brázio 52acae1fe7 Set default upload protocol 2025-06-16 02:01:04 +01:00
João Brázio 8f6b2b75d7 Waveshare RP2040-LoRa board support 2025-06-15 23:48:49 +01:00