Code for pi controlling multiple measurement devices

Silas Gruen e10467e050 fix: int type for insertion_callbacks in MQTTService пре 5 месеци
.vscode e4a49ae89b ref: simplify project structure. Move path accordingly пре 9 месеци
config 260e4fbac0 ref: update MQTT broker address and I2C polling interval; enhance docstring for inserted cell update пре 5 месеци
playgrounds 12965a5a56 fix: update I2C service and playground for new API пре 6 месеци
src e10467e050 fix: int type for insertion_callbacks in MQTTService пре 5 месеци
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.