docs: README and CHANGELOG for v0.1.0

This commit is contained in:
naps62
2026-05-27 15:54:12 +00:00
parent 3941cca46c
commit a6336d6f36
2 changed files with 59 additions and 8 deletions
+2 -2
View File
@@ -1,6 +1,6 @@
# Changelog
## [Unreleased]
## [0.1.0] - 2026-05-27
### Added
- Initial implementation
- Initial release: solar/dinner/night sub-modes, two SOC targets, safety fallback.
+57 -6
View File
@@ -4,15 +4,66 @@ A Home Assistant custom integration that dynamically sets your EV's charge curre
## Features
- Solar-tracking charge rate during the day
- Hard cap during dinner hours to avoid overloading
- Full-speed top-up during cheap-tariff night windows
- Two independent SOC targets (day vs night) so you can hold for solar or top up from grid as desired
- Solar-tracking charge rate during the day, with a configurable "always make progress" SOC floor.
- Hard cap during dinner hours to avoid overloading your home during peak cooking loads.
- Full-speed top-up during cheap-tariff night windows, gated by a separate night SOC target.
- Two independent SOC targets so you can hold for tomorrow's solar or top up from grid.
- Force-min / force-max / off overrides for one-off situations.
- Safety fallback to a conservative 6 A if any required sensor goes stale.
## Installation
(filled in with the README content task)
### Via HACS (custom repository)
1. HACS → ⋮ → Custom repositories
2. Add `https://github.com/naps62/ha-ev-solar-charger` as category "Integration"
3. Install "EV Solar Charger"
4. Restart Home Assistant
5. Settings → Devices & Services → Add Integration → "EV Solar Charger"
### Manual
Copy `custom_components/ev_solar_charger/` into your HA config's `custom_components/` directory. Restart HA. Add the integration via Settings → Devices & Services.
## Configuration
(filled in with the README content task)
The config flow asks for:
- **Grid signal** — either a single signed sensor (positive = import) or a pair of `grid_import_w` + `grid_export_w` sensors.
- **EV consumption sensor** — W reading of the EV's actual draw (e.g. a Shelly EM on the EV circuit).
- **EV charge-current `number`** — the writable entity that sets the EV's charge amps.
- **EV charge `switch`** — the entity that starts/stops charging.
- **EV cable sensor** — binary sensor that reads `on` when plugged in.
- **EV battery SOC sensor** — percentage.
- **EV location tracker + home zone** — `device_tracker` and the zone name considered "home".
- **Solar production sensor** (optional) — for dashboard + install verification.
After setup, an "EV Solar Charger" device appears with these entities:
| Entity | Purpose |
|---|---|
| `number.ev_solar_charger_target_day_soc` | SOC to charge to during the day (solar-tracking) |
| `number.ev_solar_charger_target_night_soc` | SOC to charge to overnight (cheap tariff) |
| `select.ev_solar_charger_mode` | auto / force-min / force-max / off |
| `switch.ev_solar_charger_enabled` | master kill |
| `time.ev_solar_charger_dinner_start` | start of the dinner cap window |
| `time.ev_solar_charger_night_start` | start of the night cheap-tariff window |
| `sensor.ev_solar_charger_leftover_w` | current solar surplus available |
| `sensor.ev_solar_charger_desired_amps` | what the integration wants the EV to draw |
| `sensor.ev_solar_charger_actual_amps` | what the EV is actually set to |
| `sensor.ev_solar_charger_sub_mode` | solar / dinner / night / safety-fallback / disabled |
| `sensor.ev_solar_charger_last_decision_reason` | short human-readable trace |
| `binary_sensor.ev_solar_charger_healthy` | overall health |
## Tuning
| Tomorrow's plan | day target | night target |
|---|--:|--:|
| Sunny forecast, no trip | 50 % | 50 % |
| Cloudy forecast, no trip | 50 % | 80 % |
| Big trip tomorrow | 80 % | 100 % |
| Departing now | (use force-max) | (use force-max) |
## License
MIT