pysolarmanv5¶
pysolarmanv5 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.
pysolarmanv5 supports the following Modbus RTU function codes:
Modbus Function Code |
Modbus Function Description |
Width |
R/W |
pysolarmanv5 Function(s) |
---|---|---|---|---|
1 |
Read Coils |
1 bit |
Read |
|
2 |
Read Discrete Inputs |
1 bit |
Read |
|
3 |
Read Holding Registers |
16 bits |
Read |
|
4 |
Read Input Registers |
16 bits |
Read |
|
5 |
Write Single Coil |
1 bit |
Write |
|
6 |
Write Single Holding Register |
16 bits |
Write |
|
15 |
Write Multiple Coils |
1 bit |
Write |
|
16 |
Write Multiple Holding Registers |
16 bits |
Write |
|
22 ( |
Masked Write Register |
16 bits |
Write |
|
N/A |
Send Raw Modbus Frame |
N/A |
N/A |
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.