Share Denframe with Home Assistant
Export chosen Denframe scenes, speaker mute switches and short summaries to Home Assistant through MQTT, then use them there and in its official car apps.
A Denframe device under Home Assistant's MQTT integration holding, for example, a saved dashboard scene, a speaker mute switch and a short summary sensor.
- An owner account and any Denframe build on Downloads; every current Mac and Windows installer includes Home Assistant entity export.
- An awake Denframe host, an existing reachable MQTT broker, and Home Assistant with its MQTT integration and discovery enabled. The verified baseline is Home Assistant Core 2026.9.1; earlier versions are unverified.
- A broker account allowed to publish discovery and state and to receive approved commands. The separate Home Assistant values connection is optional, and its access token is not an MQTT credential.
- For the car: a signed-in official Home Assistant Companion app with phone-to-Home Assistant access. Hands-on CarPlay, Android Auto, Windows export and installed Supervisor-app validation are still pending. Android Automotive OS is a separate target.
Follow these steps in your own Denframe. This website never connects to your household, your accounts or your devices, and never asks for your credentials.
Open the export and choose a broker
In Studio, open Sources, then Home. Under Control and share, beside Use Denframe in Apple Home, choose Set up…, keep Through Home Assistant and choose Choose what to share…. That opens the Share Denframe with Home Assistant sheet; nothing has to be paired with Apple Home to use it. Reading Home Assistant values is a separate connection and isn't needed here.
Choose a shared broker in Export MQTT broker, or choose Add MQTT broker to enter one.
For a new broker, use TLS with a verified certificate and Username and password, and paste a private CA into CA certificate PEM (optional) if you use one. Choose Trusted LAN plaintext only where that suits your broker. In a container,
localhostis the container itself, not your broker's host. Choose Save broker.Set Bridge name. If Home Assistant uses another discovery prefix or birth topic, change it under Home Assistant discovery settings.
Save disabled and test the broker
Leave Enable export unticked and choose Save export setup. Then choose Test saved broker permissions: it checks an owned, non-retained publish and read on a probe topic. It never activates a receiver and doesn't prove Home Assistant discovery.
Under Broker ACL details, choose Copy bridge ID; it is there after a disabled save, before discovery works. Adapt the Mosquitto fragment below for a dedicated Denframe account, replacing
BRIDGE_ID. These are permission patterns: Denframe subscribes only to the exact command topics it generates. Use your own discovery prefix and birth topic if they differ.Example Mosquitto ACL · default discovery prefix # Under the dedicated Denframe user's ACL entry; replace BRIDGE_ID. topic read homeassistant/status topic read denframe/BRIDGE_ID/+/command/+ topic readwrite denframe/BRIDGE_ID/probe/# topic write denframe/BRIDGE_ID/bridge topic write denframe/BRIDGE_ID/+/available topic write denframe/BRIDGE_ID/+/state topic write homeassistant/scene/BRIDGE_ID/+/config topic write homeassistant/switch/BRIDGE_ID/+/config topic write homeassistant/sensor/BRIDGE_ID/+/configHome Assistant's own account needs the matching access: read on state and discovery, write on command and birth topics. A shared input source still needs its own read permission on its state topic.
Add what to share
Choose Add entity for each thing to share, give it a name and choose its type.
Type In Home Assistant What you choose Cast preset scene A scene The saved preset; review every approved target it lists Dashboard activation A scene The saved dashboard and a compatible receiver, whose current profile is approved with it; the schedule override and Resume after takeover or Stay suspended after takeover Speaker mute switch A switch with observed on/off feedback The Cast receiver Playback sensor A sensor The Cast receiver Glance summary sensor A sensor Up to four fields with Add summary input, the audience (Public-safe values only or Include household values) and the time zone Summaries read text, status or metric fields from enabled MQTT broker or Inbound webhook sources, and are limited to 160 characters in English. Private data and values that came from Home Assistant are left out. The export shares actions and short states, not Denframe layouts, images or rich tiles.
Choose Preview selected entities. Each entity shows its state, or why it is unavailable. Required inputs must be fresh: a receiver being online doesn't prove a fresh mute or playback observation.
Approve and enable the export
Tick Enable export, then I approve these actions, targets, profiles and the Home Assistant/broker audience. Sharing household values needs a second tick, acknowledging that Home Assistant history and other broker subscribers may keep them. Choose Save export setup.
Renaming keeps an entity's identity. Changing approved content, profiles, targets or source dependencies needs another preview and approval.
Signing out doesn't stop the integration. Owner recovery, or removal from Home Assistant's trusted owner list, revokes its authority. MQTT represents the approved integration, not the person who taps a control.
Find the entities in Home Assistant
In Home Assistant, open the MQTT integration and find the Denframe device and its entities. States aren't retained and are republished every 30 seconds, so the first values can take that long to appear.
Test controls only against a receiver you intend to use for testing.
Choose favourites for the car
For CarPlay, while parked, open the Companion app's Settings → CarPlay and set Quick Access to the scenes and switches you want. Generic CarPlay sensor visibility is not promised.
For Android Auto, open Settings → Companion app → Android Auto favorites (or Driving favorites) on the device you will use, and choose scenes, switches and sensor-state favorites. Vehicle entity limits apply.
Keep phone-to-Home Assistant access available away from home. Home Assistant to broker to Denframe traffic can stay local: don't expose Denframe or your broker publicly for this.
Registration doesn't add favourites on its own. These flows follow the official Companion documentation; hands-on car verification for the Denframe export is still pending. Android Auto results don't establish Android Automotive OS support, and the Play Store Android Automotive build has favourites limitations.
Turn it off, remove or restore
Untick Enable export and choose Save export setup. Authority is revoked, and the entities Denframe owns are removed while the broker is reachable. Keep the old broker and its credentials until the pending cleanup is done.
After cleanup, choose Remove disabled export setup. This can't erase Home Assistant history, backups or copies held by other subscribers.
After restoring a backup, the export stays disabled. Rebind the broker credentials explicitly, then under Restore identity choose Clone with new entity identities, or Replace the disabled original once the original host is off and its authority transferred. Preview and approve again.
Never run two hosts with the same export identity.
Check a command end to end
Use one shared control from Home Assistant against your test receiver and watch the screen. A broker acknowledgement or a successful scene call is not proof it happened: check the observed feedback and Recent commands in the export setup.
Mute and playback observations expire after 30 seconds. A summary is valid only as long as its original sources are, even when no new message arrives. Home Assistant's 60-second sensor watchdog is a second transport check, not a new measurement deadline.
Commands have bounded queues and deadlines, are never replayed after a crash and are never retried automatically. Retained replays are rejected, but MQTT 3.1.1 may clear a live message's retain flag, so give command-write permission only to trusted publishers. A scene can partly succeed: review partial or uncertain results before trying again.
Privacy mode blocks household summaries. Known feedback loops, Denframe and discovery topics and Home Assistant-derived inputs are rejected. Don't relay exported data back through third-party transformations that strip its origin.
If it doesn’t work
Share Denframe with Home Assistant is missing
It opens from Choose what to share… under Use Denframe in Apple Home on the Home page, with Through Home Assistant chosen. Check that you are signed in as the owner and that the installed build includes entity export. Existing installs are not upgraded automatically.
The broker test passes but no entities appear
Check Home Assistant's MQTT integration, the discovery prefix, the birth topic and the account permissions. Some MQTT 3.1.1 brokers acknowledge blocked writes without delivering them. The probe confirms only its own topic; look at Home Assistant discovery separately.
An entity is unavailable
Check for fresh receiver observations or source data, the current privacy mode, the approved targets and profiles, and owner authority. The first non-retained state can wait for the next 30-second heartbeat.
The entity is in Home Assistant but not in the car
Choose favourites on the right Companion device, and check the supported domains and vehicle limits. Generic CarPlay sensors and Android Automotive parity are not promised.
The broker or its credentials can't be changed
Disable the export and let cleanup of the owned topics finish on the original broker. The pending-removal notice shows what is outstanding; don't delete the credentials it needs.