TobiasHanss/SmartMeterClient
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
ABL eMS home SmartMeter Client ,a ESP32 project. Since ABL didn't provide me with an API for its eMS home Smartmeter, I reverse engineered the web interface and poured it into C++ code. I used eMS home software version V1.1 (https://www.ablmobility.de/de/emobility-blog/softwareupdateemshome.php) Web API description: The eMS uses a WebSocket connection to provide all readings at its web page. Once the connection is established, the server sends a packet every 250ms. It contains all measured values as well as the mains frequency, which is the only one that is not displayed on its website. However, the data format used here is rubbish. To be honest, I didn't understand it and stupidly followed the JavaScript code. So don't worry if you don't understand this part of the code. To establish the WebSocket connection you have to have a access token. A simple POST message with the eMS password is sufficient to receive this token. Fun Fact: The eMS enforces a 12-digit password on its website and then sends it unencrypted to its server. This is how it has to be done folks, a longer PW makes the system more secure ;-) In this project, the ESP32 provides a web server and shows the interesting data from the eMS. You can also switch outputs when there is enough power from the solar system. The switching is done by simple on/off batteries.