EV-QA-Framework is an open-source machine learning framework for analyzing electric vehicle battery data. Whether you work with BMS telemetry, Tesla Model S/X logs, or just want to experiment with ML in the automotive domain — this tool covers the full pipeline from data ingestion to visualization.
Raw CAN bus data is noisy. The validation module checks:
from ev_qa_framework import QAFramework
qa = QAFramework()
report = qa.validate_telemetry("battery_data.csv")
print(report.summary())
Automatically finds outliers in battery telemetry — early indicators of cell degradation or defects:
from ev_qa_framework.analysis import BatteryAnomalyDetector
detector = BatteryAnomalyDetector(contamination=0.05)
anomalies = detector.fit_predict(telemetry_data)
detector.visualize()
The visualization highlights points where battery behavior deviates from normal patterns — critical for predictive diagnostics.
Predicts State of Health (remaining capacity) from historical charge/discharge cycles:
from ev_qa_framework.soh_predictor import SOHPredictor
predictor = SOHPredictor(seq_length=50)
predictor.train(charging_cycles)
predicted_soh = predictor.predict(current_data)
print(f"Predicted SOH: {predicted_soh:.1f}%")
The model supports export for embedded deployment.
Test your pipeline without hardware — generates realistic battery telemetry:
from ev_qa_framework.can_bus import CANEmulator
from ev_qa_framework.config import TESLA_MODEL_S_CONFIG
emulator = CANEmulator(config=TESLA_MODEL_S_CONFIG)
for frame in emulator.stream(frequency=10):
dashboard.update(frame)
Supports custom load profiles via settings.yaml
.
Built with FastAPI — real-time telemetry visualization out of the box:
docker compose up -d
pip install ev-qa-framework
python quickstart.py
The dashboard shows temperature, voltage, SOC graphs, and detected anomalies.
pip install ev-qa-framework
python -c "
from ev_qa_framework import QAFramework
qa = QAFramework()
qa.quickstart()
"
Or with Docker:
docker pull ghcr.io/remontsuri/ev-qa-framework:latest
docker compose up
MIT licensed. Contributions, issues, and discussions are welcome.