You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Periodic Connection Health-Check: When idle, NetManZX periodically queries the ESP (AT+CWJAP?, with _CUR/_DEF fallbacks) to verify that the connection is still valid. If the query fails, the UI is immediately marked as disconnected and an automatic rescan is triggered.
Improvements
Much lower keyboard latency in the network list: The UI loop was reorganized to prioritize keyboard handling and avoid unnecessary work while navigating.
Full key mapping restored: Arrow keys and Q/A for navigation, O/P for page up/down, plus all action keys (R, H, D, X, Enter, Esc).
More efficient Page Down rendering: The list is redrawn only when a page boundary is crossed, avoiding redundant full-screen redraws.
Network counter and page info on line 17: Right-aligned indicator shows X networks detected and, when applicable, (A/B pages).
Bug Fixes
Automatic drop detection made robust: Async parsing now correctly detects disconnection/reconnection markers across circular-buffer boundaries (e.g., "DISCON" / "GOT IP"), preventing missed events.
UART contention fixed: Added a uart_busy mutex to prevent checkAsyncWifi from consuming bytes during critical operations (scan/connect/getIP).
getIP hang prevention: Replaced blocking reads with readTimeout and enforced a maximum byte budget to avoid stalls.
Selection clamping after rescan: When a rescan returns fewer APs than before, offset/cursor_position are clamped so the highlight never lands on a non-existing row.
Stale counters removed: When networks_count == 0, line 17 is fully cleared to avoid displaying outdated values after rescans.