mirror of
https://github.com/esphome/esphome.git
synced 2026-09-16 17:48:40 +00:00
feaa903056d17382c93618538157d3f50344a6c2
Apply the bitmask pattern from LightControlAction (#16039) to cover::ControlAction (3 fields: stop, position, tilt) and cover::CoverPublishAction (3 fields: position, tilt, current_operation). Unused fields are elided via [[no_unique_address]] and skipped at compile time in play() via if constexpr. Codegen for cover.control: and cover.template.publish: builds the bitmask from the YAML keys present. CONF_STATE and CONF_POSITION both map to the same position bit (they are mutually exclusive YAML keys for the same C++ field). Per-instance: 16-28 B depending on which fields are set, down from ~28 B baseline.
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
614 MiB
Languages
C++
55.8%
Python
43.6%
C
0.3%
JavaScript
0.2%
