53022aebb84e3a07991d5d7dce46019565c5412f
DSMR 2 MQTT bridge
Introduction
This bridigng component reads Dutch Smart Meter Requirements (DSMR) telegrams and sends them to a MQTT broker using the Homie convention. The component is written in Python and is based on the execelent work of others:
Configuring the bridge
Create some environment variables (e.g. with a .env file) to specify the required settings:
PYTHONPATH="."
MQTT_HOST=<mqtt-broker-hostname>
DSMR_PORT=/dev/ttyUSB0
DSMR_PROTOCOL=V5
If you have forwared the raw serial signal through ser2net, you should use DSMR_PORT=tcp://<hostname>:<port>, e.g.:
DSMR_PORT=tcp://forwarding-pi.local:3334
If you use credentials to access the MQTT broker, then alsp specify:
MQTT_USERNAME=<mqtt-user>
MQTT_PASSWORD=<mqtt-password>
Inspect the source app_settings.py to find out about the other less frequently used settings.
Configuring ser2net
On the forwarding computer (e.g a Raspberry Pi) you need to install ser2net:
sudo apt upgrade && sudo apt install ser2net
Then edit the configurion file /etc/ser2net.yaml and add
connection: &Dsmr
accepter: tcp,3334
connector: serialdev,
/dev/ttyUSB0,
115200n81, local
Description
Languages
Python
93.9%
Dockerfile
6.1%
