ESPHome firmware for Waveshare ESP32-S3 7" touch thermostat with direct HVAC relay control
Find a file
pyr0ball c9df881066 revert: restore differing heat/cool arc radii, required for independent touch
Making both arcs 400px (same-size rings, requested for visual alignment)
broke independent dragging: LVGL's adv_hittest arc hit test only accepts
touches within an arc's own ring band (radius - arc_width to radius, within
its angular span), confirmed via lv_arc.c LV_EVENT_HIT_TEST. Two identical
rings occupy the same band, so only the topmost (cool_arc) ever won the
touch, confirmed on hardware. Reverting to 400px/360px nested rings restores
independent heat/cool dragging; same-size same-position arcs are not
achievable with LVGL's current hit-testing without a larger redesign.
2026-07-12 16:26:51 -07:00
docs docs: disambiguate 'Phase 2' terminology now that LVGL work claimed that name 2026-07-11 23:00:04 -07:00
firmware revert: restore differing heat/cool arc radii, required for independent touch 2026-07-12 16:26:51 -07:00
.gitignore feat: scaffold ESPHome project for Waveshare ESP32-S3 7" thermostat 2026-07-11 19:53:54 -07:00
README.md feat: scaffold ESPHome project for Waveshare ESP32-S3 7" thermostat 2026-07-11 19:53:54 -07:00

Firecrest

ESPHome firmware for the Waveshare ESP32-S3-Touch-LCD-7B touch display board, configured as a smart thermostat panel with direct 24VAC HVAC control.

Requires Home Assistant with the ESPHome integration.

Hardware

See docs/build-guide-phase1-notes.md for full pin assignments and Phase 1 hardware decisions.

Flashing

  1. Copy firmware/secrets.example.yaml to firmware/secrets.yaml and fill in your values.
  2. esphome run firmware/waveshare-thermostat.yaml

License

MIT