feat: native USB CDC-ACM support for Heltec V3

The default heltec_v3 feature now uses native USB OTG (same as V4),
appearing as /dev/ttyACM0 with the DongLoRa VID:PID (1209:5741).
This requires a hardware mod: solder R29/R3 and disconnect the CP2102
from the USB data lines.

Stock (unmodified) V3 boards should use the new heltec_v3_uart feature
which preserves the original UART-over-CP2102 behavior (/dev/ttyUSB0).

- heltec_v3: switched from UART to USB OTG
- heltec_v3_uart: new feature, UART fallback for stock boards
- Removed #[cfg] gates on UsbParts/UartParts (both always defined)
- Updated README with hardware mod instructions and board table
- Updated justfile with heltec_v3_uart board definition
This commit is contained in:
swaits committed 2026-04-07 10:44:25 -06:00
1 parent 07651dce44
commit 6db287c241
9 files changed
+142 -20

No files matched your search

+2 -2
View File
@@ -32,12 +32,12 @@ pub struct RadioParts {
pub delay: Delay,
}
#[cfg(not(feature = "heltec_v3"))]
#[allow(dead_code)] // Not used by heltec_v3_uart
pub struct UsbParts {
pub driver: UsbDriver,
}
#[cfg(feature = "heltec_v3")]
#[allow(dead_code)] // Only used by heltec_v3_uart
pub struct UartParts {
pub driver: UartDriver,
}