mirror of
https://github.com/esphome/esphome.git
synced 2026-09-03 11:36:03 +00:00
92f93e128fd4be7691105e807c143f8dd372ee57
The wake hook is called only from: - esphome_socket_event_callback (lwip fast select, LwIP TCP/IP task context) - LWIPRawListenImpl::accept_fn_ (raw TCP accept callback) - Application::yield_with_select_ (host select fallback, main thread) None of those contexts require IRAM-resident code. The LwIP fast-select event callback itself is not IRAM_ATTR; the raw-TCP accept callback runs from a low-priority user IRQ on RP2040 where IRAM_ATTR is a no-op anyway (it's an ESP32-specific section attribute for code that must run while flash cache is disabled). This is not a real ISR path the way enable_loop_soon_any_context() is (which is called from GPIO ISRs and genuinely does need IRAM). Removing IRAM_ATTR frees scarce IRAM on ESP32.
Description
ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.
Readme
Multiple Licenses
582 MiB
Languages
C++
56%
Python
43.4%
C
0.3%
JavaScript
0.2%
