ha_creality_ws — Release 0.6.4 - Officially part of HACS default repo!
Release date: 2025-11-10
Highlights
- Model detection and onboarding are more reliable: the coordinator now waits briefly for critical telemetry fields and falls back to board codes when the friendly model string is missing.
- Creality Hi (F018) capabilities corrected: no box temperature sensor or box control; light and MJPEG camera only.
- README improvements: direct HACS install and start-config badges, and a new Model Detection Reliability section explaining onboarding behavior.
Improvements
-
Model detection
- Reads both
modelandmodelVersionand maps board codes (F021/F012/F008/F001/F002/F005/F018) to canonical names when appropriate. - Adds
resolved_model()helper to produce a stable device_info name when the friendly model is missing. - Prefers IPv4 addresses from zeroconf when multiple addresses are present.
- Reads both
-
Onboarding / caching
KCoordinator.wait_for_fields()helper waits a short time for fields likemodel,modelVersion,hostnamebefore caching device info, reducing empty model entries.- Heuristic promotion: if telemetry already exposes box/light fields, entities are enabled even if the cached capability flags were previously unset.
-
Documentation
- README: HACS and config-flow badges and installation guidance added.
- A new Model Detection Reliability section documents the new heuristics and fallbacks.
Fixes
- Capabilities: Creality Hi corrected to not expose box temperature sensor or box control (matches hardware capabilities).
- HACS metadata: removed unsupported
domainskey fromhacs.jsonso it validates with HACS checks.
Developer / CI
-
Comprehensive static test suite added under
tools/tests/:- utils and model detection tests
- manifest/hacs static checks
- sensor SPECS uniqueness
- anti-blocking patterns
- code hygiene and Copilot doc checks
- lightweight coordinator tests using stubs for HA and WS client
-
GitHub Actions: new
tests.ymlworkflow that runs the static pytest suite on push and PR. -
Local dev server:
tools/creality_printer_test_server.pyprovides a configurable WebSocket telemetry + MJPEG/WebRTC server for testing integrations and cameras.
Behavior changes
- Creality Hi: will no longer report a box temperature entity or allow box temperature control - this corrects an earlier over-detection.
- Existing devices and entity IDs are preserved; cached capabilities are respected to avoid surprising changes for existing users.
Upgrade notes
- Update via HACS (recommended). Restart Home Assistant after updating.
- If you previously saw a box temperature sensor for a Creality Hi device, it will be removed by design.