Skip to content

Read panel software version, firmware and UUID from mDNS (v1.16.0) - #4

Merged
MattieGit merged 1 commit into
mainfrom
mdns-device-info
Oct 5, 2026
Merged

MattieGit merged 1 commit into
mainfrom
mdns-device-info

Conversation

@MattieGit

Copy link
Copy Markdown
Owner

Summary

  • New mdns module: parse_device_info() parses the TXT record of the controller's _workstation._tcp advertisement (Carel vendor 000A5C) into QubeDeviceInfo (uuid, software version from ProjectRelease, controller firmware from FWRelease, project name).
  • async_get_device_info(host, aiozc, timeout) browses the service on a caller-owned AsyncZeroconf (Home Assistant must pass its shared instance) and returns the record whose address or mDNS hostname matches the host; None on timeout.
  • Register 77 reads 0.0 on firmware 4.1.00, so this is the only reliable source of the version shown on the panel.
  • New dependency: zeroconf>=0.132.0 (Home Assistant pins 0.151.5). Version 1.16.0.

Testing

  • Unit tests for the parser (bytes/str properties, key case, non-Carel and missing-Uuid records) and the lookup (IP match, .local hostname match, unresolved/non-Qube services skipped, timeout).
  • Verified against a real Qube: by IP 0.44 s, by qube.local 0.01 s once cached, non-Qube host returns None at the timeout.

@MattieGit
MattieGit merged commit 45a0fb1 into main Oct 5, 2026
2 of 3 checks passed
@MattieGit
MattieGit deleted the mdns-device-info branch October 5, 2026 20:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant