Code for pi controlling multiple measurement devices

Silas Gruen 531287cd5c feat: enhance error handling for I2C and MQTT services; update config for I2C debug mode 6 달 전
.vscode e4a49ae89b ref: simplify project structure. Move path accordingly 9 달 전
config 531287cd5c feat: enhance error handling for I2C and MQTT services; update config for I2C debug mode 6 달 전
playgrounds 4603115b91 feat: add test methods for i2c play ground 6 달 전
src 531287cd5c feat: enhance error handling for I2C and MQTT services; update config for I2C debug mode 6 달 전
tests d5dfc70ada feat: add unittests for http, mqtt, measure_ctrl 8 달 전
.gitignore 4603115b91 feat: add test methods for i2c play ground 6 달 전
README.md 5969c0899d ref: adapt structure and update vs code workspace 10 달 전
main.py 4603115b91 feat: add test methods for i2c play ground 6 달 전
measure_ctrl.code-workspace e4a49ae89b ref: simplify project structure. Move path accordingly 9 달 전
pytest.ini d5dfc70ada feat: add unittests for http, mqtt, measure_ctrl 8 달 전
requirements.txt f5c5d5e1be feat: integrate Prometheus metrics for cell measurements and start metrics server 8 달 전
setup.py e4a49ae89b ref: simplify project structure. Move path accordingly 9 달 전

README.md

README.md

Battery Health Monitor

Overview

The Battery Health Monitor is a Python application designed to assess the health of 18650 lithium-ion cells using multiple measurement devices. The application communicates with the devices via I2C and provides an MQTT interface for real-time updates on cell insertion. It also supports HTTP GET requests to retrieve detailed information about the cells.

Features

  • Monitor the health of 18650 cells through multiple measurement devices.
  • Utilize I2C for reading current, voltage, and temperature data.
  • MQTT interface for receiving information about cell slots.
  • HTTP GET requests for querying cell data (max voltage, min voltage, capacity).
  • Configurable measurement cycles and C values.

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd battery-health-monitor
    
  2. Install the required packages:

    pip install -r requirements.txt
    

Usage

To run the application, execute the following command:

python src/main.py

Configuration

The configuration for the measurement devices can be found in /config/config.yaml. Modify this file to set the number of devices, cycle count, and C value for measurements.