Custom Home Assistant integration that connects to the Emporia Vue WebSocket bridge add-on. Inspired by ha-emporia-vue but designed for local communication via the WebSocket add-on.
This integration requires the Emporia Vue WebSocket Add-on to be installed and running.
The add-on connects to Emporia's servers, authenticates with your credentials, and exposes device data via a local websocket. This integration then connects to that websocket to create Home Assistant entities.
- Add the add-on repository to Home Assistant:
- Go to Settings → Add-ons → Add-on Store
- Click the three dots (⋮) in the top right → Repositories
- Add:
https://github.com/alex-savin/hassio-apps
- Find and install Emporia Vue WebSocket
- Configure the add-on with your Emporia credentials
- Start the add-on
- Note the websocket URL (typically
ws://homeassistant.local:8080/ws)
For detailed add-on configuration and endpoints, see the add-on documentation.
- Config flow with add-on host/port, Emporia username/password, and optional WS auth token
- WebSocket client that authenticates to the add-on and polls devices every 5 minutes
- Sensors: per-device connection status, per-device usage (sum of channels), per-channel usage (energy), with device registry entries
- Switches: outlets and EV chargers (on/off)
- Open HACS in Home Assistant
- Click "Integrations"
- Click the three dots in the top right corner
- Select "Custom repositories"
- Add this repository URL:
https://github.com/alex-savin/hassio-integration-emporia-vue - Select "Integration" as the category
- Click "Add"
- Search for "Emporia Vue" and install it
- Restart Home Assistant
- Copy
custom_components/emporia_vue/into your Home Assistantcustom_components/directory - Restart Home Assistant
- Go to Settings → Devices & Services → Add Integration
- Search for "Emporia Vue" and follow the setup wizard
During setup, you'll need to provide:
| Field | Description |
|---|---|
| WS URL | Full websocket endpoint (default ws://homeassistant.local:8080/ws) |
| Username | Your Emporia account username |
| Password | Your Emporia account password |
| WS Auth Token | Optional shared secret (WS_AUTH_TOKEN) configured on the add-on |
- Device connection status
- Total device usage (sum of all channels)
- Per-channel energy usage
- Outlet on/off control
- EV charger on/off control
alias: High energy usage alert
trigger:
- platform: numeric_state
entity_id: sensor.emporia_vue_total_usage
above: 5000
action:
- service: notify.mobile_app_your_phone
data:
title: "High Energy Usage"
message: "Current usage is {{ states('sensor.emporia_vue_total_usage') }}W"alias: EV charger peak hours
trigger:
- platform: time
at: "16:00:00"
action:
- service: switch.turn_off
target:
entity_id: switch.emporia_vue_ev_charger- Usage coordinator currently uses the device list captured at setup; add dynamic refresh if devices change
- Consider adding services for EVSE rate settings and channel control if needed
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.