Work in progress as 26/05/26

clone
https://github.com/StefanLSA/py-sma-modbus2

You may be force to use older pymodbus version: pip install "pymodbus==3.9.2"

no need to use the sma.service

edit logger.py to have unformated values :

        for register in results:
            # print(row_format.format(register.name, register.get_formattedValue(), register.description))
            # print( register. value)
            raw_val = register.value if register.value is not None else register.text
            print(raw_val)
            
Put this whole package into you webserver folder : /srv/http/comapps/sma-modbus/
then mv /home/jeanmarc/py-sma-modbus2 to /srv/http/comapps/sma-modbus/py-sma-modbus2
chown -R http:http /srv/http/comapps/sma-modbus/

edit  sma_pool.php
$SMAIP = '192.168.50.127';
$PYTHON_VENV = "/srv/http/comapps/sma-modbus/py-sma-modbus2/run/bin/python";
$SCRIPT_PATH = "/srv/http/comapps/sma-modbus/py-sma-modbus2/main.py";
$modbusregisters = "/srv/http/comapps/sma-modbus/sma-modbusregisters.txt";

chmod +x sma_pool.php then ln -s /srv/http/comapps/sma-modbus/sma_pool.php /usr/bin/sma_pool

