- Python 41.8%
- HTML 37%
- CSS 21%
- Dockerfile 0.1%
Fix: Increase WebSocket max_size to prevent 1009 frame too large error on large HA instances The initial websocket connection had a default 1MB frame size limit, which works fine for smaller Home Assistant instances. However, larger HA installs with many entities can exceed this limit during the get_states call, causing a 1009 error and failed connection: sent 1009 (message too big) frame exceeds limit of 1048576 bytes; no close frame received I've increased the limit to 16MB in services/hass_client.py which should cover the vast majority of HA instances. Potential future improvement: This could be made user-configurable via a .env variable (e.g. HA_WS_MAX_SIZE_MB=16) so users with exceptionally large instances can tune it themselves without touching the code. |
||
|---|---|---|
| .github/workflows | ||
| data | ||
| db | ||
| docs | ||
| scripts | ||
| tests | ||
| web | ||
| .dockerignore | ||
| .env.example | ||
| .gitignore | ||
| .nvmrc | ||
| .python-version | ||
| alembic.ini | ||
| CHANGELOG.md | ||
| config.py | ||
| docker-compose.dev.yml | ||
| docker-compose.yml | ||
| Dockerfile | ||
| entrypoint.sh | ||
| input.css | ||
| LICENSE | ||
| main.py | ||
| package-lock.json | ||
| package.json | ||
| pyproject.toml | ||
| README.md | ||
| uv.lock | ||
| zensical.toml | ||
LightningROD
Self-hosted charging analytics for Ford electric vehicles. Track charging sessions, analyze costs, and monitor energy consumption with a web-based dashboard.
Built for the Ford F-150 Lightning, but should work with any Ford EV.
Important
This is a work in progress. Do not use this as the only data storage.
Supports automatic data ingestion from Home Assistant via ha-fordpass, CSV import, and manual entry.
Note
This is my own personal project I am using it for a fun side project, and for learning.
"The goal is to make this adaptable for different users and data types, but much of it is tailored to my specific data and storage methods."
If you would like to, please consider buying me a coffee.
Documentation
Full documentation is available at the documentation site.
- Installation -- Docker Compose setup and startup
- Configuration -- Environment variables and in-app settings
- Data Import -- CSV format, seed script, classification rules
- Home Assistant -- Real-time FordPass data ingestion via WebSocket
- Development -- Running outside of the Docker enviornment with reloading and database access
- Architecture -- Project structure and patterns
- Database -- Schema, models, migrations
Acknowledgments
- ha-fordpass by marq24 -- Home Assistant integration for Ford vehicles
- fordpass-ha by itchannel -- Home Assistant integration that started this journey
- TeslaMate -- Inspiration for the project concept
Gallery
Screenshots are from v0.1.5 and may not be up to date
Session List and drawer
Cost Page
Energy Page
Settings Page
Quick Start
Docker Compose (recommended)
git clone https://github.com/yourusername/LightningROD.git
cd LightningROD
cp .env.example .env
# Edit .env -- at minimum, set a real POSTGRES_PASSWORD
docker compose up --build -d
The app will be available at http://localhost:8000. Migrations run automatically on startup.
Reference the full documentation site.






