Sign inSign up

giiibates/rct-manager

By giiibates

•Updated 18 days ago

REST API gateway for RCT Power inverters — readings, controls, metrics, admin GUI in one service.

Image
API management
Monitoring & observability
0

1.2K

giiibates/rct-manager repository overview

RCT Manager

⁠Your RCT Power inverter is just one REST call away.

License Python 3.13+ Platform Docker Pulls

Documentation Quick Start


⁠What is RCT Manager?

Do you have an RCT inverter and want to do more than the manufacturer’s app allows? RCT Manager connects to one or more inverters via TCP, providing access to readings and controls via a REST API. This means you can build your own integrations without having to work directly with the proprietary RCT protocol.

Built independently from the ground up, it combines the API, monitoring, data export and an administration interface in a single service. No vendor app is required.

RCT Manager administration GUI


⁠✨ Features

CategoryHighlights
REST APIRead values from the full protocol catalogue and control approved functions programmatically with JSON responses and standard error messages.
Your own analyticsUse the Prometheus /metrics endpoint or export data to your own InfluxDB 2 or QuestDB for Grafana, Telegraf, and custom analysis.
Dynamic electricity tariffsUse the API to automate your own tariff and charge the battery from the grid or discharge it to supply your home, setting a target state of charge, power limit and duration.
Administration GUIManage the overview, inverters, Energy Manager, TSDB, Prometheus, API tokens and settings all in one place.
Guarded controlsWrites are disabled by default and checked after execution; access is protected by tokens and separate admin sessions.
Multiple devicesConnect several inverters to one API. Requests to each endpoint are coordinated to avoid conflicts at the device level.
Hardened containerThe container uses a read-only root file system, drops capabilities for the server process and runs it as a non-root user. It also includes a health check.

⁠🚀 Quick start

cp settings.env.example settings.env   # set HMAC_SECRET (openssl rand -base64 32) for Docker
docker compose -f docker/compose.yaml up -d

Without Docker, use Python 3.13+:

python -m pip install -e '.[dev]'
python -m app validate
python -m app

Open http://127.0.0.1:8000/. The one-time admin password is printed in clear text in a FIRST START block in the container logs on first startup. You must change this password when you first log in.

Settings are stored in data/rct.db, encrypted and authenticated with HMAC_SECRET from settings.env (generated on a local start, required for Docker). Back up the database and the secret together. See Configuration⁠.

Documentation: https://gill-bates.github.io/rct-manager/⁠.

Container details are in docker/README_docker.md⁠.

If RCT Manager works well for you, please leave a star on GitHub⁠. If something is missing or does not work as expected, open an issue⁠.


Important

**Disclaimer:** This is an independent open-source project. It is not affiliated with, endorsed by or connected to RCT Power GmbH, Line-Eid-Str. 1, D-78467 Konstanz. "RCT Power" and related names are trademarks of their respective owners and are used only to describe compatibility.

⁠License

Released under the MIT License⁠. Third-party components retain their respective licenses.

Buy Me A Coffee ⁠

Tag summary

Content type

Image

Digest

sha256:fdac8f045…

Size

62 MB

Last updated

18 days ago

docker pull giiibates/rct-manager