This project is a Python application that reads data from RCT power inverters via TCP.
It is based on the open-source Python package rctclient, which implements the underlying communication protocol.
This software is provided "as is", without warranty of any kind, express or implied. The author assumes no responsibility or liability for any damages, data loss, malfunctions, incorrect readings, or other issues arising from the use of this software.
Use this software at your own risk.
This software interacts with external hardware. Improper use may affect the operation of your inverter or connected systems.
This project is not affiliated with, endorsed by, or supported by RCT Power GmbH. RCT is a registered trademark of its respective owner.
This project uses the open-source Python package rctclient.
The author of this project is not the author or maintainer of rctclient and is not affiliated with its developers.
This is a private open-source project. There is no guarantee of support, maintenance, or continued development.
This project is not published on PyPI. To use it, you must install it directly from the Git repository.
uv add git+https://github.com/VollKornBrot127/rct-inverter-monitor --branch mainpip install git+https://github.com/VollKornBrot127/rct-inverter-monitor@mainAfter installation, you can import the package in your Python code:
from rct_inverter_monitor import RctInverterMonitorA simple program that continuously polls and displays the battery SoC (state of charge) and the internal household load every 5 seconds could look like this:
import time
from rct_inverter_monitor import RctInverterMonitor
rct_monitor = RctInverterMonitor()
rct_monitor.connect()
try:
rct_monitor.start_polling(keys=["BATTERY_SOC", "HOUSEHOLD_LOAD_INTERNAL"], interval=5.0)
while True:
print(rct_monitor.get_cache())
time.sleep(5.0)
except KeyboardInterrupt:
rct_monitor.stop_polling()
finally:
rct_monitor.close()The available keys can be viewed here.
Please note that errors may occasionally appear in the log (e.g., "CRC mismatch" or "Frame error while consuming incoming data frame"). These are unavoidable, as the RCT inverter does not always provide clean or the requested data. For more information, please refer to the documentation for the rctclient package.