mirror of
https://github.com/esphome/esphome.git
synced 2026-08-31 01:56:01 +00:00
5e64e3a3d4ac019ec9b6aaa35847dad3de4df1e8
All string literals in api_pb2_dump.cpp (field names, message names, enum value names) were stored in rodata which occupies RAM on ESP8266. This meant every API protobuf change appeared as a RAM increase in CI when using very_verbose logging. Add append_p() to DumpBuffer for PROGMEM-safe string reading and update the code generator to wrap all dump string literals with ESPHOME_PSTR(). On non-ESP8266 platforms, these are no-ops with zero overhead.
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
583 MiB
Languages
C++
56.2%
Python
43.2%
C
0.3%
JavaScript
0.2%
