Repository navigation
v0.3.1 – bus interfaces, central heating unit, OWNd 0.7.49
·
555 commits
to master
since this release
Hotfix release. Four bugs, no new features, no configuration change required. No entity_id, unique_id or event contract is touched — entities behind an F422 bus interface keep the exact ids they had in 0.3.0.
Fixed
- Devices behind an F422 local bus interface never received state updates. The
OWNdversion we shipped (0.7.48) compared an integer WHO against a list of strings inOWNMessage.interface, so the property always returnedNoneand the#4#<interface>part never reached the entity address: a frame such as*1*1*11#4#3##was reported as plain1-11and applied to the main-bus device with the same WHERE, if one existed. The dependency is now pinned toOWNd==0.7.49, which fixes this upstream (it also stops aTypeErroron thermostat local-offset values 6/7/8 and makes session shutdown robust against a connection that was never opened). UpstreamOWNdfix; independently found by GreenGrassBlueOcean and pinned by Dav41K9 and rdr-66. - Bus interface numbers were zero padded on the wire. Every command the integration sent carried
11#4#03while the bus writes11#4#3, so the address in our commands did not match the address in the gateway's replies — a mismatch that became visible the moment theOWNdfix above started reporting interfaces at all.interfaceis now accepted as an integer or as a 1- or 2-digit string (3,"3","03") and always normalised to the unpadded bus form. Entity ids are preserved: the internal device key, and with it everyunique_id, keeps the padded spelling (1-11#4#03), and incoming frames are matched against both spellings. See Configuration → Local bus interfaces. Problem identified by carferrer. - The central heating unit de-synchronised zone 1.
OWNdrewrites a heatingzone 0frame to the zone in the first WHERE parameter, so*#4*0#1*20*1##— the central unit's actuator — was reported as entity4-1and drove zone 1's climate entity with the central unit's state. Such frames are now routed to the central-unit entity (4-#0). Fix contributed by Jacopo Jannone, via michnovka's fork. myhome.sync_timeblocked the event loop. Building the command callspytz.timezone(), which reads the timezone database from disk; it now runs in an executor, so Home Assistant no longer logs a blocking-call warning when the service is called. Found by sxpert.