Skip to content

Create new firmware

peno64 edited this page Nov 21, 2023 · 5 revisions

As already stated before, slimmemeter uses ESPHome to read the data from the digital meter. ESPHome has an integration with many components and the configuration is done via a yaml configuration file. See https://github.com/peno64/slimmemeter/wiki/yaml-configuration how this configuration file is structured.

To change the behaviour of slimmemeter new firmware must be created from a yaml configuration file and then that firmware must be uploaded.

For slimmemeter it is described here how to do this. The page is in Dutch so here is the short description in English:

  1. Install Python and the commandline interface of ESPHome.
  • pip3 install wheel
  • pip3 install esphome

To check which version is installed:

  • esphome version

To update ESPHome:

  • pip3 install --upgrade wheel
  • pip3 install --upgrade esphome
  1. Create or download and modify if needed a yaml configuration file. I give some examples further on.
  2. Execute the esphome-commandline to create new firmware: esphome compile "[path]\config.yaml". The command is in a batch file build.bat which can be found here

The new firmware is now under a subfolder starting from the yaml file: .esphome\build\slimmelezer.pioenvs\slimmelezer It is called firmware.bin

There are several ways to upload this new firmware to the slimmelezer. I explain 2.

Upload via the browser

  • Go via the browser to http://slimmelezer.local/ (doesn't always work) or to the ip address of slimmemeter. The ip address can be found in homeassistant.
  • Upload under "OTA Update" the compiled firmware.
  • Click on update and wait a bit. The ESP should restart now with this new configuration.

It happened to me several times that I got timeouts when trying to update via the browser and I could not update it anymore. In this case the second way is a way out.

Upload via USB

This way is described here You do this on your computer where you have connected the slimmemeter via the usb port of slimmelezer to an usb port of your computer. Note that you first have to install a driver and then via device manager you can find out on which port you can access it. The command is in a batch file upload.bat which can be found here