mirror of
https://github.com/nekorevend/esphome-emporia-vue-utility.git
synced 2026-01-10 05:10:40 -07:00
Minor edits & change the "better" yaml to "simple" with more comments.
This commit is contained in:
20
README.md
20
README.md
@@ -101,7 +101,9 @@ See the [Backup original firmware](docs/backup_firmware.md) section.
|
|||||||
|
|
||||||
### 5. Create a YAML configuration
|
### 5. Create a YAML configuration
|
||||||
|
|
||||||
Pick one of the [example YAML files](example_yaml/) in this project as a starting point. You will need to customize it.
|
Pick one of the [example YAML files](example_yaml/) in this project as a starting point. The simplest one is `vue-utility-simple.yaml`, but if you want to send fewer datapoints to Home Assistant, then choose one of the `throttled` files.
|
||||||
|
|
||||||
|
In any case, you will need to customize it.
|
||||||
1. for ESPHome CLI, you will do this in a text file on your computer.
|
1. for ESPHome CLI, you will do this in a text file on your computer.
|
||||||
2. for ESPHome Device Builder, you will do within the Device Builder editor in Home Assistant UI.
|
2. for ESPHome Device Builder, you will do within the Device Builder editor in Home Assistant UI.
|
||||||
|
|
||||||
@@ -142,10 +144,10 @@ You would do **ONE** of these steps depending on which [ESPHome Install method](
|
|||||||
|
|
||||||
#### A) For ESPHome CLI:
|
#### A) For ESPHome CLI:
|
||||||
|
|
||||||
You **do not need** to clone this git repo. Even though this project has custom code in it (Python and C++), ESPHome will download the latest custom code from this project automatically from GitHub as part of the compilation step. Assuming you called this file `vue-utility-solar.yaml` from the previous step, you would run:
|
You **do not need** to clone this git repo. Even though this project has custom code in it (Python and C++), ESPHome will download the latest custom code from this project automatically from GitHub as part of the compilation step. Assuming you called this file `vue-utility-simple.yaml` from the previous step, you would run:
|
||||||
|
|
||||||
```
|
```
|
||||||
esphome run vue-utility-solar.yaml
|
esphome run vue-utility-simple.yaml
|
||||||
```
|
```
|
||||||
|
|
||||||
This should build the firmware and flash the device all on the command line.
|
This should build the firmware and flash the device all on the command line.
|
||||||
@@ -153,15 +155,15 @@ This should build the firmware and flash the device all on the command line.
|
|||||||
**-- OR --**
|
**-- OR --**
|
||||||
#### B) For ESPHome Device Builder:
|
#### B) For ESPHome Device Builder:
|
||||||
|
|
||||||
- go to the [ESPHome Device Builder Add-on](https://esphome.io/guides/getting_started_hassio/)
|
- Go to the [ESPHome Device Builder Add-on](https://esphome.io/guides/getting_started_hassio/).
|
||||||
- click `Open web UI`
|
- Click `Open web UI`.
|
||||||
- follow the UI to create a device.
|
- Follow the UI to create a device.
|
||||||
- paste the YAML code into the editor and customize it as above
|
- Paste the YAML code into the editor and customize it as above.
|
||||||
- click `Install`
|
- Click `Install`.
|
||||||
|
|
||||||
This should build the firmware and flash the device all within the web browser:
|
This should build the firmware and flash the device all within the web browser:
|
||||||
- ESPHome uses WebSerial (a browser API supported in Chrome/Edge). ESPHome compiles the firmware on your HA server, streams it over WebSerial and flashes the Vue on your computer.
|
- ESPHome uses WebSerial (a browser API supported in Chrome/Edge). ESPHome compiles the firmware on your HA server, streams it over WebSerial and flashes the Vue on your computer.
|
||||||
- To be clear: if Home Assistant is running on a Raspberry PI in a closet, you will have the USB to TTL Adapter connected to your computer, not the raspberry PI.
|
- To be clear: if Home Assistant is running on a Raspberry Pi in a closet, you will have the USB to TTL Adapter connected to your computer, not the Raspberry Pi.
|
||||||
|
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|||||||
@@ -13,8 +13,8 @@ ESPHome is a **framework and toolchain** for creating custom firmware. This usua
|
|||||||
So when you hear someone say "a device running ESPHome", what they really mean is "a device running firmware built with ESPHome".
|
So when you hear someone say "a device running ESPHome", what they really mean is "a device running firmware built with ESPHome".
|
||||||
|
|
||||||
There are multiple ways to do this and much of the documentation out there is difficult for new comers. This document walks you through:
|
There are multiple ways to do this and much of the documentation out there is difficult for new comers. This document walks you through:
|
||||||
- the high level of ESPHome
|
- The high level of ESPHome.
|
||||||
- the two of the ways to use ESPHome to build and flash the firmware for this project
|
- The two of the ways to use ESPHome to build and flash the firmware for this project.
|
||||||
|
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
@@ -41,22 +41,22 @@ There is an overwhelming amount of documentation on writing a YAML file. You do
|
|||||||
#### 1. ESPHome CLI --- [install guide](https://esphome.io/guides/installing_esphome/)
|
#### 1. ESPHome CLI --- [install guide](https://esphome.io/guides/installing_esphome/)
|
||||||
|
|
||||||
This gives you a CLI (command-line interface) to run ESPHome. You run this in the terminal of your computer: Windows, Mac or Linux. It is completely separate from Home Assistant. It does not run with or on Home Assistant, and does not talk to it in any way.
|
This gives you a CLI (command-line interface) to run ESPHome. You run this in the terminal of your computer: Windows, Mac or Linux. It is completely separate from Home Assistant. It does not run with or on Home Assistant, and does not talk to it in any way.
|
||||||
- you simply run: `esphome run <yaml_file>`
|
- You simply run: `esphome run <yaml_file>`
|
||||||
- runs on your own computer (Python or Docker).
|
- Runs on your own computer (Python or Docker).
|
||||||
- better for developers: quick iteration, local editing of YAML/Python/C++.
|
- Better for developers: quick iteration, local editing of YAML/Python/C++.
|
||||||
- flexible: you can use local custom code without publishing to GitHub.
|
- Flexible: you can use local custom code without publishing to GitHub.
|
||||||
- full control over build logs, debugging, and advanced options.
|
- Full control over build logs, debugging, and advanced options.
|
||||||
- you **can** backup the original firmware with this.
|
- You **can** backup the original firmware with this.
|
||||||
|
|
||||||
|
|
||||||
#### 2. ESPHome Device Builder --- [install guide](https://esphome.io/guides/getting_started_hassio/#installing-esphome-device-builder)
|
#### 2. ESPHome Device Builder --- [install guide](https://esphome.io/guides/getting_started_hassio/#installing-esphome-device-builder)
|
||||||
|
|
||||||
This is a Home Assistant add-on. It is basically a UI wrapper for the ESPHome CLI, and runs on the Home Assistant server. You use the Home Assitant web interface to access it.
|
This is a Home Assistant add-on. It is basically a UI wrapper for the ESPHome CLI, and runs on the Home Assistant server. You use the Home Assitant web interface to access it.
|
||||||
- you use an in-browser editor to paste YAML code
|
- You use an in-browser editor to paste YAML code
|
||||||
- runs inside Home Assistant (web UI).
|
- Runs inside Home Assistant (web UI).
|
||||||
- better for end users: simpler UI.
|
- Better for end users: simpler UI.
|
||||||
- initial flashing still happens on your PC. It works using WebSerial (via a browser).
|
- Initial flashing still happens on your PC. It works using WebSerial (via a browser).
|
||||||
- you **cannot** use this to backup the original firmware.
|
- You **cannot** use this to backup the original firmware.
|
||||||
|
|
||||||
|
|
||||||
### What is best for you?
|
### What is best for you?
|
||||||
|
|||||||
@@ -1,10 +1,6 @@
|
|||||||
esphome:
|
esphome:
|
||||||
name: emporia-vue-utility
|
name: emporia-vue-utility
|
||||||
|
|
||||||
devices:
|
|
||||||
- id: smart_meter_reader
|
|
||||||
name: "Meter"
|
|
||||||
|
|
||||||
esp32:
|
esp32:
|
||||||
board: esp-wrover-kit
|
board: esp-wrover-kit
|
||||||
framework:
|
framework:
|
||||||
@@ -22,12 +18,12 @@ logger:
|
|||||||
# Encryption secures it. Any password will work. See FAQ.
|
# Encryption secures it. Any password will work. See FAQ.
|
||||||
api:
|
api:
|
||||||
encryption:
|
encryption:
|
||||||
key: "blah"
|
key: "some_password"
|
||||||
|
|
||||||
# Secures OTA Updates. Any password will work. See FAQ.
|
# Secures OTA Updates. Any password will work. See FAQ.
|
||||||
ota:
|
ota:
|
||||||
platform: esphome
|
platform: esphome
|
||||||
password: "blah"
|
password: "some_password"
|
||||||
|
|
||||||
wifi:
|
wifi:
|
||||||
ssid: !secret wifi_ssid
|
ssid: !secret wifi_ssid
|
||||||
@@ -38,8 +34,8 @@ web_server:
|
|||||||
port: 80
|
port: 80
|
||||||
# Optionally define a username + password
|
# Optionally define a username + password
|
||||||
# auth:
|
# auth:
|
||||||
# username: 'glen'
|
# username: 'some_username'
|
||||||
# password: 'vue_password'
|
# password: 'your_password'
|
||||||
|
|
||||||
# This uart connects to the MGM111
|
# This uart connects to the MGM111
|
||||||
uart:
|
uart:
|
||||||
@@ -51,20 +47,29 @@ uart:
|
|||||||
sensor:
|
sensor:
|
||||||
- platform: emporia_vue_utility
|
- platform: emporia_vue_utility
|
||||||
uart_id: emporia_uart
|
uart_id: emporia_uart
|
||||||
|
|
||||||
|
# Enables verbose logging.
|
||||||
debug: true
|
debug: true
|
||||||
update_interval: 15s
|
|
||||||
|
# The default update interval is 30s, but you can experiment with how frequent your smart meter
|
||||||
|
# supports providing an updated value.
|
||||||
|
# update_interval: 15s
|
||||||
|
|
||||||
|
# Below is a reasonable setup for someone with solar/batteries, but if you do not have that
|
||||||
|
# then you can remove the `energy_export` sensor and keep either `energy` or `energy_import`.
|
||||||
|
# All of the sensors are optional, so keep the ones you are interested in.
|
||||||
power:
|
power:
|
||||||
name: "Watts"
|
name: "Watts"
|
||||||
device_id: smart_meter_reader
|
# power_export:
|
||||||
|
# name: "Watts Returned"
|
||||||
|
# power_import:
|
||||||
|
# name: "Watts Consumed"
|
||||||
energy:
|
energy:
|
||||||
name: "Wh Net"
|
name: "Wh Net"
|
||||||
device_id: smart_meter_reader
|
|
||||||
energy_export:
|
energy_export:
|
||||||
name: "Wh Returned"
|
name: "Wh Returned"
|
||||||
device_id: smart_meter_reader
|
|
||||||
energy_import:
|
energy_import:
|
||||||
name: "Wh Consumed"
|
name: "Wh Consumed"
|
||||||
device_id: smart_meter_reader
|
|
||||||
|
|
||||||
# This LED is marked D3 on the pcb and is the power led on the case
|
# This LED is marked D3 on the pcb and is the power led on the case
|
||||||
status_led:
|
status_led:
|
||||||
Reference in New Issue
Block a user