Skip to main content

A library for parsing Renogy BLE data

Project description

Renogy BLE

A Python library for parsing Bluetooth Low Energy (BLE) data from Renogy solar charge controllers.

Overview

Library for parsing raw BLE Modbus data from Renogy devices with BT-1 and BT-2 Bluetooth modules.

Currently supported devices:

  • Renogy Rover charge controllers

Installation

pip install renogy-ble

Usage

Basic usage example:

from renogy_ble import RenogyParser

# Raw BLE data received from your Renogy device
raw_data = b"\x00\x81\x00\xFA"  # Example data

# Parse the data for a specific model
parsed_data = RenogyParser.parse(raw_data, model="rover")

# Use the parsed data
print(parsed_data)
# Example output: {'battery_voltage': 129, 'pv_power': 250}

Features

  • Parses raw BLE Modbus data from Renogy devices
  • Extracts information about battery, solar input, load output, controller status, and energy statistics
  • Returns data in a flat dictionary structure
  • Returns raw values (no scaling or unit conversion)

Data Handling

Input Format

The library accepts raw BLE Modbus response bytes and requires you to specify the device model (e.g., model="rover").

Output Format

Returns a flat dictionary of raw values:

{
    "battery_voltage": 129,
    "pv_power": 250,
    "charging_status": "mppt"  # Mapped from numeric values where applicable
}

Extending for Other Models

The library is designed to be easily extensible for other Renogy models. To add support for a new model:

  1. Update the REGISTER_MAP in register_map.py with the new model's register mapping
  2. Create a new model-specific parser class in parser.py (if needed)
  3. Update the RenogyParser.parse() method to route to your new parser

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

renogy_ble-0.1.1.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

renogy_ble-0.1.1-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file renogy_ble-0.1.1.tar.gz.

File metadata

  • Download URL: renogy_ble-0.1.1.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.6

File hashes

Hashes for renogy_ble-0.1.1.tar.gz
Algorithm Hash digest
SHA256 058a16682069ff00e7d624b7cd991d665f47c049802768564688d1f8433fdd78
MD5 7302279aabf395fc8ab583c41ab1e4da
BLAKE2b-256 8016f25c179b7e90ce2239c6a5c2c884d23ffe30f0e70c8d11b17ac8c3b82311

See more details on using hashes here.

File details

Details for the file renogy_ble-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for renogy_ble-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4ff5f5334e5eb6ec4bb45ce5d034b1863efa442d11b8801236fc5086b629e17e
MD5 3c2c96a24888c4283a82424df2826b3d
BLAKE2b-256 1de86e683d2691e53fa7cfb1a475d7003e082a4d4918311fe74741eadb424063

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page