Emporia energy monitoring

Hello,

Anyone have a experience with this device?
It’s esp based, but I have not seen any esphome home topic yet.

https://community.home-assistant.io/t/emporia-vue/

4 Likes

I asked the same question a while back. Seems like a no brainer to flags for local access if someone were inclined to come up with a config for it. The kits are pretty cheap considering they come with all the clamps. They recently had the hacs add on author remove per second polls which makes me a bit nervous about the long term cloud aspect of this solution. Local would be better.

1 Like

Yeah, well will see.
After the energy monitoring and solar panel features hopefully it’s going to be interested for someone who knows better esphome.

Anyhow this the the board:

1 Like

Looking at this a little more, there’s the esp32 onboard as mentioned previously. Of interest there’s also a pair of HC4051’s which I assume each handle 8 of the clamp sensors for a total of 16 circuits. Most interesting though is an Atmel SAM D09 microcontroller. Then inside the case are hand written characters that are in the same format as a MQTT topic. It’s too cryptic to tell for sure as I haven’t powered on the device but perhaps a portion of it is from the MAC address or some other identifier for when it sends data to the mother ship.

Originally when someone said there was an esp32 in here id assumed that there was a mux or two for the sensors and it was the esp that did everything. It’s a complete guess but I’m now thinking the Atmel interfaces with the muxes and thus the clamps and it’s the Atmel the sends data to the esp (probably over serial) and all the esp does is handle the Bluetooth connection for initial setup as well as wifi to send data outboard as a quick google doesn’t show any tcp/ip stack on the Atmel.

That’s about as far as I can go for now. I welcome others with more know how and tools to sniff serial lines and such to prove or disprove these assumptions.

Edit: if I sniff traffic, there are slow intermittent sends from the device to the mother ship over tls1.2 unfortunately but when I open the app the packets start flowing fast and furious. Obviously a bandwidth saving measure on their part by (I assume) aggregating data and sending fewer large chunks when no one’s looking at the data/app and more frequent smaller chunks when they are.

Edit2: wireshark confirms it’s secure MQTT over port 8883 that it’s sending to the cloud. I’m now thinking it not only publishes this but as part of the handshake at start up that it starts it’s own small MQTT broker that the mother ship publishes too so the local device knows if it should be sending large bulk updates when no ones looking at the app or if it should be sending frequent bursts for a more “real-time” app user that’s active. I still think sniffing the serial line from the esp and the atmel is likely the best best for now but I won’t be able to devote any time to that anytime soon.

1 Like

maybe some info can be found here

1 Like

If anyone would like to buy and try , there is 10% off from official website : ten%offk

Back in August I purchased a vue2, sniffed the data, took it apart, downloaded an updated firmware file for the device and found that the atmel chip does all the mux from the inputs and sends the data to the esp32 other i2c. I’ll have to dig up the rest of my data which shows the pins configured on the esp32 used for i2c. There are two i2c busses used on the esp32. The nvs storage on the esp32 is encrypted, I was even able to upload the vue2 firmware to a fresh esp32 and it barked because it couldn’t read the encrypted config it was looking for.

2 Likes

Hey, do you have your notes on which pins are used for the i2c buses? I’m only aware of one on pin 21/22 and I would be curious to sniff the traffic on the other bus, but I’m not sure which pins are used.

….and we have a working ESPHome config for this. I’ve only tried it on a spare unit on my bench but so far so good. Thank you to the fine folks that figured out all of this!

8 Likes

Sweet!!

For other reason I have to wait with the order hopefully there will be more feedbacks until then.

Hi
I have also flashed it on my spare Vue2. Seems to work but I’m getting readings from ports that are configured but don’t have a CT or power attached. Has anyone else seen this issue? Also the Esphome iog file repeats the message below and I don’t know why or even if it’s an issue. Any ideas?

[09:33:08][D][esp-idf:000]: I (272717) wifi:
[09:33:08][D][esp-idf:000]: bcn_timout,ap_probe_send_start
[09:33:08][D][esp-idf:000]:

[09:33:09][D][esp32.preferences:114]: Saving preferences to flash…
[09:33:17][D][esp-idf:000]: I (281731) wifi:
[09:33:17][D][esp-idf:000]: bcn_timout,ap_probe_send_start
[09:33:17][D][esp-idf:000]:

[09:33:26][D][esp-idf:000]: I (290746) wifi:
[09:33:26][D][esp-idf:000]: bcn_timout,ap_probe_send_start
[09:33:26][D][esp-idf:000]:

Waiting to receive the Vue1 to Vue2 adapters so I can replace my current Vue2 device.

Thanks to all that contributed.
5310

Hi
Here’s the HA screenshot of the device with only a CT connected to A and plugged into a 120v outlet.

Why are there readings? The only one that should have anything are those attached to A.

Thanks.
5310

1 Like

Comment out the circuits/ports you aren’t using in the config and reupload. The emporia app must have logic that filters out these sorts of erratic values.

6 Likes

Great to see! Was wondering if Travis was going to pick it up now that you can kick the cloud to the curb!

Thanks for sharing!

3 Likes

Works great. Many thanks to the people who put the effort in to this.

I’m confused, not surprising.

If I have a 240V double pole breaker connected to the panel circuits spots 1 & 3.

How do I set this up In the esphome.yaml? I see the following example.
- { phase_id: phase_a, input: “1”, power: { name: “Circuit 1 Power”, id: cir1, filters: [ *moving_avg, *pos, multiply: 2 ] } }
- { phase_id: phase_a, input: “2”, power: { name: “Circuit 2 Power”, id: cir2, filters: [ *moving_avg, *pos, multiply: 2 ] } }
- { phase_id: phase_b, input: “3”, power: { name: “Circuit 3 Power”, id: cir3, filters: [ *moving_avg, *pos, multiply: 2 ] } }

Do I need two CTs for a 240V circuit? On on each line coming off of the breaker?
If so, what is the multiply: 2 in the filter for?
If not, do I just pick one wire from the breaker and use the multiple: 2 in the filter?

Thanks

I’m really interested in this energy monitor and was wondering if it measures voltage as well for each phase of my split phase panel with the EPSHome config flashed to it? Would really like to also calculate power factor from this too.

Hello Guys, i will be installing emporia in my Italian setup 3 phase 380v main .
I will have several 3 phase appliances such has heat pump external unit, elevator, and else.

I’ve checked with emporia team and the standard setting on their device does not allow to see 3 phases appliances in a single deck rather than seing the 3 phases separate.

Will this be possible once flashing the ESPhome?

thank you .

What is the benefit of doing this mod?