DSMRReader

DSMRReader

Docker app from Flight777's Repository

Overview

bDSMR protocol reader for smart energy meters. Stores data reads and visualizes energy use./b /br /br Unraid template that JUST WORKS, brought to you by Flight777! /br /br IMPORTANT 1!! -- Next to this container, you will have to install a PostgreSQL container from the APPS, any version 11 or 12 will do. DB name: dsmrreader DB user: dsmrreader DB password: dsmrreader /br /br IMPORTANT 2!! By default this container is set-up as RECEIVER (see DATALOGGER MODE), meaning that the DSMR P1 input is received on another machine with an instance of DSMR READER running and the internal datalogger on this instance is disabled. After running this container, you will need to set-up the SENDER with the right API, please see: https://dsmr-reader.readthedocs.io/en/v4/api.html#configuration /br /br If you Unraid machine has a direct P1 input, then change this value to STANDALONE and configure: /br /br DATALOGGER INPUT METHOD=serial
DATALOGGER_SERIAL_PORT=/dev/ttyUSB0
DATALOGGER_SERIAL_BAUDRATE=115200

and set your device to the right USB path /br /br bIMPORTANT 3!!/b The DATALOGGER SLEEP TIME has been set to 10 seconds, instead of 1, to save you some DB writes. 6 readings per minute should still give you data enough ;)

DSMR-reader - Docker

Docker Pulls Docker Stars GitHub Build Status GitHub Stars Donate

Docker container for DSMR Reader - read your smart meter P1 port and visualize energy consumption.

Built with s6-overlay v3 for robust container lifecycle management.


Links


⚠️ Breaking changes in v6 (at a glance)

If you are upgrading from v5, review the following:

  • Docker variables now use the CONTAINER_ prefix
  • Default container UID/GID changed to 1000:1000
  • Legacy timezone mounts and TZ variables should be removed
  • armV7 only support Postgres up to release 17.x. Support will drop in ~1 year from now

✅ New installations normally require no changes.


Project inspired by the hard work and effort of Dennis Siemensma @dennissiemensma.

Originally created by Bram van Dartel @xirixiz | Powered by DSMR Reader

Install DSMRReader on Unraid in a few clicks.

Find DSMRReader in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for DSMRReader Review the template variables and paths Click Install

Categories

Download Statistics

6,593,475
Total Downloads
6,815
This Month
6,347
Avg / Month

Total Downloads Over Time

Loading chart...

Related apps

Explore more like this

Explore all

Details

Repository
xirixiz/dsmr-reader-docker
Last Updated2026-06-28
First Seen2020-04-02

Runtime arguments

Web UI
http://[IP]:[PORT:80]
Network
bridge
Shell
sh
Privileged
false

Template configuration

DATABASE HOST (Adjust to your UNRAID host IP)Variable

Container Variable: DJANGO_DATABASE_HOST

Target
DJANGO_DATABASE_HOST
Default
[IP]
WEBUI ADMIN USERNAMEVariable

Container Variable: DSMRREADER_ADMIN_USER

Target
DSMRREADER_ADMIN_USER
Value
admin
WEBUI ADMIN PASSWORDVariable

Container Variable: DSMRREADER_ADMIN_PASSWORD

Target
DSMRREADER_ADMIN_PASSWORD
Default
dsmrreader
WEB UI PortPorttcp

Container Port: 80

Target
80
Value
7777
Backup directoryPathrw

Container Path: /home/dsmr/app/backups

Target
/home/dsmr/app/backups
Value
/mnt/user/appdata/dsmr-reader/backups
DATALOGGER MODE (change if P1 port is on this machine to STANDALONE)Variable

Container Variable: DATALOGGER_MODE

Target
DATALOGGER_MODE
Default
receiver|standalone
Value
receiver
DATALOGGER SERIAL PORTVariable

Optional - required if setting DATALOGGER MODE to standalone!

Target
DATALOGGER_SERIAL_PORT
Default
|/dev/ttyUSB0
DATALOGGER SERIAL BAUDRATEVariable

Optional - required if setting DATALOGGER MODE to standalone!

Target
DATALOGGER_SERIAL_BAUDRATE
Default
|115200
VIRTUAL_HOSTVariable

Container Variable: VIRTUAL_HOST

Value
localhost
DATABASE PORTVariable

Container Variable: DJANGO_DATABASE_PORT

Target
DJANGO_DATABASE_PORT
Default
5432
Value
5432
DATABASE NAMEVariable

Container Variable: DJANGO_DATABASE_NAME

Target
DJANGO_DATABASE_NAME
Default
dsmrreader
Value
dsmrdb
DATALOGGER SLEEP TIME (seconds)Variable

Container Variable: DATALOGGER_SLEEP

Target
DATALOGGER_SLEEP
Default
5
Value
10
PUIDVariable

Container Variable: PUID

Value
99
PGIDVariable

Container Variable: PGID

Value
100
Supervisor UserVariable

User of which the supervisor should be part, important for file permissions!

Target
SD_USER
Default
nobody
Value
nobody
Supervisor GroupVariable

Group of which the supervisor should be part, important for file permissions!

Target
SD_GROUP
Default
users
Value
users