+This compiles in the `usb` C module (`c_mpos/usb/`) alongside TinyUSB device mode. **CDC is the default**: the device boots with a USB-serial console and the OTG peripheral stays in device mode. Host mode starts only on explicit request — Settings → "USB Host Mode" (`On` persisted, `On until reboot` one-shot, `Off`), or `USBManager.activate()` — and while it is active USB-CDC is gone (console remains over UART REPL where exposed, or WebREPL over WiFi). A stale `once` value is normalized to `Off` at the next boot, so the row never shows a stale selection. Deactivating brings CDC back; the choice persists across reboots. Holding BOOT at boot forces CDC regardless of the persisted flag.
0 commit comments