football2801 6d3dee7659 fix(provisioning): rip out racy DHCP-option dance, add /log endpoint
The previous "force DHCP DNS offer" code (esp_netif_dhcps_stop / set
DNS / set option / dhcps_start) ran AFTER softAP was already serving
beacons. A fast iOS join — and CNA probes follow DHCP within 1-2s —
could land in the middle of the dance and either get a stale lease
or be racing the server start. ESP-IDF's softAP DHCP server already
advertises the AP IP as DNS by default, so the dance was at best
redundant. Strip it. Also drop the WiFi.disconnect(true) call before
mode-switching to AP — there's nothing to disconnect from on a cold
boot, and disconnect(true) cycles the radio for no benefit.

Add /log: in-memory ring buffer (32 entries, FIFO) of HTTP requests
and AP-state events served as plain text at http://192.168.4.1/log.
Lets the user diagnose without USB serial — join the AP, browse to
the URL, see exactly which CNA paths iOS hit (or didn't).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 12:41:08 -04:00
2026-05-06 13:30:08 -04:00
S
Description
pictureFrame ESP32 firmware — PlatformIO / Arduino
6.1 MiB
2026-05-15 17:57:19 +00:00
Languages
C++ 61.1%
Python 31.4%
C 7.5%