-
Notifications
You must be signed in to change notification settings - Fork 110
v2.0 Beta Documentation
Welcome to the v2.0 Beta Documentation Hub for the Home Assistant MyHOME integration.
Note
Active Development & Beta Testing: The features, architecture, and guides documented below apply to the next-generation v2.0 architecture currently under development and beta testing on the v2-phase1-architecture and v2-phase2-architecture branches.
If you are running the current stable release (v0.9.x), please consult the standard Configuration Guide in the sidebar.
To ensure technical documentation evolves directly alongside code changes and pull requests, canonical guides are maintained directly within the repository under docs/configuration/:
| Subsystem / Feature | OpenWebNet WHO | Documentation Link |
|---|---|---|
| Sound System / Media Player | WHO = 16 |
📖 Read Guide on GitHub ↗ F441/F441M hardware analog audio matrix, Dynamic Proxy for Music Assistant / Spotify, decoder pool management, gain staging (anti-hiss), and physical wall-panel routing. |
| CEN & CEN+ Device Triggers |
WHO = 15, WHO = 25
|
📖 Read Guide on GitHub ↗ Native Home Assistant UI Device Triggers, physical button numbers 0–31, short press, long press, release, rotary dials, and automation blueprints. |
| Gateways & Connection Setup | WHO = 13 |
📖 Read Guide on GitHub ↗ IP gateways (F454, MyHomeServer1, MH200N/201/202), serial interfaces (3578), OpenWebNet password & HMAC authentication, connection resilience, keep-alive, and worker pool sizing. |
| Lovelace Bus Monitor Card | All WHOs |
📖 Read Guide on GitHub ↗ Native Lovelace card ( custom:myhome-bus-card), 500-frame circular ring buffer, real-time live streaming, WHO filtering, 1-click Sweep Bus, and 1-click Export Trace. |
| Integration Services Reference | All WHOs |
📖 Read Guide on GitHub ↗ Reference for myhome.send_message, myhome.turn_on_timed (hardware SCS timers), myhome.sync_time, myhome.start_sending_instant_power, and myhome.sweep_bus. |
| Gateway Identification | WHO = 13 |
📖 Wiki page How the model label is established (SSDP > manual > WHO=13), the complete 2006 device-type table, field-observed codes with provenance, the precedence rule, repair issues, and the identification block in every trace. |
| Gateway Timezone Setup | WHO = 13 |
📖 Wiki page Resolving the unconfigured timezone ( 999 sentinel) repair issue, WHO=13 dimensions 0 and 22 RTC clock setup, NTP sync, and automatic repair resolution. |
| Runtime Behaviour Notes | WHO = 1, 2, 4, 13 |
📖 Read Guide on GitHub ↗ What the integration polls and what it trusts from the bus: profile-gated startup discovery, silent reconnects, reauth, push-driven temperature probes, timed-cover echo model, additive light colour modes. |
-
100% UI-First Configuration:
- Zero YAML required for setup. All gateways and subsystems are discovered or added via Home Assistant's native Config Flow.
- Comprehensive Options Flow for runtime tuning (worker count, dimmer transition mode, audio decoders).
-
Native UI Automation Device Triggers:
- Automate physical CEN (
WHO = 15) and CEN+ (WHO = 25) buttons directly in Home Assistant's automation builder. - Distinct events for
short_press,long_press,long_release, and rotary encoder rotation.
- Automate physical CEN (
-
Built-in Diagnostic Bus Monitor:
- Real-time in-band bus monitor Lovelace card (
custom:myhome-bus-card) requiring zero additional gateway sockets. - Interactive filtering and 1-click trace export for troubleshooting.
- Real-time in-band bus monitor Lovelace card (
-
Diffusione Sonora Dynamic Proxy:
- Seamlessly connect streaming players (Music Assistant, Squeezelite) to BTicino analog amplifier zones with automatic power control and anti-hiss gain staging.
Fixes from the September 2026 issue batch, verified on Home Assistant OS 18.2 / Core 2026.9.2 with an MH200N. Two pull requests: the review/issue batch and the timed-cover model.
| Issue | Symptom | Fix |
|---|---|---|
| #304 | MH201: Data received is not a message: None
|
OWNd yields no frame for the cycle in which it reconnects; that cycle is now skipped silently. |
| #305 | Bus-monitor time stamps 2 h behind | Card renders frames in the browser's local zone (backend keeps UTC). Surfaces unconfigured timezone (999) sentinel as a Repair issue with auto-resolution (see Gateway Timezone Setup). |
| #307 | DALI DT8: colour picker and tunable white toggling | Colour modes are learned additively (hs + color_temp coexist). Capability lock: follow-up. |
| #308 | F454 + 3455/L4577: *#4*100*15## NACKs every 5 min |
Probes (WHERE ≥ 100) are receive-only; polled only if the push stream goes silent. |
| #309 | Blocking importlib.metadata in the event loop |
OWNd version resolved once in the executor and cached. |
| #310 | Deprecated via_device (removed in HA 2027.8) |
via_device_id on cores that support it, via_device fallback; identifiers unchanged. |
| #302 | Timed covers stop short / set_position runs to the end stop |
Clock anchored on the real frame write and motor-start echo; relayed stop status no longer cancels the run. See Covers. |
| — | Gateways mislabelled from WHO=13 (MH200 → "MH200N", MyHOMEServer1 ↔ F454) | Model comes from SSDP or your choice; WHO=13 only corroborates. See Gateway Identification. |
| — | MH200N: Could not send message *#16*0## on every boot |
Startup discovery only queries subsystems the gateway profile advertises. |
- Rejected password →
ConfigEntryAuthFailed: the entry shows Reauthentication required and HA opens the reauth flow (was Failed to set up). Other connection failures retry with backoff. - Services are registered once in
async_setupand never unregistered;entry.runtime_datais set before platforms load and is the source of truth for the WebSocket API. - Bus-monitor Send frame and Clear require an administrator user.
- Platforms unload via
async_unload_platforms; state is kept intact if a platform refuses to unload. - The runtime OWNd self-installer and the copy of the card into
/config/wwwwere removed.manifest.jsonis the single source of the OWNd pin. -
quality_scale.yamlnow reflects the code (runtime-data: in_progress,entity-translations/repair-issues:todo).
Extract myhome.zip into custom_components/myhome/, never into custom_components/ itself, and keep backups outside custom_components/. A stray __init__.py in the root of custom_components makes HA 2026.9+ load no custom integration at all; an in-tree backup folder registers a second myhome domain. Details in the Gateways guide ↗.
#311 (F454 alarm zones / arming), #303 (fan mode on discovered climate zones), #306 (duplicate entities), #307 part 2 — all waiting on bus traces from the reporters.