Emporia Energy Skill
Use the scripts in {baseDir}/scripts to query Emporia Vue data directly.
Modes are selected with EMPORIA_MODE:
- -
cloud: Emporia cloud API via PyEmVue (like the Home Assistant integration) - INLINECODE3 : Local ESPHome API (for flashed devices)
Choose a mode (cloud vs local)
- - Use cloud if your Emporia device is still on stock firmware or you want the simplest setup. Requires Emporia account credentials and internet access.
- Use esphome only if the device is flashed with ESPHome and on your LAN. Requires the device IP/hostname and native API access on port 6053.
If you are unsure whether the device is ESPHome-flashed, choose cloud mode.
Environment
Cloud mode
Optional:
- -
EMPORIA_SCALE (MINUTE, SECOND, MINUTES_15, DAY, MONTH) - defaults to INLINECODE12
ESPHome mode
- - INLINECODE13
- INLINECODE14 (optional, default
6053) - INLINECODE16 (Noise PSK, base64) or
ESPHOME_PASSWORD (legacy)
Configuration steps
Cloud:
- 1. Set
EMPORIA_MODE=cloud. - Set
EMPORIA_EMAIL and EMPORIA_PASSWORD. - (Optional) Set
EMPORIA_SCALE to control power vs energy units. - Run
list first to confirm channels, then summary or circuit <name>.
ESPHome:
- 1. Ensure the device is flashed with ESPHome and on your LAN.
- Set
EMPORIA_MODE=esphome. - Set
ESPHOME_HOST to the device IP/hostname (not Home Assistant). - If the ESPHome node uses encryption, set
ESPHOME_API_KEY (base64 Noise PSK). - Run
list first to confirm channels, then summary or circuit <name>.
Commands
The scripts accept:
- -
summary (default) - INLINECODE32
- INLINECODE33
Usage
Cloud:
CODEBLOCK0
ESPHome:
CODEBLOCK1
Dependencies (pip by default)
Cloud:
CODEBLOCK2
ESPHome:
CODEBLOCK3
Optional: you can use uv instead of pip if preferred.
Output
Scripts emit JSON with:
- - timestamp
- unit
- total (best-effort)
- top circuits
- channels used
Safety
- - Never print secrets (passwords, tokens, keys).
- Do not make hardware or panel wiring recommendations.
Emporia Energy 技能
使用 {baseDir}/scripts 中的脚本直接查询 Emporia Vue 数据。
通过 EMPORIA_MODE 选择模式:
- - cloud:通过 PyEmVue 连接 Emporia 云 API(类似 Home Assistant 集成)
- esphome:本地 ESPHome API(适用于已刷写设备)
选择模式(云端 vs 本地)
- - 如果您的 Emporia 设备仍使用原厂固件,或希望采用最简单的设置,请使用 cloud 模式。需要 Emporia 账户凭证和互联网连接。
- 仅当设备已刷写 ESPHome 并位于局域网内时,才使用 esphome 模式。需要设备 IP/主机名以及端口 6053 上的原生 API 访问权限。
如果不确定设备是否已刷写 ESPHome,请选择 cloud 模式。
环境变量
Cloud 模式
- - EMPORIAEMAIL
- EMPORIAPASSWORD
可选:
- - EMPORIASCALE(MINUTE、SECOND、MINUTES15、DAY、MONTH)- 默认为 MINUTE
ESPHome 模式
- - ESPHOMEHOST
- ESPHOMEPORT(可选,默认 6053)
- ESPHOMEAPIKEY(Noise PSK,base64 编码)或 ESPHOME_PASSWORD(旧版)
配置步骤
Cloud:
- 1. 设置 EMPORIAMODE=cloud。
- 设置 EMPORIAEMAIL 和 EMPORIAPASSWORD。
- (可选)设置 EMPORIASCALE 以控制功率与能量单位。
- 先运行 list 确认通道,再运行 summary 或 circuit <名称>。
ESPHome:
- 1. 确保设备已刷写 ESPHome 并位于局域网内。
- 设置 EMPORIAMODE=esphome。
- 将 ESPHOMEHOST 设置为设备 IP/主机名(非 Home Assistant)。
- 如果 ESPHome 节点使用加密,请设置 ESPHOMEAPIKEY(base64 编码的 Noise PSK)。
- 先运行 list 确认通道,再运行 summary 或 circuit <名称>。
命令
脚本支持:
- - summary(默认)
- list
- circuit <名称>
使用示例
Cloud:
export EMPORIA_MODE=cloud
export EMPORIA_EMAIL=you@example.com
export EMPORIA_PASSWORD=...
python {baseDir}/scripts/emporia_cloud.py summary
ESPHome:
export EMPORIA_MODE=esphome
export ESPHOME_HOST=192.168.1.50
export ESPHOMEAPIKEY=base64-noise-psk
python {baseDir}/scripts/emporia_esphome.py summary
依赖项(默认使用 pip)
Cloud:
python3 -m venv .venv
source .venv/bin/activate
pip install -r {baseDir}/requirements-cloud.txt
ESPHome:
python3 -m venv .venv
source .venv/bin/activate
pip install -r {baseDir}/requirements-esphome.txt
可选:如果偏好,可以使用 uv 替代 pip。
输出
脚本输出 JSON,包含:
安全
- - 切勿打印机密信息(密码、令牌、密钥)。
- 请勿提供硬件或面板接线建议。