Repository navigation
Development
Zachary Nathan Goode edited this page Oct 4, 2026
·
1 revision
| Source area | Responsibility |
|---|---|
esp32-firmware/main/main.c |
Startup and active-interface selection |
esp32-firmware/main/server.c |
HTTP handlers |
sd_storage.c / crc_cache.c
|
Storage and integrity maintenance |
rs232.c |
UART transport |
network_fallback.c |
Runtime network switching |
MainWindow.xaml.cs |
Windows discovery, connection, and normal transfer actions |
DeviceApiClient.cs / Rs232ApiClient.cs
|
Client APIs |
TransferQueue.cs |
Normal per-device transfer scheduler |
Services/DeviceProtocol/ |
Package loading, validation, commands, and persistence |
- Do not treat password setup as global authorization unless handlers are actually gated.
- Preserve SD path validation and CRC-cache semantics.
- Keep the editor direct-transfer exception in mind when changing transfer concurrency/cancellation behavior.
- A protocol package's command list is not automatically supported by every device type.
-
DeviceProtocolEnginecurrently reflects the supplied mnemonic/comma/semicolon HP-GL style rather than a fully generalized wire-format engine.
Firmware uses NVS for settings/authentication/Wi-Fi and the SD card for user files plus CRC metadata. Windows persists configured RS232 devices and optional remembered passwords in %AppData%\FileLinkDiscovery.