J. Nick Koston
ba82a0f288
Merge remote-tracking branch 'upstream/runtime-stats-loop-overhead' into integration
2026-04-14 17:02:28 -10:00
J. Nick Koston
a3a531f672
[runtime_stats] Subtract scheduled-callback time from before bucket
...
The scheduler also constructs WarnIfComponentBlockingGuard around
scheduled item execution (scheduler.cpp:740), so set_interval /
set_timeout / defer callbacks record into the affected component's
runtime_stats_. Since scheduler.call() runs inside before_loop_tasks_,
that time was double-counted: once in component period/total, once
in the "before" overhead bucket. Observed in the field as
before > overhead_total with inter_component clamped to 0.
Fix: add a global cumulative counter on ComponentRuntimeStats that
record_time() bumps on every guard finish, snapshot it around
before_loop_tasks_, and subtract the delta from the before bucket
before passing it to record_loop_active.
2026-04-14 16:58:03 -10:00
J. Nick Koston
5d2e7a014c
[runtime_stats] Split main loop overhead into before/tail/inter_component
...
Adds a second log line per section that breaks overhead down into:
before — time in before_loop_tasks_ (scheduler + ISR enable_loop)
tail — time in after_loop_tasks_ + trailing record prefix
inter_component — residual: per-iteration bookkeeping between components
(set_current_component, WarnIfComponentBlockingGuard
construction/destruction, feed_wdt_with_time, the for
loop itself)
Useful for isolating whether per-loop overhead changes come from
scheduler work, loop teardown, or inter-component bookkeeping.
2026-04-14 16:50:27 -10:00
J. Nick Koston
21e6498ee2
Merge remote-tracking branch 'upstream/runtime-stats-loop-overhead' into integration
2026-04-14 16:34:42 -10:00
J. Nick Koston
2f14912196
[runtime_stats] Widen iteration counters, fix overhead total, test main_loop line
...
- Widen period/total iteration counters to uint64_t to avoid wrapping on
long-running high-frequency loops.
- Compute total component-time sum over all components (not just the
period-active subset) so total overhead is not inflated by components
that ran earlier but are idle now.
- Extend integration test to parse the main_loop line and validate the
iters/active_avg/active_total/overhead_total fields.
2026-04-14 16:33:39 -10:00
J. Nick Koston
65f0d4a000
merge
2026-04-14 16:28:50 -10:00
J. Nick Koston
2c1f01c76c
Merge remote-tracking branch 'upstream/runtime-stats-loop-overhead' into integration
2026-04-14 16:25:06 -10:00
J. Nick Koston
e93f49978b
[runtime_stats] Track main loop active time and report overhead
...
Records per-iteration active wall time (excluding yield/sleep) and
reports it alongside the component table. Overhead is computed at log
time as active_total minus the sum of per-component time, exposing time
spent in scheduler dispatch, before/after-loop tasks, and other loop
machinery not attributed to any component.
2026-04-14 16:19:12 -10:00
J. Nick Koston
39eb8dbcf5
Revert "[debug] Add iram sensor for ESP32"
...
This reverts commit 07b129a58a .
2026-04-14 16:05:33 -10:00
J. Nick Koston
5364ea04ef
Revert "[debug] Use MALLOC_CAP_EXEC for iram sensor"
...
This reverts commit 8a00d302b8 .
2026-04-14 16:05:32 -10:00
J. Nick Koston
8a41d5503e
Revert "[debug] Fix iram sensor to report IRAM-only free"
...
This reverts commit 3fa50a27a8 .
2026-04-14 16:05:31 -10:00
J. Nick Koston
4d13bd96a6
Merge remote-tracking branch 'origin/debug-iram-sensor' into integration
2026-04-14 15:58:12 -10:00
J. Nick Koston
3fa50a27a8
[debug] Fix iram sensor to report IRAM-only free
2026-04-14 15:57:51 -10:00
J. Nick Koston
363f10c837
Merge remote-tracking branch 'origin/debug-iram-sensor' into integration
2026-04-14 15:53:47 -10:00
J. Nick Koston
8a00d302b8
[debug] Use MALLOC_CAP_EXEC for iram sensor
2026-04-14 15:53:02 -10:00
J. Nick Koston
07cf968226
Merge remote-tracking branch 'upstream-ssh/debug-iram-sensor' into integration
2026-04-14 15:49:52 -10:00
J. Nick Koston
07b129a58a
[debug] Add iram sensor for ESP32
2026-04-14 15:47:48 -10:00
Jesse Hills
193e7d476d
Pin GitHub Actions to commit SHAs
...
Replace mutable tag references with immutable commit SHAs
to prevent supply-chain attacks via compromised tags.
Version comments are preserved for readability.
2026-04-15 13:12:20 +12:00
Jesse Hills
1b3e7d5ec4
Merge branch 'beta' into dev
2026-04-15 13:10:45 +12:00
Jesse Hills
767a8c49b0
Merge pull request #15739 from esphome/bump-2026.4.0b3
...
2026.4.0b3
2026.4.0b3
2026-04-15 13:10:09 +12:00
J. Nick Koston
222626eb8c
Merge remote-tracking branch 'upstream/fast-millis-esp32' into integration
...
# Conflicts:
# esphome/core/application.cpp
# esphome/core/time_64.cpp
2026-04-14 15:04:47 -10:00
J. Nick Koston
80e29bc7b2
Merge remote-tracking branch 'upstream/optimize-value-accuracy' into integration
2026-04-14 15:01:45 -10:00
J. Nick Koston
256385bb09
Merge remote-tracking branch 'upstream/dev' into fast-millis-esp32
...
# Conflicts:
# esphome/core/scheduler.h
2026-04-14 15:00:40 -10:00
J. Nick Koston
f891ea3752
add tests
2026-04-14 14:54:51 -10:00
J. Nick Koston
2ccd94e1ad
add tests
2026-04-14 14:54:42 -10:00
J. Nick Koston
82232d8c74
Merge remote-tracking branch 'origin/optimize-value-accuracy' into integration
...
# Conflicts:
# esphome/core/application.cpp
# esphome/core/application.h
# tests/components/core/test_helpers.cpp
2026-04-14 14:45:20 -10:00
J. Nick Koston
efba0f5fd6
handle 0
2026-04-14 14:44:12 -10:00
Jesse Hills
4c43f7e9d0
Bump version to 2026.4.0b3
2026-04-15 10:58:30 +12:00
Edward Firmo and pre-commit-ci-lite[bot]
3ef140e25d
[nextion] Fix command spacing pacer never throttling sends ( #15664 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-04-15 10:58:30 +12:00
J. Nick Koston
0a568a3e1e
[light] Avoid addressable transition stall at low gamma-corrected values ( #15726 )
2026-04-15 10:58:30 +12:00
Alexey Spirkov and Alexey Spirkov
ef44491c69
[i2s_audio] Add PDM mics support for ESP32-P4 ( #15333 )
...
Co-authored-by: Alexey Spirkov <dev@alsp.net >
2026-04-15 10:58:30 +12:00
J. Nick Koston
089a2c99e2
[globals] Fix TemplatableFn deprecation warning for globals.set ( #15733 )
2026-04-15 10:58:30 +12:00
J. Nick Koston and Copilot Autofix powered by AI
311812c8cc
[esphome] Skip missing extra flash images in upload_using_esptool ( #15723 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-04-15 10:58:30 +12:00
J. Nick Koston
a77ab59436
[web_server] Reset OTA backend on new upload to avoid brick after interrupted OTA ( #15720 )
2026-04-15 10:58:30 +12:00
J. Nick Koston
89fbfc6f71
[adc] Place ADC oneshot control functions in IRAM for cache safety ( #15717 )
2026-04-15 10:58:29 +12:00
J. Nick Koston and pre-commit-ci-lite[bot]
28f3bcdba3
[api] Add speed_optimized to SubscribeLogsResponse ( #15698 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-04-15 10:58:29 +12:00
Jonathan Swoboda
445715b9fd
[esp32] Update the recommended platform to 55.03.38-1 ( #15705 )
2026-04-15 10:58:29 +12:00
Kevin Ahrendt
8843c36ec6
[micro_wake_word] Bugfix: Use es-nn v1.1.2 (last known working version) ( #15703 )
2026-04-15 10:58:29 +12:00
Diorcet Yann and Jonathan Swoboda
bd63f63b36
[esp32] Fix some compiler warnings & bugs ( #15610 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
2026-04-15 10:58:29 +12:00
dependabot[bot]
033e144e06
Bump aioesphomeapi from 44.14.0 to 44.15.0 ( #15699 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-15 10:58:29 +12:00
J. Nick Koston and pre-commit-ci-lite[bot]
20d49f9a7c
[api] Add speed_optimized proto option for hot encode paths ( #15691 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-04-15 10:58:29 +12:00
dependabot[bot]
3b2caa1f5b
Bump aioesphomeapi from 44.13.3 to 44.14.0 ( #15695 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-15 10:58:29 +12:00
Jonathan Swoboda
c3769e4fce
[core] Fix PlatformIO progress bar rendering in subprocess mode ( #15681 )
2026-04-15 10:58:29 +12:00
Javier Peletier
6d894dd6ee
[packages] fix support packages: !include mypackages.yaml ( #15677 )
2026-04-15 10:58:29 +12:00
Edward Firmo and pre-commit-ci-lite[bot]
2db2b89eb1
[nextion] Fix command spacing pacer never throttling sends ( #15664 )
...
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2026-04-15 07:47:44 +12:00
J. Nick Koston
e48c7165c5
[light] Avoid addressable transition stall at low gamma-corrected values ( #15726 )
2026-04-15 07:45:42 +12:00
J. Nick Koston and Copilot
506edaadd5
[core] Inline feed_wdt hot path with out-of-line slow path ( #15656 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-04-14 19:08:30 +00:00
J. Nick Koston
5ae9ddc46a
buf_append_sep_str: always null-terminate when remaining >= 1
2026-04-14 08:41:43 -10:00
J. Nick Koston
5066171a9d
Address Copilot review: uint32 overflow guard, docstring, test namespace/include
2026-04-14 08:36:09 -10:00
3f82a3a519
[core] Inline Millis64Impl::compute() on single-threaded platforms ( #15684 )
...
Co-authored-by: Jonathan Swoboda <154711427+swoboda1337@users.noreply.github.com >
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-04-14 08:20:31 -10:00