docs/fw: full feature catalog, robust HTTP body reads, CORS, LED off at boot #2
Reference in New Issue
Block a user
Delete Branch "docs/readme-full-catalog-and-api"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
app_net.c: replace barehttpd_req_recvwith TCP-saferecv_body_capped/recv_body_allochelpers; addOPTIONS /*CORS preflight; bump WS broadcast buffer to 2048nfc_access_lock/nfc_access_unlockmutex around concurrent NFC callsboard_rgb_off.c: kill onboard WS2812/SK6812 (GPIO 48) at boot vialed_strip+ RMT; called first inapp_mainsdkconfig.defaults: add board RGB Kconfig defaultsnet_service/CMakeLists.txt: addhttp_parserdep forHTTP_OPTIONSdocs/LIMITATIONS.md,docs/PINOUT.md: expand and correctTest plan
npm run build:fwsucceedsidf.py buildcompiles cleanly with ESP-IDF 5.xOPTIONS) returns 204 with correct headersFirmware: - nfc_engine: add nfc_engine_try_init() (non-fatal, sets s_pn532_ready), nfc_engine_try_reattach() (soft re-init, skips bus re-init), nfc_engine_is_ready() accessor - main: replace ESP_ERROR_CHECK(nfc_engine_init) with nfc_engine_try_init; device boots and serves web UI even with no PN532 connected - app_net: add reconnect_task — every 5s retries nfc_engine_try_reattach() and broadcasts {"channel":"pn532","payload":{"connected":true}} over WS - app_net: scan_loop_task skips polling when !nfc_engine_is_ready() - app_net/api_status: always emit pn532Connected bool; null-guard pn532 fw object - find_sector_hit / program_classic_snapshot_locked: null-guard cJSON array items - session_capture: abort if xSemaphoreCreateMutex() returns NULL Web: - NfcWsContext: track pn532Connected state from WS pn532 channel + status fetch on connect - App.tsx: live HeaderBadge (LIVE/NO RF/WAIT) replacing static text - Dashboard: READY/SEARCHING pill with fw version when available - api.ts: add pn532Connected to Status type - toast.tsx: fix ID collision (Date.now + Math.random) - Capture: surface status fetch errors - ReadAnalyze: add error feedback for readUl when no data returned - WriteClone: busy state on both write buttons - RawConsole: toast when frame returns error not response - Emulate: validate hex before send (non-empty, even length, hex chars only) - Brute: warn and skip invalid custom key lines Made-with: CursorView command line instructions
Checkout
From your project repository, check out a new branch and test the changes.