With the new brand new release of Omnik data logger I have included support for the Dutch Smart Meter Requirements compliant Electricity meter. With a simple FTDI P1 to USB serial adapter Omnik datalogger now also publish your smart meter data including gas. With PVoutput this means we can also upload the consumed energy and calculate the netto energy used/delivered.
The P1 adapter can be either connected directly to your device or using TCP. I used ser2net to be able to connect multiple sessions to my P1 meter. To make this possible you will need at least ser2net v3.5. I have used a docker container installing ser2net (jsurf/rpi-ser2net:buster). Adding the max-connections option will enable me to do some debugging and in the mean will logging my data.
If you publish your smart meter to Home Assistant this can replace the native dsmr integration include with Home Assistant. Over MQTT auto discovery Home Assistant will discover automatically. In the config file you can rename the entities for your smart meter. Addition direct use, direct consumption and the real calculated consumption data will be published over MQTT and InfluxDB.
Omnik data logger now has been added to the default store. This means there is no need to add a custom repository any more. You can find Omnik data logger at the Automation section.
TCPclient tested and working now
Thanks to Han Lubach the tcpclient could be tested and corrected. It seems this client, based on Wouter van der Zwan’s logger is now usable with Omnik data logger as well.
They can be set through the config at be set to initial values. The current state will be reset to the initial value. You can use ha-entity-cache to recover to the last value set. Be aware that Home Assistant already restores certain values at restart.
If you have other properties or attributes you want to make persistent, then have a look at this project.
P.s. when you do not supply an initial value, Home assistant will recover state as well.
See my project that enables caching the state and attributes of custom controls within Home Assistant.
I found it to be annoying Home Assistant is recovering the manual input selects I am using for my automations. To enable a persistant state I have made a generic scrits that cashes the state of these input to disk and restores them automatically when Home Assistant restarts.
The last days omnikport was down. In the mean while I found a second method getting access your the data. During the outage the portal at https://www.solarmanpv.com/portal was available the whole time. Here you can find your data aswell. This proves omnikportal is just a skin and the data is at solarman PV. I found an API and working code that gives access to the realtime information. This API seems to give more accurate and in time access to the most recent data that was logged. Unfortunally the API is not TLS encrypted and uses a MD5 hashed password login. Not very safe. Neverless the alternative API is a good alternative for the time being. In the main menu there is now a special page for the omnik datalogger sofware.
The new release comes with a pluggable client for logging. This makes it easy to change the logging code by just changing the configuration.
New client in development for local logging
For older Omnik inverters it is not possible to get the data straight from the inverter. Newer inverters listen at port 8899 and are able to respond directly. The datalogger in the inverter sends an update about every 5 minutes to a fixed IP of a logging server in the Solarman datacenter. The IP address the inverter is logging to is fixed and cannot be changed via the interface, but it is possible to intercept the message by simulating the server using a NAT rule and a static route for the IP address in your netwerk. The code te parse the data that is logged is already available to use, thanks to Woutrrr. The software will be able to listen on a TCP port to the rerouted datalogger sessions. The code ewill be based on this project of t3kpunk. A tutorial how to use this will apear on this site as soon as the code is ready for release. Local logging will give more detail information then currently available using the API’s. Extra sensors will be:
AV Voltage* and Current and Frequency (3 fase if yor model supports it)
DC Voltages and Currents for all strings (max 2)
The Temperature* of the inverter
*These values are submitted to PVoutput as well. And every new sensor will become available via the MQTT plugin.
For ouput to pvoutput.org I have planned to make an integration for the Dutch Smart Meter (DSMR). An adapter from the P1 connector to a USB serial interface is general available. Integrating makes is possible to calculate the real energy consumption. Of course all these new sensor information will be available to the MQTT output plugin as well.
The last few days, the omnik portal and app and API have been unavailabe. So the data loggging is not possible at the moment. I have found out Omnik dataloggers log to the database of SolarmanPV. It seems you can still see your live output and history.
The URL is https://www.solarmanpv.com/portal/LoginPage.aspx and you can use your omnik portal credentials. I am working to get the API working so the software can be updated. Unfortunally there is only a working unsecure API interface. There is a secure alternative, but an API-key is needed for that. I am working on this.
Have some patience, I will come with a working update coming days.
This pre-release brings a solution to integrate the actual state of your Omnik power inverter in to your favorite home automation system. The script reads out omnikportal.com using your credentials and enables you process the real time data of your solar plant. The realetime output can be forwared to pvoutput.com or send over MQTT to your favorite Home Automation porject. The MQTT implementation supports the Home Assistant Automatic MQTT discovery.
You can run the script from the command line, use systemd or make use
of AppDaemon so you can integrate directly with Home Assistent.
Have fun! Let me know your experience if you have any issues.
Pascals code had some issues, and I decided to report them. In de mean wile I went on with a clone copy of the project, fixed some issues and optimized the code.
AppDaemon and Home Assistant integration with MQTT
I wrote an additional plugin (mqtt) to enable an easy integration with Home Assistant or any other MQTT based home automation solution.
The AppDaemon integration further enables updating the config without the need to restart.
New version at github
After integration with AppDaemon I ended up with an alternative that can be configured with AppDaemon through apps.yaml. The logging was adapted so it supports the AppDaemon logging system. When using the command line native logging is used.