home-climate-control / dz

Home Climate Control Core: *the* Open Source multi-zone temperature and climate control system.
http://homeclimatecontrol.com/
GNU General Public License v3.0
59 stars 7 forks source link

Support "optimistic" switches #280

Closed climategadgets closed 1 year ago

climategadgets commented 1 year ago

Existing Behavior

Hardware drivers verify results of setState() with getState(). Benefits: guaranteed behavior. Disadvantages: complicated control logic, chances to get stuck.

Problems with Existing Behavior

One particularly vile problem is with ESPHome switch MQTT component which reports the hardware state if it changes but doesn't report it if it stays the same, resulting in an apparent deadlock.

Behavior Adjustment

It is possible to treat hardware as 100% reliable and assume that it always accepts and executes commands, as long as reliability is enforced by other means.

Mandatory precautions

Related Issues

47, #271, #290