Commit Graph

23183 Commits

Author SHA1 Message Date
J. Nick Koston
40da111322 Merge branch 'ultra_low_latancy_select_esp32' into integration 2026-02-24 08:44:43 -06:00
J. Nick Koston
73092d14a5 tweak comments 2026-02-24 08:44:31 -06:00
J. Nick Koston
bd906a0fbd Merge branch 'ultra_low_latancy_select_esp32' into integration 2026-02-24 08:42:32 -06:00
J. Nick Koston
36eb31e8ee tweak comments 2026-02-24 08:42:23 -06:00
J. Nick Koston
96cbea96a1 Merge branch 'ultra_low_latancy_select_esp32' into integration 2026-02-24 08:40:35 -06:00
J. Nick Koston
8d997c247e improve comments about safety 2026-02-24 08:40:02 -06:00
J. Nick Koston
3edf5f97db Merge remote-tracking branch 'origin/light-gamma-lut' into integration 2026-02-23 23:17:11 -06:00
J. Nick Koston
5e713a84a0 [light] Remove unused color_interlock parameter from current_values_as_rgb/rgbw
The color_interlock parameter was accepted but never read in
current_values_as_rgb and current_values_as_rgbw — a leftover
from when it was forwarded to LightColorValues::as_rgb().
2026-02-23 23:15:23 -06:00
J. Nick Koston
ccd9936080 Merge branch 'ultra_low_latancy_select_esp32' into integration 2026-02-23 22:24:55 -06:00
J. Nick Koston
07014b09ae Revert "Add fast_select diagnostic counters logged every 10000 loops"
This reverts commit 29ffeeeb19.
2026-02-23 22:22:26 -06:00
J. Nick Koston
29ffeeeb19 Add fast_select diagnostic counters logged every 10000 loops 2026-02-23 22:21:07 -06:00
J. Nick Koston
ccdaf9b940 Merge branch 'ultra_low_latancy_select_esp32' into integration 2026-02-23 22:16:37 -06:00
J. Nick Koston
d1dffafc86 Clarify rcvevent reads are main-loop-only due to socket ownership 2026-02-23 22:14:15 -06:00
J. Nick Koston
44462d8453 Document Socket::ready() as main-loop-only 2026-02-23 22:10:29 -06:00
J. Nick Koston
341395a1cd Remove unused public is_socket_ready() 2026-02-23 22:09:46 -06:00
J. Nick Koston
63a144fb43 Fix is_socket_ready comment: main loop only, not thread-safe 2026-02-23 22:07:58 -06:00
J. Nick Koston
5a378143e2 Fix LwIP source references and thread safety comments 2026-02-23 22:06:17 -06:00
J. Nick Koston
04af37e514 Note lwip_socket_dbg_get_socket wraps tryget_socket_unconn_nouse 2026-02-23 22:01:36 -06:00
J. Nick Koston
cba004e2d1 Check for pending socket data before sleeping 2026-02-23 21:49:26 -06:00
J. Nick Koston
8d1cf9fd7d Add clarifying comments for review feedback 2026-02-23 21:37:19 -06:00
J. Nick Koston
1c886d43e7 Extract get_sock() helper to deduplicate lookup pattern 2026-02-23 21:33:05 -06:00
J. Nick Koston
746e760697 Remove dead NULL check on s_original_callback 2026-02-23 21:32:18 -06:00
J. Nick Koston
661f826bf1 comments 2026-02-23 21:27:03 -06:00
J. Nick Koston
6734aa1544 comments 2026-02-23 21:24:29 -06:00
J. Nick Koston
c3dee3d307 comments 2026-02-23 21:21:43 -06:00
J. Nick Koston
29416061ea comments 2026-02-23 21:20:38 -06:00
J. Nick Koston
3fd24b779c comments 2026-02-23 21:17:50 -06:00
J. Nick Koston
c9c73ec6e9 cleanup 2026-02-23 21:13:16 -06:00
J. Nick Koston
a696ed4920 cleanup 2026-02-23 21:10:59 -06:00
J. Nick Koston
3e0cdc2404 cleanup 2026-02-23 21:10:38 -06:00
J. Nick Koston
86642ab9d7 cleanup 2026-02-23 21:04:08 -06:00
J. Nick Koston
fd6d0de7a2 cleanup 2026-02-23 21:00:00 -06:00
J. Nick Koston
64364961db [core] Replace lwip_select() with direct rcvevent reads on ESP32
On ESP32, replace lwip_select() in yield_with_select_() with direct
socket event reads via lwip_socket_dbg_get_socket(), reducing poll
cost from 133us to ~7us (18.7x faster). Replace the UDP loopback
wake socket with FreeRTOS task notifications (<2us, ISR-safe).

Benchmarks (ESP32, 4 listen sockets):
- Poll path: 7,087 ns vs 132,402 ns (18.7x faster)
- Wake signal: 1,826 ns vs ~130,000 ns (72x faster, now ISR-safe)
- Binary: yield_with_select_ 108B vs 188B (43% smaller)

Non-ESP32 platforms (LibreTiny, ESP8266, RP2040) are unchanged.
2026-02-23 20:47:54 -06:00
J. Nick Koston
ad2da0af52 [network] Use C++17 nested namespace syntax (#14248) 2026-02-24 02:00:21 +00:00
J. Nick Koston
7d9d90d3f8 [cse7766] Use C++17 nested namespace syntax (#14247) 2026-02-23 20:50:22 -05:00
J. Nick Koston
70e47f301d [ethernet] Use C++17 nested namespace syntax (#14246) 2026-02-23 20:50:11 -05:00
J. Nick Koston
1614eb9c9c [i2c] Use C++17 nested namespace syntax (#14245) 2026-02-23 20:50:00 -05:00
J. Nick Koston
a694003fe3 [usb_host] Use C++17 nested namespace syntax (#14244) 2026-02-23 20:49:48 -05:00
J. Nick Koston
500aa7bf1d [text_sensor] Use C++17 nested namespace syntax (#14243) 2026-02-23 20:49:35 -05:00
J. Nick Koston
63c1496115 [text] Use C++17 nested namespace syntax (#14242) 2026-02-23 20:49:25 -05:00
J. Nick Koston
843d06df3f [switch] Use C++17 nested namespace syntax (#14241) 2026-02-23 20:49:15 -05:00
J. Nick Koston
30cc51eac9 [version] Use C++17 nested namespace syntax (#14240) 2026-02-23 20:49:00 -05:00
J. Nick Koston
856760943b Merge branch 'cse7766-cpp17-namespace' into integration 2026-02-23 18:35:14 -06:00
J. Nick Koston
2d7988c911 Merge branch 'ethernet-cpp17-namespace' into integration 2026-02-23 18:35:09 -06:00
J. Nick Koston
18b587dc93 [cse7766] Use C++17 nested namespace syntax 2026-02-23 18:34:27 -06:00
J. Nick Koston
dba69d4c0a [ethernet] Use C++17 nested namespace syntax 2026-02-23 18:33:07 -06:00
J. Nick Koston
311720e467 Merge branch 'i2c-cpp17-namespace' into integration 2026-02-23 18:32:37 -06:00
J. Nick Koston
5c8de42486 Merge branch 'usb-host-cpp17-namespace' into integration 2026-02-23 18:32:31 -06:00
J. Nick Koston
aff94c6502 [i2c] Use C++17 nested namespace syntax 2026-02-23 18:32:00 -06:00
J. Nick Koston
40e18ca1b9 [usb_host] Use C++17 nested namespace syntax and constexpr 2026-02-23 18:30:45 -06:00