/pysolarmanv5

A python module to interact with Solarman Data Logging Sticks

Primary LanguagePythonMIT LicenseMIT

pysolarmanv5

This is a Python module to interact with Solarman (IGEN-Tech) v5 based solar inverter data loggers. Modbus RTU frames can be encapsulated in the proprietary Solarman v5 protocol and requests sent to the data logger on port tcp/8899.

This module aims to simplify the Solarman v5 protocol, exposing both sync and async interfaces similar to that of the uModbus library.

Details of the Solarman v5 protocol have been based on the excellent work of Inverter-Data-Logger by XtheOne and others.

Documentation

pysolarmanv5 documentation is available on Read the Docs.

The Solarman V5 protocol is documented here.

Supported Devices

A user contributed list of supported devices is available here.

If you are unsure if your device is supported, please use the solarman_scan utility to find compatible data logging sticks on your local network.

Please note that the Solis S3-WIFI-ST data logging stick is NOT supported.
See GH issue #8 for further information.

Some Ethernet data logging sticks have native support Modbus TCP and therefore do not require pysolarmanv5. See GH issue #5 for further information.

Dependencies

  • pysolarmanv5 requires Python 3.8 or greater.
  • pysolarmanv5 depends on uModbus.

Installation

To install the latest stable version of pysolarmanv5 from PyPi, run:

pip install pysolarmanv5

To install the latest development version from git, run:

pip install git+https://github.com/jmccrohan/pysolarmanv5.git

Projects using pysolarmanv5

Contributions

Contributions welcome. Please raise any Issues / Pull Requests via Github.

License

pysolarmanv5 is licensed under the MIT License. Copyright (c) 2024 Jonathan McCrohan