├── .gitignore ├── log ├── __init__.py └── log.py ├── mqtt ├── __init__.py └── mqtt.py ├── requirements.txt ├── systemd └── dsmr-mqtt.service ├── config.rename.py ├── telegraf-dsmr.conf ├── README.md ├── dsmr-mqtt.py ├── P1_serial.py ├── P1_parser.py ├── hadiscovery.py ├── dsmr50.py ├── LICENSE └── test └── dsmr.raw /.gitignore: -------------------------------------------------------------------------------- 1 | __pycache__ 2 | venv 3 | .idea 4 | config.py 5 | readme.txt 6 | ansible.sh 7 | notes.txt 8 | 9 | -------------------------------------------------------------------------------- /log/__init__.py: -------------------------------------------------------------------------------- 1 | from . log import logger 2 | 3 | 4 | __version__ = "1.2.0" 5 | __author__ = "Hans IJntema" 6 | __license__ = "GPLv3" -------------------------------------------------------------------------------- /mqtt/__init__.py: -------------------------------------------------------------------------------- 1 | from . mqtt import MQTTClient 2 | from paho.mqtt.client import MQTTv31 3 | from paho.mqtt.client import MQTTv311 4 | from paho.mqtt.client import MQTTv5 5 | 6 | __version__ = "2.0.0" 7 | __author__ = "Hans IJntema" 8 | __license__ = "GPLv3" 9 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | #python 3.x (tested with python 3.7) 2 | 3 | paho-mqtt 4 | # Debian: sudo apt-get install python3-paho-mqtt 5 | # sudo pip3 install paho-mqtt --user 6 | 7 | persist-queue 8 | # https://pypi.org/project/persist-queue/ 9 | # sudo pip3 install persist-queue --user 10 | 11 | pyserial 12 | # add root (or user which runs script) to group dialout (/etc/groups) 13 | 14 | 15 | ############################################################################## 16 | # run as sudo