I have flashed an Emporia Vue3 with ESP Home and added to Home Assistant. It looks like the device is OK according to the logs…
There is a [W] in the log with connection closed…
Seems like ESP Home device in Home Assistant is getting sensor data, but no entities show for the emporia device…
what gives?
09:56:36.183][C][logger:261]: Logger:
[09:56:36.183][C][logger:261]: Max Level: DEBUG
[09:56:36.183][C][logger:261]: Initial Level: DEBUG
[09:56:36.184][C][logger:267]: Log Baud Rate: 115200
[09:56:36.184][C][logger:267]: Hardware UART: UART0
[09:56:36.184][C][logger:274]: Task Log Buffer Size: 768
[09:56:36.204][C][i2c.idf:081]: I2C Bus:
[09:56:36.205][C][i2c.idf:082]: SDA Pin: GPIO5
[09:56:36.205][C][i2c.idf:082]: SCL Pin: GPIO18
[09:56:36.205][C][i2c.idf:082]: Frequency: 400000 Hz
[09:56:36.206][C][i2c.idf:088]: Timeout: 1000us
[09:56:36.207][C][i2c.idf:092]: Recovery: bus successfully recovered
[09:56:36.243][C][status_led:063]: Status Led Light:
[09:56:36.246][C][status_led:064]: Pin: GPIO2
[09:56:36.267][C][status_led:063]: Status Led Light:
[09:56:36.267][C][status_led:064]: Pin: GPIO4
[09:56:36.282][C][emporia_vue:011]: Emporia Vue
[09:56:36.282][C][emporia_vue:012]: Address: 0x64
[09:56:36.283][C][emporia_vue:027]: Phase
[09:56:36.284][C][emporia_vue:028]: Wire: RED
[09:56:36.288][C][emporia_vue:029]: Calibration: 0.019277
[09:56:36.289][C][emporia_vue:017]: Voltage 'Phase L Voltage'
[09:56:36.289][C][emporia_vue:017]: State Class: 'measurement'
[09:56:36.289][C][emporia_vue:017]: Unit of Measurement: 'V'
[09:56:36.289][C][emporia_vue:017]: Accuracy Decimals: 1
[09:56:36.292][C][emporia_vue:027]: Device Class: 'voltage'
[09:56:36.293][C][emporia_vue:027]: Phase
[09:56:36.304][C][emporia_vue:028]: Wire: BLACK
[09:56:36.314][C][emporia_vue:029]: Calibration: 0.019277
[09:56:36.324][C][emporia_vue:017]: Voltage 'Phase R Voltage'
[09:56:36.324][C][emporia_vue:017]: State Class: 'measurement'
[09:56:36.324][C][emporia_vue:017]: Unit of Measurement: 'V'
[09:56:36.324][C][emporia_vue:017]: Accuracy Decimals: 1
[09:56:36.326][C][emporia_vue:027]: Device Class: 'voltage'
[09:56:36.326][C][emporia_vue:034]: CT Clamp
[09:56:36.344][C][emporia_vue:035]: Phase Calibration: 0.019277
[09:56:36.344][C][emporia_vue:036]: CT Port Index: 2
[09:56:36.356][C][emporia_vue:017]: Power 'Phase L Power'
[09:56:36.356][C][emporia_vue:017]: State Class: 'measurement'
[09:56:36.356][C][emporia_vue:017]: Unit of Measurement: 'W'
[09:56:36.356][C][emporia_vue:017]: Accuracy Decimals: 1
[09:56:36.356][C][emporia_vue:027]: Device Class: 'power'
[09:56:36.363][C][emporia_vue:034]: CT Clamp
[09:56:36.373][C][emporia_vue:035]: Phase Calibration: 0.019277
[09:56:36.375][C][emporia_vue:036]: CT Port Index: 1
[09:56:36.389][C][emporia_vue:017]: Power 'Phase R Power'
[09:56:36.389][C][emporia_vue:017]: State Class: 'measurement'
[09:56:36.389][C][emporia_vue:017]: Unit of Measurement: 'W'
[09:56:36.389][C][emporia_vue:017]: Accuracy Decimals: 1
[09:56:36.389][C][emporia_vue:027]: Device Class: 'power'
[09:56:36.394][C][emporia_vue:034]: CT Clamp
[09:56:36.404][C][emporia_vue:035]: Phase Calibration: 0.019277
[09:56:36.406][C][emporia_vue:036]: CT Port Index: 3
[09:56:36.417][C][emporia_vue:017]: Power 'cir1'
[09:56:36.417][C][emporia_vue:017]: State Class: 'measurement'
[09:56:36.417][C][emporia_vue:017]: Unit of Measurement: 'W'
[09:56:36.417][C][emporia_vue:017]: Accuracy Decimals: 1
[09:56:36.428][C][emporia_vue:027]: Device Class: 'power'
[09:56:36.428][C][emporia_vue:034]: CT Clamp
[09:56:36.436][C][emporia_vue:035]: Phase Calibration: 0.019277
[09:56:36.436][C][emporia_vue:036]: CT Port Index: 4
[09:56:36.445][C][emporia_vue:017]: Power 'cir2'
[09:56:36.445][C][emporia_vue:017]: State Class: 'measurement'
[09:56:36.445][C][emporia_vue:017]: Unit of Measurement: 'W'
[09:56:36.445][C][emporia_vue:017]: Accuracy Decimals: 1
[09:56:36.458][C][emporia_vue:027]: Device Class: 'power'
[09:56:36.477][C][template.sensor:017]: Template Sensor 'Total Power'
[09:56:36.477][C][template.sensor:017]: State Class: 'measurement'
[09:56:36.477][C][template.sensor:017]: Unit of Measurement: 'W'
[09:56:36.477][C][template.sensor:017]: Accuracy Decimals: 1
[09:56:36.477][C][template.sensor:027]: Device Class: 'power'
[09:56:36.477][C][template.sensor:363]: Update Interval: 10.0s
[09:56:36.496][C][light:089]: Light 'wifi_led'
[09:56:36.515][C][light:089]: Light 'ethernet_led'
[09:56:36.535][C][restart:092]: Restart Switch 'Restart'
[09:56:36.535][C][restart:092]: Restore Mode: always OFF
[09:56:36.539][C][restart:100]: Icon: 'mdi:restart'
[09:56:36.552][C][wifi_info:016]: MAC Address 'MAC Address'
[09:56:36.571][C][copy.sensor:017]: Copy Sensor 'Circuit 1 Power'
[09:56:36.571][C][copy.sensor:017]: State Class: 'measurement'
[09:56:36.571][C][copy.sensor:017]: Unit of Measurement: 'W'
[09:56:36.571][C][copy.sensor:017]: Accuracy Decimals: 1
[09:56:36.572][C][copy.sensor:027]: Device Class: 'power'
[09:56:36.591][C][copy.sensor:017]: Copy Sensor 'Circuit 2 Power'
[09:56:36.591][C][copy.sensor:017]: State Class: 'measurement'
[09:56:36.591][C][copy.sensor:017]: Unit of Measurement: 'W'
[09:56:36.591][C][copy.sensor:017]: Accuracy Decimals: 1
[09:56:36.592][C][copy.sensor:027]: Device Class: 'power'
[09:56:36.610][C][total_daily_energy:017]: Total Daily Energy 'Total Daily Energy'
[09:56:36.610][C][total_daily_energy:017]: State Class: 'total_increasing'
[09:56:36.610][C][total_daily_energy:017]: Unit of Measurement: 'Wh'
[09:56:36.610][C][total_daily_energy:017]: Accuracy Decimals: 0
[09:56:36.611][C][total_daily_energy:027]: Device Class: 'energy'
[09:56:36.630][C][total_daily_energy:017]: Total Daily Energy 'Circuit 1 Daily Energy'
[09:56:36.630][C][total_daily_energy:017]: State Class: 'total_increasing'
[09:56:36.630][C][total_daily_energy:017]: Unit of Measurement: 'Wh'
[09:56:36.630][C][total_daily_energy:017]: Accuracy Decimals: 0
[09:56:36.630][C][total_daily_energy:027]: Device Class: 'energy'
[09:56:36.650][C][total_daily_energy:017]: Total Daily Energy 'Circuit 2 Daily Energy'
[09:56:36.650][C][total_daily_energy:017]: State Class: 'total_increasing'
[09:56:36.650][C][total_daily_energy:017]: Unit of Measurement: 'Wh'
[09:56:36.650][C][total_daily_energy:017]: Accuracy Decimals: 0
[09:56:36.650][C][total_daily_energy:027]: Device Class: 'energy'
[09:56:36.684][C][captive_portal:122]: Captive Portal:
[09:56:36.706][C][wifi:1062]: WiFi:
[09:56:36.706][C][wifi:1062]: Connected: YES
[09:56:36.706][C][wifi:827]: Local MAC: F8:B3:B7:27:87:88
[09:56:36.706][C][wifi:834]: IP Address: 172.16.0.100
[09:56:36.708][C][wifi:838]: SSID: [redacted]
[09:56:36.708][C][wifi:838]: BSSID: [redacted]
[09:56:36.708][C][wifi:838]: Hostname: 'emporia'
[09:56:36.708][C][wifi:838]: Signal strength: -62 dB ▂▄▆█
[09:56:36.708][C][wifi:838]: Channel: 11
[09:56:36.708][C][wifi:838]: Subnet: 255.255.255.0
[09:56:36.708][C][wifi:838]: Gateway: 172.16.0.1
[09:56:36.708][C][wifi:838]: DNS1: 172.16.0.1
[09:56:36.708][C][wifi:838]: DNS2: 0.0.0.0
[09:56:36.730][C][sntp:059]: SNTP Time:
[09:56:36.730][C][sntp:062]: Server 0: '0.pool.ntp.org'
[09:56:36.731][C][sntp:062]: Server 1: '1.pool.ntp.org'
[09:56:36.734][C][sntp:062]: Server 2: '2.pool.ntp.org'
[09:56:36.743][C][time:029]: Timezone: 'CST'
[09:56:36.762][C][esphome.ota:093]: Over-The-Air updates:
[09:56:36.762][C][esphome.ota:093]: Address: emporia.local:3232
[09:56:36.762][C][esphome.ota:093]: Version: 2
[09:56:36.762][C][esphome.ota:100]: Password configured
[09:56:36.779][C][safe_mode:018]: Safe Mode:
[09:56:36.779][C][safe_mode:018]: Successful after: 60s
[09:56:36.779][C][safe_mode:018]: Invoke after: 10 attempts
[09:56:36.779][C][safe_mode:018]: Duration: 300s
[09:56:36.797][C][web_server.ota:241]: Web Server OTA
[09:56:36.817][C][api:223]: Server:
[09:56:36.817][C][api:223]: Address: emporia.local:6053
[09:56:36.817][C][api:223]: Listen backlog: 4
[09:56:36.817][C][api:223]: Max connections: 8
[09:56:36.817][C][api:235]: Noise encryption: NO
[09:56:36.836][C][wifi_info:016]: SSID 'Connected SSID'
[09:56:36.854][C][wifi_info:016]: IP Address 'IP Address'
[09:56:36.873][C][mdns:177]: mDNS:
[09:56:36.873][C][mdns:177]: Hostname: emporia
[09:56:41.809][D][sensor:133]: 'Phase L Voltage': Sending state 123.82661 V with 1 decimals of accuracy
[09:56:41.809][D][sensor:133]: 'Phase L Phase Angle': Sending state 179.44269 ° with 0 decimals of accuracy
[09:56:41.813][D][sensor:133]: 'Phase R Voltage': Sending state 124.66198 V with 1 decimals of accuracy
[09:56:41.814][D][sensor:133]: 'Phase L Power': Sending state 0.00000 W with 1 decimals of accuracy
[09:56:41.816][D][sensor:133]: 'Phase R Power': Sending state 0.00000 W with 1 decimals of accuracy
[09:56:41.824][D][sensor:133]: 'cir1': Sending state 119.39303 W with 1 decimals of accuracy
[09:56:41.835][D][sensor:133]: 'Circuit 1 Daily Energy': Sending state 139.17813 Wh with 0 decimals of accuracy
[09:56:41.849][D][sensor:133]: 'cir2': Sending state 121.07151 W with 1 decimals of accuracy
[09:56:41.856][D][sensor:133]: 'Circuit 2 Daily Energy': Sending state 141.57295 Wh with 0 decimals of accuracy
[09:56:41.976][D][sensor:133]: 'Total Power': Sending state 0.00000 W with 1 decimals of accuracy
[09:56:41.976][D][sensor:133]: 'Total Daily Energy': Sending state 0.00057 Wh with 0 decimals of accuracy
[09:56:48.009][D][sensor:133]: 'Phase L Voltage': Sending state 123.79688 V with 1 decimals of accuracy
[09:56:48.012][D][sensor:133]: 'Phase L Phase Angle': Sending state 179.44269 ° with 0 decimals of accuracy
[09:56:48.016][D][sensor:133]: 'Phase R Voltage': Sending state 124.68687 V with 1 decimals of accuracy
[09:56:48.017][D][sensor:133]: 'Phase L Power': Sending state 0.00000 W with 1 decimals of accuracy
[09:56:48.017][D][sensor:133]: 'Phase R Power': Sending state 0.00000 W with 1 decimals of accuracy
[09:56:48.025][D][sensor:133]: 'cir1': Sending state 120.55478 W with 1 decimals of accuracy
[09:56:48.035][D][sensor:133]: 'Circuit 1 Daily Energy': Sending state 139.38579 Wh with 0 decimals of accuracy
[09:56:48.046][D][sensor:133]: 'cir2': Sending state 122.16229 W with 1 decimals of accuracy
[09:56:48.056][D][sensor:133]: 'Circuit 2 Daily Energy': Sending state 141.78334 Wh with 0 decimals of accuracy
[09:56:51.981][D][sensor:133]: 'Total Power': Sending state 0.00000 W with 1 decimals of accuracy
[09:56:51.981][D][sensor:133]: 'Total Daily Energy': Sending state 0.00057 Wh with 0 decimals of accuracy
[09:56:54.197][D][sensor:133]: 'Phase L Voltage': Sending state 123.82500 V with 1 decimals of accuracy
[09:56:54.197][D][sensor:133]: 'Phase L Phase Angle': Sending state 179.44269 ° with 0 decimals of accuracy
[09:56:54.198][D][sensor:133]: 'Phase R Voltage': Sending state 124.72702 V with 1 decimals of accuracy
[09:56:54.201][D][sensor:133]: 'Phase L Power': Sending state 0.00000 W with 1 decimals of accuracy
[09:56:54.203][D][sensor:133]: 'Phase R Power': Sending state 0.00000 W with 1 decimals of accuracy
[09:56:54.211][D][sensor:133]: 'cir1': Sending state 121.56625 W with 1 decimals of accuracy
[09:56:54.222][D][sensor:133]: 'Circuit 1 Daily Energy': Sending state 139.59465 Wh with 0 decimals of accuracy
[09:56:54.238][D][sensor:133]: 'cir2': Sending state 123.50247 W with 1 decimals of accuracy
[09:56:54.256][D][sensor:133]: 'Circuit 2 Daily Energy': Sending state 141.99556 Wh with 0 decimals of accuracy
[09:57:00.377][D][sensor:133]: 'Phase L Voltage': Sending state 123.88123 V with 1 decimals of accuracy
[09:57:00.377][D][sensor:133]: 'Phase L Phase Angle': Sending state 179.44269 ° with 0 decimals of accuracy
[09:57:00.379][D][sensor:133]: 'Phase R Voltage': Sending state 124.78645 V with 1 decimals of accuracy
[09:57:00.385][D][sensor:133]: 'Phase L Power': Sending state 0.00000 W with 1 decimals of accuracy
[09:57:00.386][D][sensor:133]: 'Phase R Power': Sending state 0.00000 W with 1 decimals of accuracy
[09:57:00.396][D][sensor:133]: 'cir1': Sending state 122.83261 W with 1 decimals of accuracy
[09:57:00.407][D][sensor:133]: 'Circuit 1 Daily Energy': Sending state 139.80559 Wh with 0 decimals of accuracy
[09:57:00.413][D][sensor:133]: 'cir2': Sending state 124.90652 W with 1 decimals of accuracy
[09:57:00.434][D][sensor:133]: 'Circuit 2 Daily Energy': Sending state 142.21002 Wh with 0 decimals of accuracy
[09:57:01.984][D][sensor:133]: 'Total Power': Sending state 0.00000 W with 1 decimals of accuracy
[09:57:01.985][D][sensor:133]: 'Total Daily Energy': Sending state 0.00057 Wh with 0 decimals of accuracy
[09:57:02.334][D][sntp:100]: Synchronized time: 2025-11-25 15:57:02
[09:57:06.163][W][api.connection:1889]: Home Assistant 2025.3.2 (172.16.0.138): Reading failed CONNECTION_CLOSED errno=128
config
esphome:
name: "emporia"
friendly_name: Emporia
esp32:
board: esp32dev
framework:
type: esp-idf
external_components:
# - source: github://emporia-vue-local/esphome@dev
- source: github://digiblur/esphome-vue3@dev
components:
- emporia_vue
# Enable logging
logger:
#level: VERY_VERBOSE
# Enable Home Assistant API
api:
#encryption:
# key: "ZAs7Yax3Hz09Ld7wjhcK7G5S06g32xqZWsh3CUfLEy4="
ota:
- platform: esphome
password: "48e95f4ca9b1e7b45c6d51ec93357ab5"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Wifi LED
on_connect:
- light.turn_on: wifi_led
on_disconnect:
- light.turn_off: wifi_led
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Emporia Fallback Hotspot"
password: "AGtSvLP35DE2"
captive_portal:
preferences:
# please also make sure `restore: false` is set on all `platform: total_daily_energy`
# sensors below.
flash_write_interval: "48h"
i2c:
sda: 5
scl: 18
scan: false
frequency: 400kHz
timeout: 1ms
id: i2c_a
switch:
- platform: restart
name: Restart
# Configure the two status LEDs on the Emporia Vue v3 case
# https://github.com/emporia-vue-local/esphome/discussions/264#discussioncomment-9788390
light:
- platform: status_led
id: wifi_led
pin:
number: 2
ignore_strapping_warning: true
restore_mode: RESTORE_DEFAULT_ON
- platform: status_led
id: ethernet_led
pin: 4
restore_mode: RESTORE_DEFAULT_ON
time:
- platform: sntp
id: sntp_time
timezone: CST #l <your time zone from https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List>
# these are called references in YAML. They allow you to reuse
# this configuration in each sensor, while only defining it once
.defaultfilters:
- &moving_avg
# we capture a new sample every 0.24 seconds, so the time can
# be calculated from the number of samples as n * 0.24.
sliding_window_moving_average:
# we average over the past 2.88 seconds
window_size: 24
# we push a new value every 1.44 seconds
send_every: 12
- &invert
# invert and filter out any values below 0.
lambda: 'return max(-x, 0.0f);'
- &pos
# filter out any values below 0.
lambda: 'return max(x, 0.0f);'
- &abs
# take the absolute value of the value
lambda: 'return abs(x);'
# Provide diagnostic information about the platform.
# https://gist.github.com/bradsjm/c2562df0e891f26e27191a31d617d471
text_sensor:
- platform: wifi_info
ip_address:
name: "IP Address"
ssid:
name: "Connected SSID"
mac_address:
name: "MAC Address"
sensor:
- platform: emporia_vue
i2c_id: i2c_a
phases:
- id: phase_a # Verify that this specific phase/leg is connected to correct input wire color on device listed below
input: RED # Vue device wire color, match to connected wire color on voltage sensing harness
calibration: 0.0192775 # 0.022 is used as the default as starting point but may need adjusted to ensure accuracy
# To calculate new calibration value use the formula <in-use calibration value> * <accurate voltage> / <reporting voltage>
voltage:
name: "Phase L Voltage"
filters: [*moving_avg, *pos]
phase_angle:
name: "Phase L Phase Angle"
filters: [*moving_avg, *pos]
- id: phase_b # Verify that this specific phase/leg is connected to correct input wire color on device listed below
input: BLACK # Vue device wire color, match to connected wire color on voltage sensing harness
calibration: 0.0192775 # 0.022 is used as the default as starting point but may need adjusted to ensure accuracy
# To calculate new calibration value use the formula <in-use calibration value> * <accurate voltage> / <reporting voltage>
voltage:
name: "Phase R Voltage"
filters: [*moving_avg, *pos]
ct_clamps:
- phase_id: phase_a
input: "A" # Verify the CT going to this device input also matches the phase/leg
power:
name: "Phase L Power"
id: phase_a_power
device_class: power
filters: [*moving_avg, *pos]
- phase_id: phase_b
input: "B" # Verify the CT going to this device input also matches the phase/leg
power:
name: "Phase R Power"
id: phase_b_power
device_class: power
filters: [*moving_avg, *pos]
# Pay close attention to set the phase_id for each breaker by matching it to the phase/leg it connects to in the panel
- { phase_id: phase_a, input: "1", power: { id: cir1, filters: [ *moving_avg, *pos ] } }
- { phase_id: phase_b, input: "2", power: { id: cir2, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_a, input: "3", power: { id: cir3, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_b, input: "4", power: { id: cir4, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_a, input: "5", power: { id: cir5, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_b, input: "6", power: { id: cir6, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_a, input: "7", power: { id: cir7, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_b, input: "8", power: { id: cir8, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_b, input: "9", power: { id: cir9, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_a, input: "10", power: { id: cir10, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_b, input: "11", power: { id: cir11, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_a, input: "12", power: { id: cir12, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_b, input: "13", power: { id: cir13, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_a, input: "14", power: { id: cir14, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_b, input: "15", power: { id: cir15, filters: [ *moving_avg, *pos ] } }
#- { phase_id: phase_a, input: "16", power: { id: cir16, filters: [ *moving_avg, *pos ] } }
- { platform: copy, name: "Circuit 1 Power", source_id: cir1, filters: *moving_avg }
- { platform: copy, name: "Circuit 2 Power", source_id: cir2, filters: *moving_avg }
#- { platform: copy, name: "Circuit 3 Power", source_id: cir3, filters: *moving_avg }
#- { platform: copy, name: "Circuit 4 Power", source_id: cir4, filters: *moving_avg }
#- { platform: copy, name: "Circuit 5 Power", source_id: cir5, filters: *moving_avg }
#- { platform: copy, name: "Circuit 6 Power", source_id: cir6, filters: *moving_avg }
#- { platform: copy, name: "Circuit 7 Power", source_id: cir7, filters: *moving_avg }
#- { platform: copy, name: "Circuit 8 Power", source_id: cir8, filters: *moving_avg }
#- { platform: copy, name: "Circuit 9 Power", source_id: cir9, filters: *moving_avg }
#- { platform: copy, name: "Circuit 10 Power", source_id: cir10, filters: *moving_avg }
#- { platform: copy, name: "Circuit 11 Power", source_id: cir11, filters: *moving_avg }
#- { platform: copy, name: "Circuit 12 Power", source_id: cir12, filters: *moving_avg }
#- { platform: copy, name: "Circuit 13 Power", source_id: cir13, filters: *moving_avg }
#- { platform: copy, name: "Circuit 14 Power", source_id: cir14, filters: *moving_avg }
#- { platform: copy, name: "Circuit 15 Power", source_id: cir15, filters: *moving_avg }
#- { platform: copy, name: "Circuit 16 Power", source_id: cir16, filters: *moving_avg }
- platform: template
name: "Total Power"
lambda: return id(phase_a_power).state + id(phase_b_power).state;
update_interval: 10s
id: total_power
unit_of_measurement: "W"
device_class: power
state_class: measurement
- platform: total_daily_energy
name: "Total Daily Energy"
power_id: total_power
accuracy_decimals: 0
unit_of_measurement: "Wh"
- { power_id: cir1, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 1 Daily Energy" }
- { power_id: cir2, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 2 Daily Energy" }
#- { power_id: cir3, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 3 Daily Energy" }
#- { power_id: cir4, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 4 Daily Energy" }
#- { power_id: cir5, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 5 Daily Energy" }
#- { power_id: cir6, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 6 Daily Energy" }
#- { power_id: cir7, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 7 Daily Energy" }
#- { power_id: cir8, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 8 Daily Energy" }
#- { power_id: cir9, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 9 Daily Energy" }
#- { power_id: cir10, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 10 Daily Energy" }
#- { power_id: cir11, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 11 Daily Energy" }
#- { power_id: cir12, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 12 Daily Energy" }
#- { power_id: cir13, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 13 Daily Energy" }
#- { power_id: cir14, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 14 Daily Energy" }
#- { power_id: cir15, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 15 Daily Energy" }
#- { power_id: cir16, platform: total_daily_energy, accuracy_decimals: 0, name: "Circuit 16 Daily Energy" }
Debug log from ESP Home device…
2025-11-25 09:30:39.061 WARNING (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Connection error occurred: emporia @ 172.16.0.100: Connection lost
2025-11-25 09:32:09.064 WARNING (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Connection error occurred: emporia @ 172.16.0.100: Connection lost
2025-11-25 09:32:59.072 WARNING (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Connection error occurred: emporia @ 172.16.0.100: Connection lost
2025-11-25 09:34:29.077 WARNING (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Connection error occurred: emporia @ 172.16.0.100: Connection lost
2025-11-25 09:35:22.814 DEBUG (MainThread) [aioesphomeapi.reconnect_logic] Removing zeroconf listener for emporia
2025-11-25 09:35:22.815 ERROR (MainThread) [homeassistant.components.update] Error while setting up esphome platform for update:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 382, in _async_setup_platform
await asyncio.shield(awaitable)
File "/usr/src/homeassistant/homeassistant/components/esphome/update.py", line 64, in async_setup_entry
assert entry_data.device_info is not None
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError
2025-11-25 09:35:22.816 DEBUG (MainThread) [aioesphomeapi.reconnect_logic] Trying to connect to emporia @ 172.16.0.100
2025-11-25 09:35:22.816 DEBUG (MainThread) [aioesphomeapi.reconnect_logic] Connected lock acquired for emporia @ 172.16.0.100
2025-11-25 09:35:22.817 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Connecting to IPv4Sockaddr(address='172.16.0.100', port=6053)
2025-11-25 09:35:22.819 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Opened socket to 172.16.0.100:6053
2025-11-25 09:35:22.819 INFO (MainThread) [aioesphomeapi.reconnect_logic] Successfully connected to emporia @ 172.16.0.100 in 0.003s
2025-11-25 09:35:22.819 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Sending HelloRequest: client_info: "Home Assistant 2025.3.2"
api_version_major: 1
api_version_minor: 10
2025-11-25 09:35:22.819 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Sending ConnectRequest:
2025-11-25 09:35:22.819 DEBUG (MainThread) [aioesphomeapi._frame_helper.base] emporia @ 172.16.0.100: Sending frame: [001d010a17486f6d6520417373697374616e7420323032352e332e321001180a000003]
2025-11-25 09:35:22.906 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type HelloResponse: api_version_major: 1
api_version_minor: 13
server_info: "2025.11.1"
name: "emporia"
2025-11-25 09:35:26.226 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 3456757072
state: 124.057945
2025-11-25 09:35:26.226 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 2326326827
state: 179.442688
2025-11-25 09:35:26.226 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 360257226
state: 124.004944
2025-11-25 09:35:26.226 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 1561170465
2025-11-25 09:35:26.226 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 4042487883
2025-11-25 09:35:26.226 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 1798665735
state: 111.300186
2025-11-25 09:35:26.226 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 2196232122
state: 113.277496
2025-11-25 09:35:30.805 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 294834382
state: 0.000572465768
2025-11-25 09:35:30.805 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 3900173051
2025-11-25 09:35:32.422 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 3456757072
state: 124.05954
2025-11-25 09:35:32.422 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 2326326827
state: 179.442688
2025-11-25 09:35:32.422 DEBUG (MainThread) [aioesphomeapi.connection] emporia @ 172.16.0.100: Got message of type SensorStateResponse: key: 360257226
state: 124.010567