MQTT auto-discovery
Athena implements the widely-adopted MQTT discovery convention, so anything that already speaks it - Tasmota, Shelly's own MQTT+discovery firmware setting, Zigbee2MQTT, ESPHome's own native MQTT component - shows up with no Athena-specific setup on the device side.
What's recognized
Sensors, binary sensors, switches, lights, and buttons are all recognized. Switches and lights get a live On/Off toggle, buttons a Press action, both published straight to the entity's own command topic; everything else still lists with its raw state, read-only. State is live over a one-way WebSocket - a snapshot on connect, then one message per discovered, updated, or removed entity, so a device removing its own retained discovery message removes it here too.
Running a broker
Not bundled in either deploy shape - run docker-compose-mqtt.yml (a standalone
Mosquitto broker, published on the LAN so real hardware can reach it directly) alongside
whichever Athena compose file you're already using:
# docker-compose-mqtt.yml - Mosquitto, standalone
services:
mosquitto:
container_name: athena-mosquitto
image: eclipse-mosquitto:2
volumes:
- ./mosquitto.conf:/mosquitto/config/mosquitto.conf:ro,z
- mosquitto-data:/mosquitto/data
ports:
- '1883:1883'
restart: unless-stopped
volumes:
mosquitto-data:
This exact file (plus its mosquitto.conf, anonymous access allowed by default)
ships in Athena's own repo - docker compose -f docker-compose-mqtt.yml up -d. Point
your devices at it and they'll be discovered the same as anything else. Set
MQTT_BROKER_URL=tcp://<that-host>:1883 in Athena's own .env
(blank by default, which disables the integration entirely) - or point it at your own
already-running broker instead of this one.
Broker URL, credentials, and discovery prefix can be changed afterward from a "Settings" item on the MQTT page's own three-dot menu, without touching .env again; see Settings.
Same treatment as everything else
MQTT entities are selectable in Dashboard cards, plots on the History page, and triggers/conditions/actions in Automations - the same as native, Shelly, or any other connected source.