This repository has been archived on 2026-08-31. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
donglora/firmware
swaits c7f145c787 refactor: unified host/ communication module, cfg-free run()
- Created host/ module with internal cfg dispatch (USB vs UART)
- Moved usb/task.rs → host/usb.rs, uart/task.rs → host/uart.rs
- Moved protocol_io.rs → host/framing.rs
- Renamed usb_task/uart_task to host_task (uniform name)
- Removed all host-comm cfg from main.rs
- The run() function now has ZERO board-specific conditional compilation
- Deleted old usb/, uart/, protocol_io.rs modules
2026-04-07 09:40:59 -06:00
..
2026-04-06 22:30:45 -06:00
2026-04-06 21:15:35 -06:00
2026-04-03 10:28:38 -06:00
2026-04-06 21:15:35 -06:00
2026-04-06 21:15:35 -06:00
2026-04-06 22:30:45 -06:00
2026-04-07 08:18:28 -06:00
2026-04-06 21:15:35 -06:00
2026-04-03 10:28:38 -06:00
2026-04-03 10:28:38 -06:00
2026-04-07 08:18:28 -06:00

DongLoRa Firmware

Embedded Rust firmware for DongLoRa boards. Exposes the LoRa radio over USB CDC-ACM using a COBS-framed binary protocol.

Building

just setup              # one-time toolchain install
just build heltec_v4    # build for a specific board
just flash heltec_v4    # build + flash
just check-all          # compile-check all boards
just clippy heltec_v4   # lint
just test               # host-side protocol unit tests

All commands are run from the firmware/ directory.

Supported Boards

Board MCU Radio Target
Heltec V3 ESP32-S3 SX1262 xtensa-esp32s3-none-elf
Heltec V4 ESP32-S3 SX1262 xtensa-esp32s3-none-elf
RAK WisBlock 4631 nRF52840 SX1262 thumbv7em-none-eabihf

Adding a Board

See src/board/PORTING.md.

Protocol

See PROTOCOL.md for the complete wire format specification.