This tool help you to read SML based meters.
- config SML search properties
- config OBIS value index
- run reader as service (linux)
- CRC16 check
- Test
Find your serial port like S0 or ttyAMA0 and use it instead fo my example port ttyAMA0.
This tool use for serial reading the pyserial package.
python -m pip install pyserial
For mqtt
pip install paho-mqtt
example with console output
python read_meter_values.py --device /dev/ttyAMA0 --meter BZPlus3example with mqtt
python read_meter_values.py --device /dev/ttyAMA0 --mqtt --url 172.0.0.1 --topic meter/grid/meter1/ --meter BZPlus3Your service name has a differ port name as my ttyAMA0.
Unter den Einstellungen muss das dSS-Protokollstandard auf dSS-r gesetzt werden. Dazu muss SML Einstellung auf dSS-r eingestellt werden.
To read the serial data without system breaks, it is better to stop the service serial-getty@[your serial port].service:
systemctl stop serial-getty@ttyAMA0.serviceCopy the service to the system. (Optional) change the device name.
sudo cp grid-meter1.servic nano /etc/systemd/system/Start the service.
systemctl start grid-meter1.serviceRun a test with hex data file
read_meter_values.py --test --meter BZPlus3 --file sml_files/bz-pus-10.hex -l DEBUG - Sagemcom Smarty BZ-Plu
- eBZ DD3 DD3BZ06DTA SMZ1