OpenDTU Logger #1842
Replies: 4 comments
-
It's been a few weeks, and meanwhile I have created version 0.0.6. OpenDTU logger connects to the OpenDTU livedata websocket and captures metrics. These metrics are inserted into a PostgreSQL database. Optionally, TimescaleDB can be used. Included in OpenDTU Logger are a number of Grafana dashboards, which can be used to provide useful visualisations and insights. The image below shows the PV dashboard of a given day in dark mode. Light mode is also supported. Hovering over the graphs will result in a tooltip, providing exact the values recorded at a given time. README.md has been expanded with a better introduction and detailed installation instructions using Docker Compose. A The previous issue of requiring manual restarts on OpenDTU disconnects has been resolved both in Docker as well as systemd. Additionally, this release adds support for the following processor architectures:
Processor architectures arm64 and amd64 were already supported. Feedback to this release can be provided and questions can be asked in this topic or through the contact form on my website. Attached are two more (anonymised) screenshots of the 'PV' dashboard. One in light and another one in dark mode. The dark mode screenshot shows a full day of PV history. In the light mode screenshot, I set the date range to the last 3 hours. |
Beta Was this translation helpful? Give feedback.
-
In these screenshots, you can see how hovering over the graphs provides detailed information. |
Beta Was this translation helpful? Give feedback.
-
Today, I'm releasing v0.0.7. In this release, event logging has been implemented to work properly. Major features
Other improvements
|
Beta Was this translation helpful? Give feedback.
-
Hello everyone, I just finished work on creating a Home Assistant add-on for OpenDTU Logger and released version 0.0.9. OpenDTU Logger allows you to store detailed inverter metrics into a database, which can be visualised using Grafana and other tools. |
Beta Was this translation helpful? Give feedback.
-
Hello everyone,
I wanted to efficiently log long-term production data from my OpenDTU into a database and I've created a program to do just that. Today I'm open sourcing the program. OpenDTU logger is available in binary form for Linux, macOS and Windows, but the preferred way to run it is using Docker Compose. That way, automatic updates can also be configured.
As the OpenDTU software is designed to run on ESP32 boards without a large amount of storage, it does not store historical production data. Instead, users are supposed to rely on individual MQTT topics to which it publishes metrics for this. For me, this was not convenient as it implies storing each metric individually as a “timestamp, metric, value” tuple. I built a proof-of-concept using this approach, but although functional, it was inefficient in terms of storage requirements and data processing.
Instead, I’d like to make use of normalised, SQL-based tables, formatted like “timestamp, metric1, metric2, etc.”. Fortunately, the web interface of OpenDTU relies on a websocket connection, which provides an output more suitable for this, as it outputs, for each inverter, all data at once, in a JSON-based structure.
After not being able to find standalone implementations capable of logging the OpenDTU output into a database efficiently, outside of integrated solutions for platforms such as Home Assistant, I decided to write something myself. I have tested it myself for the past few months and am happy with how it performs.
For more information about the technical design choices I made, read the blog post I made about it. The source code, Docker images and binaries for Windows, Linux and macOS, combined with installation instructions are available on my personal git server.
Attached is an anonymised screenshot of one of the Grafana dashboards I am able to create with it.
Beta Was this translation helpful? Give feedback.
All reactions