Line-based JSON protocol over the ESP32-S3 native USB OTG port, providing deterministic sub-millisecond attenuator control without WiFi interference. Runs alongside the existing REST API. Commands: identify, status, config, set, sweep, sweep_stop Protocol: usb-serial-json-v1 (one JSON object per \n-terminated line) Also addresses pre-existing reliability issues found during review: - Thread safety: FreeRTOS mutex in Attenuator class (web server callbacks run on async_tcp task, not loop()) - NVS flash wear: skip persist during sweep, save on stop - WiFi credentials: moved to gitignored platformio_local.ini - Shared header: sweep.h replaces duplicated extern declarations
7 lines
235 B
Plaintext
7 lines
235 B
Plaintext
; Copy this file to platformio_local.ini and fill in your WiFi credentials.
|
|
; platformio_local.ini is gitignored and will not be committed.
|
|
[wifi]
|
|
build_flags =
|
|
'-DWIFI_SSID="your_ssid_here"'
|
|
'-DWIFI_PASS="your_password_here"'
|