J. Nick Koston
16aa0bf1a2
[wifi] Move LibreTiny WiFi STA state to member variable
...
Replace the file-static s_sta_state with the shared sta_state_
member variable on WiFiComponent, matching the ESP8266 change.
All accesses are in member functions so no global_wifi_component
indirection is needed.
2026-03-29 18:53:27 -10:00
J. Nick Koston
57e192543f
Add atomicity comment for sta_state_ member variable
2026-03-29 18:52:58 -10:00
J. Nick Koston
37e181a797
Move ESP8266WiFiSTAState enum to cpp, use uint8_t in header
...
Keep the enum definition private to wifi_component_esp8266.cpp and
store as uint8_t in the class to avoid leaking platform-specific
types into the shared header.
2026-03-29 18:38:04 -10:00
J. Nick Koston
7086cf3392
Fix comment: if statements with early returns, not if-else
2026-03-29 18:33:15 -10:00
J. Nick Koston
f19792df8c
Revert wifi_sta_connect_status_ header inline attempt
...
GCC doesn't inline it into loop() due to code size heuristics,
so the #ifdef complexity isn't worth it. Keep it out-of-line.
2026-03-29 18:32:28 -10:00
J. Nick Koston
96a23e5d3d
Inline is_connected_ and update_connected_state_ into header
...
Move these small methods to the header so the compiler can inline
them into loop(), eliminating two function call/return pairs from
every loop iteration on all platforms.
2026-03-29 18:29:03 -10:00
J. Nick Koston
d52d5bbda3
Move ESP8266 WiFi STA state enum to member variable
...
Replace the file-static s_sta_state with a member variable sta_state_
on WiFiComponent, consistent with error_from_callback_ and pending_
which are also written from the static callback via global_wifi_component.
2026-03-29 18:16:41 -10:00
J. Nick Koston
cee1168293
Use if-else instead of switch to avoid CSWTCH in rodata
...
On ESP8266, GCC generates a lookup table in .rodata for switch
statements, which lives in flash. Use if-else chain to keep the
logic entirely in IRAM.
2026-03-29 18:10:28 -10:00
J. Nick Koston
438553ccfe
Fix clang-tidy NOLINT placement for s_sta_state
...
Move the NOLINT comment to NOLINTNEXTLINE so clang-tidy sees it
on the line with the variable declaration, not the continuation.
2026-03-29 18:09:49 -10:00
J. Nick Koston
f43a598a83
[wifi] Avoid redundant SDK calls in WiFi loop on ESP8266
...
Replace five separate boolean state variables in the ESP8266 WiFi
implementation with a single enum state machine, matching the pattern
already used by LibreTiny. This eliminates the per-loop call to
wifi_station_get_connect_status() by reading cached state from the
existing event callback instead.
Also use the cached connected_ field (set unconditionally at the top
of loop()) in the STA_CONNECTED branch instead of calling
is_connected_() a second time. This applies to all platforms.
2026-03-29 17:55:55 -10:00
J. Nick Koston
18168ad7fd
[sensor] Use std::array in CalibrateLinearFilter ( #15263 )
2026-03-29 15:07:15 -10:00
J. Nick Koston
17afbeb87b
[binary_sensor] Use std::array in MultiClickTrigger ( #15267 )
2026-03-29 14:57:15 -10:00
J. Nick Koston
d51b047f63
[sensor] Use std::array in CalibratePolynomialFilter ( #15264 )
2026-03-29 14:56:04 -10:00
J. Nick Koston
508ec295a4
[sensor] Use std::array in OrFilter ( #15262 )
2026-03-29 14:55:46 -10:00
J. Nick Koston
66754fa376
[text_sensor] Use std::array in SubstituteFilter ( #15266 )
2026-03-29 14:24:32 -10:00
J. Nick Koston
4da7f5ecc2
[binary_sensor] Use std::array in AutorepeatFilter ( #15268 )
2026-03-29 23:50:46 +00:00
J. Nick Koston
29419d9d97
[automation] Use std::array in And/Or/Xor conditions ( #15282 )
2026-03-29 13:36:08 -10:00
J. Nick Koston
3520ef7480
[text_sensor] Use std::array in MapFilter ( #15269 )
2026-03-29 22:38:04 +00:00
J. Nick Koston
d6475eaeed
[binary_sensor] Remove redundant optional<bool> state_, save 8 bytes per instance ( #15095 )
2026-03-29 12:15:18 -10:00
J. Nick Koston
a9aaf29d83
[core] Shrink Component from 12 to 8 bytes per instance ( #15103 )
2026-03-29 12:09:21 -10:00
J. Nick Koston
38fa8925da
[ai] Add automation, callback manager, and test grouping docs ( #15243 )
2026-03-29 12:02:47 -10:00
J. Nick Koston
c2b8ea3361
[web_server_base] Reduce sizeof(WebServerBase) by 4 bytes ( #15251 )
2026-03-29 18:02:29 -04:00
J. Nick Koston
584807b039
[ld2410] Fix flaky integration test race condition ( #15299 )
2026-03-29 11:58:03 -10:00
J. Nick Koston
5da3253f4b
[esp8266] Add enable_scanf_float option ( #15284 )
2026-03-29 11:57:52 -10:00
J. Nick Koston
2a97eca00b
[sensor] Use std::array in ValueList/FilterOut/ThrottleWithPriority filters ( #15265 )
2026-03-29 11:55:52 -10:00
J. Nick Koston
1f3fd60d29
[version] Remove duplicate build_info_data.h include ( #15288 )
2026-03-29 11:55:39 -10:00
J. Nick Koston
8a802ca666
[benchmark] Add BLE raw advertisement proto encode benchmarks ( #15289 )
2026-03-29 11:54:07 -10:00
J. Nick Koston
a91e6d92f6
[core] Remove dead get_loop_priority code ( #15242 )
2026-03-29 17:32:43 -04:00
Tobias Stanzel and Jonathan Swoboda
d9adb078aa
[tm1637] Add buffer manipulation methods ( #13686 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-03-29 14:41:00 -03:00
J. Nick Koston
7a7c33fdb1
[esp32_ble_server] Fix set_value action with static data lists ( #15285 )
2026-03-28 15:38:06 -10:00
Jonathan Swoboda
b6abfec82e
[core] Fix area/device hash collision validation not running ( #15259 )
2026-03-27 22:22:24 -04:00
Jonathan Swoboda
47774fb644
[modbus_controller] Fix wrong enum in function_code_to_register ( #15253 )
2026-03-27 19:55:57 -04:00
Jonathan Swoboda
34410e92b7
[as5600] Remove dead angle/position sensor code ( #15254 )
2026-03-27 19:55:40 -04:00
Edward Firmo and pre-commit-ci-lite[bot]
a99f051e19
[nextion] Replace queue name string literals with short Nextion-native identifiers ( #15215 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-03-27 13:49:00 -10:00
Keith Burzinski
f6c63c62e4
[tmp117] Code clean-up ( #15260 )
2026-03-27 17:59:26 -05:00
Jonathan Swoboda
76d75850a3
[sgp4x] Remove dead voc_baseline config option ( #15250 )
2026-03-27 17:35:12 -04:00
Jonathan Swoboda
68d9f657ad
[bl0940] Fix energy reference default using wrong constant in legacy mode ( #15249 )
2026-03-27 21:32:37 +00:00
Jonathan Swoboda
24b8a95340
[pid] Remove unused PIDSimulator class ( #15247 )
2026-03-27 17:24:15 -04:00
Jonathan Swoboda
d245b9f123
[sm2135] Fix copy-paste error in setup pin mode ( #15248 )
2026-03-27 17:24:03 -04:00
Edward Firmo
a2dee21e8e
[nextion] Replace std::deque queues with std::list ( #15211 )
2026-03-27 10:24:19 -10:00
dependabot[bot]
3016cd3636
Bump github/codeql-action from 4.34.1 to 4.35.1 ( #15245 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-27 09:29:08 -10:00
Jonathan Swoboda
7532e1f957
[multiple] Fix uninitialized members and error constant types ( #15235 )
2026-03-27 14:58:41 -04:00
Jonathan Swoboda
f0db0c1054
[esp32] Add ESP-IDF 5.5.4 and 6.0.0 version mappings ( #15241 )
2026-03-27 14:48:08 -04:00
Jonathan Swoboda
05c15f4241
[remote_base] Fix gobox uint64_t format specifier ( #15237 )
2026-03-27 08:44:40 -10:00
Jonathan Swoboda
951ad91cb2
[atm90e32] Fix phase angle precision loss and remove unused member ( #15238 )
2026-03-27 08:39:30 -10:00
Jonathan Swoboda
53bd57f3c2
[pid] Fix inverted debug log conditions and broken smoothing formula ( #15240 )
2026-03-27 08:37:54 -10:00
Jonathan Swoboda
4b9467cd0c
[esp32_ble_client] Fix wrong union member in OPEN_EVT handler ( #15236 )
2026-03-27 08:37:33 -10:00
Jonathan Swoboda
0a607b9c93
[esp32_ble_server] Fix wrong union member in STOP_EVT handler ( #15239 )
2026-03-27 08:36:16 -10:00
Jonathan Swoboda
810c046cc6
[multiple] Fix misc hardware register bugs ( #15208 )
2026-03-27 14:25:38 -04:00
J. Nick Koston
5a8d6931a8
[factory_reset] Migrate FastBootTrigger to callback automation ( #15232 )
2026-03-27 08:24:35 -10:00