mirror of
https://github.com/esphome/esphome.git
synced 2026-06-24 11:07:33 +00:00
improv-serial-loop-perf
- Cache UART selection at setup time so each loop iteration no longer dereferences global_logger and pays for a non-inlined Logger::get_uart() call before the read switch. - Use App.get_loop_component_start_time() once per loop instead of two millis() calls (especially relevant on ESP8266 where millis() involves interrupt-locked 64-bit timer access). - Move read_byte_() to the header as ESPHOME_ALWAYS_INLINE so the call/ret pair and optional<uint8_t> staging are elided at the call sites in loop().
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
393 MiB
Languages
C++
60.7%
Python
38.9%
C
0.3%
