pyskyrc
Pure-Python control and telemetry for SkyRC Q200neo / T1000 chargers via USB HID and Bluetooth LE.
Reverse-engineered from the official Charge Master 1.55.E207 protocol. No Charge Master or SkyRC app required.
Features
- Two transports — USB HID and BLE with the same Python API.
- 4 ports — A / B / C / D, each with independent telemetry.
- Live cells — 6 × cell voltage, temperature, total V, delta.
- Full control — START / STOP charge with full parameter set.
- All chemistries — LiPo, LiIo, LiFe, LiHV, NiMH, NiCd, Pb.
- Auto-discovery (BLE) — finds the charger by service UUID.
- MAC cache — fast reconnect after first successful session.
- Interactive shell — one connection, many commands.
- Pure Python — only
bleakneeded for BLE; USB has no deps.
Install
pip install pyskyrc
pip install pyskyrc[ble]
pip install pyskyrc[ble,dev]
CLI
USB
pyskyrc info
pyskyrc status
pyskyrc monitor
pyskyrc start B --chem LiPo --cells 6 --current 2.0
pyskyrc stop B
BLE
pyskyrc --transport ble scan
pyskyrc --transport ble status
pyskyrc --transport ble start B --chem LiPo --cells 6 --current 2.0
pyskyrc --transport ble stop B
Interactive shell
pyskyrc --transport ble shell
Then inside the shell:
pyskyrc> status
pyskyrc> start B --chem LiPo --cells 6 --current 2.0
pyskyrc> monitor
pyskyrc> stop B
pyskyrc> exit
Python API
from pyskyrc import (
SkyRCCharger, ChargeParameters, Port, Chemistry, LiMode,
)
with SkyRCCharger(transport="usb") as charger:
for port, info in charger.read_telemetry().items():
if info.has_battery:
print(port.name, info.total_v, info.temperature_c)
params = ChargeParameters(
chemistry=Chemistry.LiPo,
cells=6,
mode=LiMode.BALANCE_CHARGE,
charge_current_a=2.0,
)
charger.start_charge(Port.B, params)
charger.stop_charge(Port.B)
For BLE, replace transport="usb" with transport="ble".
Protocol
Full protocol documentation is in docs/protocol.md.
Safety
This library controls a real charger with real current. You are responsible for choosing a chemistry and cell count that match your battery, choosing safe currents, and not leaving charging unattended.
License
MIT License — Copyright (c) 2026 Andreev Ivan.
See LICENSE for full text.
Author
Andreev Ivan — 2026
Metadata
Release files for pyskyrc 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyskyrc-0.3.1.tar.gz | 26.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyskyrc-0.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 54.1 kB
Release files / pyskyrc-0.3.1.tar.gz
| Download URL | pyskyrc-0.3.1.tar.gz |
|---|---|
| Size | 26.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
881be6a6d8df23efe01e446c43362b5197dc70c6b34c7f98f2a7d05d02067aaf
|
|
BLAKE2b-256 checksum How to use checksums |
89ab41ccd18a00a2629757bbeebfa142507e4d246ffa1fd37610ca6b760849a7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.
Transparency logRelease files / pyskyrc-0.3.1-py3-none-any.whl
| Download URL | pyskyrc-0.3.1-py3-none-any.whl |
|---|---|
| Size | 27.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e2779091c0c5b7dac5fc573da1258c10b577f9e308e26434ed4a042e649b6c23
|
|
BLAKE2b-256 checksum How to use checksums |
b2dae6536695afd0660375280990e0af38273f5af79ff19045099b45ed254689
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.
Transparency log