Drop in replacement for SungrowModbusTCPClient/ModbusTCPClient that uses Websockets and HTTP API requests to work around Sungrow disabling Modbus requests on WiNet-S Dongle.
Report Bug
·
Request Feature
Access Modbus RTU via HTTP API call to Sungrow WiNet-S.
This uses HTTP requests to retrieve Modbus packets, add a header and then pass to PyModbus to parse like a standard Modbus RTU message
Class based on pymodbus.ModbusTcpClient, completely interchangeable, just replace ModbusTcpClient() or SungrowModbusTcpClient() with SungrowModbusTcpClient()
Install via PIP, then if replace ModbusTcpClient() or SungrowModbusTcpClient() with SungrowModbusWebClient()
- Install with PIP
pip install SungrowModbusWebClient
For Solariot, open solariot.py
Add to the top: from SungrowModbusWebClient import SungrowModbusWebClient
Replace SungrowModbusTcpClient with SungrowModbusWebClient near lines 100 & 101
- SG7.0RT with WiNet-S Dongle
- SG10RT with WiNet-S Dongle
python setup.py sdist
twine upload dist/*
Distributed under the GPL3 License. See LICENSE.txt
for more information.
Project Link: https://github.com/bohdan-s/SungrowModbusWebClient