Show evcc data to your AWTRIX 3 flashed Ulanzi TC001 Smart Pixel Clock.
Shows the power consumption of your household.
Shows the power of your solar panels. It is not shown in case there is no power.
Shows the power taken from grid (red icon) or given to the grid (green icon). If there is no power to or from grid, this is not shown.
Shows your home battery state of charge. The bar on the bottom also represents the SOC. The icon is animated if power is drawn or charged. In case there is no power, the icon shows the SOC.
Shows the power taken from the battery (icon with arrow from battery) or given to the battery (icon with arrow to battery).
This shows your vehicle's state of charge if the car is connected to the loadpoint. The bar on the bottom also represents the SOC.
Only one loadpoint is implemented, but you can easily add another one.
You'll see this when charging the car at loadpoint 1.
The screen will show up during start a few times only.
You need a device that can be flashed with AWTRIX 3. Right now this is the Ulanzi TC001 Smart Pixel Clock. Flashing instructions can be found here.
I have it plugged to the wall with a 2 amps adapter (something like this). I also have plugged a timer (something like this) in between to charge and discharge the TC001 internal battery. So it does not keep fully charged over time.
You can also use DIY hardware. Please refer to the website of the AWTRIX 3 maintainer.
You need already set up and running:
- evcc (https://evcc.io/)
- AWTRIX 3 flashed device (https://blueforcer.github.io/awtrix3/)
- MQTT broker like Mosquitto (https://mosquitto.org/)
- Node-RED (https://nodered.org/)
- Connect evcc to your MQTT server by editing your
evcc.yaml
:
# mqtt message broker
mqtt:
broker: <IP address>:1883
topic: evcc
user: <mqtt user if any>
password: <mqtt password if any>
- Restart evcc.
- You should now see evcc publishing information to MQTT. You may use something like "MQTT Explorer" (https://mqtt-explorer.com/) to connect to your MQTT broker and check if you see "evcc" topics.
- Connect the AWTRIX device to your MQTT server by going to the IP adresss of the device and choose "MQTT" in menu. Enter MQTT information and remember the "prefix". You'll need it later in the Node-RED flow.
- You should now see the AWTRIX device publishing information to MQTT. Check for the "prefix" topic.
- Download the JSON file and import it to Node-RED by clicking the burger menu and choose "import".
- Change the variable "awtrix_prefix" in the "vars" node to the MQTT topic of your AWTRIX device (remember the "prefix").
- Also change the MQTT server settings in Node-RED to your MQTT server (see right side settings icon "MQTT"). Or delete it if you already have one configured for other flows.
- Click "deploy" to save everything and see it running.
- Node-RED will now write the apps to your AWTRIX device (see "custom" folder) and the apps will show up.
Download all icons used by the flow to your AWTRIX device by going to the IP address of the device and choose "Icons" in menu. Download all icons by using the icon ID. You can find all icon IDs in the "Readme.1st" node of the already imported flow.
Now all apps will have an icon.
You can set device settings in "config" node and also deaktivate standard AWTRIX apps.
Feel free to change the imported flow to your own needs. You may want to add a 2nd loadpoint. You may also change the icons. Check the "Readme.1st" node for further information. - Enjoy it. :-)
In case I update the flow due to calculation changes or fixing bugs, you need to import the whole flow again to Node-RED. It will automatically import as a new flow, so you won't loose your mods. You need to check on your own what has been changed or transfer your mods.
- Maybe old information will be shown before new data is pulled from the MQTT broker during startup of the AWTRIX device. This seems to be due to caching or the device or Node-RED does not recognize new data. This will need a few minutes then.
- As the MQTT broker is the service in between, everything relies on MQTT. If there is no new data pushed from other systems (in this case evcc) to MQTT, the device will not show the information anymore after a few times because Node-RED will only pull new data. - This can be fixed with an "inject" node which triggers to push the app data again to MQTT for the AWTRIX device. See "vehicleSoc" for reference.
- Change "vars" node to "config" node
- Add more parameters to config node
- Move all AWTRIX settings to config node
- Add %-bar/battery soc to battery power app
- Fix brightness issue in awtrix settings node
- Rename function nodes
- Rename loadpoint specific variables
- Add prefix variable for AWTRIX app names
- Initial version