J. Nick Koston
01b32124ad
Merge remote-tracking branch 'upstream/fix-uart0-iomux-loopback' into integration
2026-03-19 09:56:59 -10:00
J. Nick Koston
7f6aa47434
[uart] Fix UART0 default pin IOMUX loopback on ESP32
...
Clear residual IOMUX function on UART0 default pins before calling
uart_set_pin(). The ROM bootloader configures these pins via IOMUX
for console output. ESP-IDF's uart_set_pin() has an asymmetry: when
routing TX via GPIO matrix it calls gpio_func_sel(PIN_FUNC_GPIO) to
clear IOMUX, but for RX it only calls gpio_input_enable() which does
NOT clear the IOMUX function select.
If a default UART0 TX pin is later reassigned as RX via GPIO matrix
(common on ESP32-C3 where users swap GPIO20/GPIO21), the old IOMUX TX
function remains active, causing transmitted data to loop back into RX.
This is a targeted fix using gpio_func_sel() which only writes the
IO MUX function register - unlike the previous gpio_reset_pin()
approach which also changed direction, pulls, and drive strength,
breaking external components that rely on default pin state (#11823 ).
Fixes #14973
Fixes #14612
2026-03-19 09:28:08 -10:00
J. Nick Koston
37a3c3ab3a
[core] Replace std::bind with placeholders to lambdas ( #14962 )
2026-03-19 08:50:38 -10:00
J. Nick Koston
a8ed781f3e
[time] Fix lookup of top-level IANA timezone keys like UTC and GMT ( #14952 )
2026-03-19 08:44:35 -10:00
J. Nick Koston
63f0d054b7
[core] Replace std::bind with lambda in DelayAction ( #14968 )
2026-03-19 08:44:16 -10:00
J. Nick Koston
e7dcf54a77
[http_request] Replace std::bind with lambdas in HttpRequestSendAction ( #14966 )
2026-03-19 08:44:02 -10:00
J. Nick Koston
1ba5504944
[mqtt] Replace std::bind with lambda in MQTTPublishJsonAction ( #14965 )
2026-03-19 08:43:47 -10:00
J. Nick Koston
5637116378
[mqtt] Replace std::bind with lambdas in CustomMQTTDevice ( #14964 )
2026-03-19 08:43:22 -10:00
J. Nick Koston
cdc4ba6295
[api] Replace std::bind with lambdas in CustomAPIDevice ( #14963 )
2026-03-19 08:43:06 -10:00
J. Nick Koston
d1aa1881bb
[core] Replace std::bind with lambdas across 13 components ( #14961 )
2026-03-19 08:42:26 -10:00
14107ec452
[bme68x_bsec2] Store trigger time as member to avoid std::function SBO overflow ( #14960 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-03-19 08:42:08 -10:00
J. Nick Koston
2ca6681896
[xiaomi_rtcgq02lm] Drop unused capture from timeout lambdas ( #14959 )
2026-03-19 08:41:15 -10:00
J. Nick Koston
40a65d36b4
[nau7802] Replace std::bind with lambda to fit std::function SBO ( #14958 )
2026-03-19 08:41:01 -10:00
J. Nick Koston
16ec237ac6
[wireguard] Replace std::bind with inline lambdas ( #14957 )
2026-03-19 08:40:32 -10:00
J. Nick Koston
0afcdbfe73
[binary_sensor] Replace std::bind with inline lambda in MultiClickTrigger ( #14956 )
2026-03-19 08:40:18 -10:00
b9439036d4
[remote_base] add support for brennenstuhl comfort-line switches ( #9407 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-03-19 09:19:24 -04:00
CFlix and DAVe3283
cb23f9453f
[absolute_humidity] loop() improvement ( #14684 )
...
Co-authored-by: DAVe3283 <DAVe3283+GitHub@gmail.com >
2026-03-19 09:09:00 -04:00
Daniel Kent and Jonathan Swoboda
0858ecbb8e
[spa06_base] Add SPA06-003 Temperature and Pressure Sensor (Part 1 of 3) ( #14521 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-03-19 08:05:12 -04:00
96da6dd075
[esp32] Add custom partitions and refactor partition table generation ( #7682 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
Co-authored-by: J. Nick Koston <nick@home-assistant.io >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-19 07:41:11 -04:00
J. Nick Koston
25c40f45ec
Merge remote-tracking branch 'upstream/custom-mqtt-device-std-bind-to-lambda' into integration
2026-03-19 01:09:42 -10:00
J. Nick Koston
c4c65b87fc
Merge remote-tracking branch 'upstream/base-automation-std-bind-to-lambda' into integration
2026-03-19 01:09:35 -10:00
J. Nick Koston
1954215110
Merge branch 'dev' into custom-mqtt-device-std-bind-to-lambda
2026-03-19 01:06:10 -10:00
J. Nick Koston
2811648114
Fix -Wshadow: rename lambda parameter to avoid shadowing outer topic
2026-03-19 01:05:45 -10:00
J. Nick Koston
0f38c61b6c
Merge branch 'dev' into base-automation-std-bind-to-lambda
2026-03-19 01:03:37 -10:00
J. Nick Koston
4894be2a9d
Merge remote-tracking branch 'upstream/base-automation-std-bind-to-lambda' into integration
2026-03-19 01:03:19 -10:00
J. Nick Koston
de171db50e
[core] Replace std::bind with lambda in DelayAction
...
Replace std::bind(&DelayAction::play_next_, this, x...) with a
[this, x...] lambda in the argument-forwarding path.
2026-03-19 00:57:16 -10:00
J. Nick Koston
e2967c46d7
Merge remote-tracking branch 'origin/binary-sensor-multiclick-inline-callback' into integration
2026-03-19 00:51:32 -10:00
J. Nick Koston
957606fc19
Merge branch 'dev' into binary-sensor-multiclick-inline-callback
2026-03-19 00:50:06 -10:00
J. Nick Koston
59036bea36
Merge remote-tracking branch 'upstream/wireguard-inline-callback' into integration
2026-03-19 00:43:06 -10:00
J. Nick Koston
d7c5ceffe3
Merge remote-tracking branch 'upstream/std-bind-to-lambda-easy' into integration
2026-03-19 00:42:58 -10:00
J. Nick Koston
eb14d9eae8
Merge remote-tracking branch 'upstream/std-bind-placeholders-to-lambda' into integration
2026-03-19 00:42:54 -10:00
J. Nick Koston
a9a2d4a6cb
Merge remote-tracking branch 'upstream/mqtt-publish-json-std-bind-to-lambda' into integration
2026-03-19 00:42:48 -10:00
J. Nick Koston
890a0186cd
Merge remote-tracking branch 'upstream/http-request-std-bind-to-lambda' into integration
2026-03-19 00:42:44 -10:00
J. Nick Koston
f726f2907d
Merge remote-tracking branch 'upstream/custom-mqtt-device-std-bind-to-lambda' into integration
2026-03-19 00:42:39 -10:00
J. Nick Koston
bcb6ba1e55
Merge remote-tracking branch 'upstream/custom-api-device-std-bind-to-lambda' into integration
2026-03-19 00:42:31 -10:00
J. Nick Koston
9415be0e07
Merge remote-tracking branch 'upstream/bme68x-bsec2-sbo-fix' into integration
2026-03-19 00:42:26 -10:00
J. Nick Koston
455a33cdb5
Merge remote-tracking branch 'upstream/binary-sensor-multiclick-inline-callback' into integration
2026-03-19 00:42:18 -10:00
J. Nick Koston and Copilot Autofix powered by AI
6486937aa1
Potential fix for pull request finding
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-03-19 00:39:05 -10:00
J. Nick Koston
47eb70849f
[http_request] Replace std::bind with lambdas in HttpRequestSendAction
...
Replace std::bind calls with [this, x...] lambdas for JSON encoding
in play(). Remove the now-unused encode_json_func_ helper.
2026-03-19 00:38:20 -10:00
J. Nick Koston
72a378393a
[mqtt] Replace std::bind with lambda in MQTTPublishJsonAction
...
Replace std::bind with a lambda that captures [this, x...] directly,
eliminating the intermediate encode_ method.
2026-03-19 00:37:18 -10:00
J. Nick Koston
f57b604351
[mqtt] Replace std::bind with lambdas in CustomMQTTDevice
...
Replace std::bind calls in subscribe/subscribe_json template methods
with equivalent lambdas. Uses static_cast<T*>(this) instead of
C-style cast for type safety.
2026-03-19 00:36:05 -10:00
J. Nick Koston
9b8f4b5a5d
[api] Replace std::bind with lambdas in CustomAPIDevice
...
Replace std::bind calls in subscribe_homeassistant_state template
methods with equivalent lambdas. Uses static_cast<T*>(this) instead
of C-style cast for type safety.
2026-03-19 00:34:32 -10:00
J. Nick Koston
2c4ec0580c
[core] Replace std::bind with placeholders to lambdas
...
Replace std::bind calls that use std::placeholders with equivalent
lambdas. Lambdas with explicit parameters are more readable and
generate smaller callable objects than std::bind results.
Components: wifi (libretiny), haier (base, hon, smartair2),
homeassistant/number.
2026-03-19 00:32:06 -10:00
J. Nick Koston
7423ad3abd
[core] Replace std::bind with lambdas across components
...
Mechanical replacement of std::bind with equivalent lambdas in 13
components. Lambdas are more readable, generate smaller objects, and
avoid pulling in <functional> machinery.
Components: sht4x, nau7802, max31855, max31865, max31856, max6675,
dps310, ms5611, ms8607, esp32_improv, improv_serial, sprinkler,
midea.
2026-03-19 00:29:06 -10:00
J. Nick Koston
d4d8e92243
[bme68x_bsec2] Store trigger time as member to avoid SBO overflow
...
The set_timeout lambda captured [this, curr_time_ns] (4 + 8 = 12
bytes), exceeding the std::function small buffer optimization
threshold (8 bytes on 32-bit) and forcing a heap allocation every
measurement cycle (every 3s in LP mode).
Store curr_time_ns as a class member and capture only [this] (4
bytes), which fits inline in the SBO. Trades 8 bytes of permanent
member storage to eliminate a heap alloc+free cycle per measurement.
2026-03-19 00:22:31 -10:00
J. Nick Koston
90022447a8
Remove unused <functional> include
2026-03-19 00:19:26 -10:00
J. Nick Koston
64b50a5cb6
[wireguard] Replace std::bind with inline lambdas
...
Replace std::bind calls with [this] lambdas for add_on_time_sync_callback
and defer registrations. The [this] lambda fits within the Callback
inline storage threshold (sizeof(void*)), avoiding heap allocations.
2026-03-19 00:07:07 -10:00
J. Nick Koston
3bc7efb479
[binary_sensor] Replace std::bind with inline lambda in MultiClickTrigger
...
Replace std::bind(&MultiClickTrigger::on_state_, this, _1) with a
[this] lambda for the add_on_state_callback registration. The [this]
lambda fits within the Callback inline storage threshold
(sizeof(void*)), avoiding a permanent heap allocation.
2026-03-19 00:04:55 -10:00
J. Nick Koston
e5ab35e144
Merge remote-tracking branch 'upstream/fix-top-level-iana-tz' into integration
2026-03-18 23:45:39 -10:00
J. Nick Koston
b5b84c1570
Merge remote-tracking branch 'upstream/packet-transport-inline-callback' into integration
2026-03-18 23:45:34 -10:00