FTW publishes MQTT autodiscovery and state, and accepts a small command set. The bridge is optional and does not participate in the local safety loop.
Compatibility contract: the MQTT prefix
forty-two-watts, discovery identifierforty_two_watts, client IDforty-two-watts-ha, and existing entity IDs are stable wire identifiers. They are intentionally not renamed.
Enable an MQTT broker and MQTT integration in Home Assistant, then configure:
homeassistant:
enabled: true
broker: 192.168.1.10
port: 1883
username: ftw
password: use-a-secret
publish_interval_s: 5After FTW connects, Home Assistant discovers site power/energy, mode, planner,
driver health, structured DER readings and emitted diagnostic metrics. The
exact entity set is generated by go/internal/ha; it is not maintained
manually in this document.
Power values keep FTW's site convention:
- grid positive = import;
- PV negative = generation;
- battery positive = charge, negative = discharge.
State and availability are below forty-two-watts/. Supported command topics
include:
| Topic | Payload |
|---|---|
forty-two-watts/cmd/mode |
a value from control.AllModes() |
forty-two-watts/cmd/grid_target_w |
signed watts |
forty-two-watts/cmd/peak_limit_w |
positive watts |
forty-two-watts/cmd/ev_charging_w |
charging watts |
Autodiscovery is preferred over hard-coding generated entity IDs.
- Verify broker reachability and credentials from the FTW host.
- Inspect FTW logs for MQTT connection errors.
- Confirm the Home Assistant MQTT integration uses the same broker.
- Check retained
forty-two-watts/statusand discovery messages. - For a command, verify its exact topic and payload spelling.
Changing broker settings hot-reloads the bridge. Driver and control operation continue if Home Assistant is offline.