From 80d73e8afd24ade0dd0001543679d24aa7cfd086 Mon Sep 17 00:00:00 2001 From: Tobi G Date: Thu, 27 Aug 2026 21:01:57 +0200 Subject: [PATCH] =?UTF-8?q?Fahrten:=20Verbrauch-N=C3=A4herung,=200V-Zustan?= =?UTF-8?q?dsanzeige=20gefiltert,=20Plausibilit=C3=A4tsgrenze=20f=C3=BCr?= =?UTF-8?q?=20die=20Live-Vervollst=C3=A4ndigung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Verbrauch (l/100km) war bislang totes Schema - kein Codepfad füllte verbrauch_l_100km je. Jetzt aus der Literstand-Differenz (TANK_LITER_SENSOR) über die Distanz genähert, live und beim Import, in beiden Frontends. Die "Zustand"-Kachel zeigte die Batteriespannung ungefiltert direkt vom Sensor, unabhängig von der Plausibilitätsgrenze der Verlaufsaufzeichnung - ein Sensorausreißer (0V) zeigte sich dort weiterhin, obwohl die Messwertliste ihn längst verwarf. Dieselbe Grenze gilt jetzt auch für diesen Anzeigepfad. Reale Fahrtendaten zeigten eine Fahrt mit 22km in 67s (~1180 km/h) - die Live-Vervollständigung (screening.py) hatte anders als der Import keine Plausibilitätsprüfung der Durchschnittsgeschwindigkeit. Jetzt gemeinsam in verlauf.py (UNPLAUSIBLE_KMH/durchschnitt_kmh) für beide Pfade. Dabei einen zweiten echten Bug gefunden: _fahrt_screenen() zog sein Ergebnis nie ins In-Memory-Objekt nach (nur in die Ablage) - eine im selben Durchlauf gerade erst ermittelte Distanz blieb für spätere Schritte (z. B. Verbrauch) bis zum nächsten Screening unsichtbar. Beide Stellen jetzt behoben. Co-Authored-By: Claude Sonnet 5 --- AGENTS.md | 175 ++++++++++++++++++ companion-app/src/api/types.ts | 4 + companion-app/src/screens/FahrtDetail.tsx | 5 + .../audi_dashboard/fahrterkennung.py | 1 + .../audi_dashboard/frontend/app/bundle.json | 2 +- .../audi_dashboard/frontend/app/bundle.zip | Bin 235510 -> 235579 bytes .../frontend/audi-dashboard-app.js | 2 +- .../audi_dashboard/historienimport.py | 52 +++--- .../audi_dashboard/manifest.json | 2 +- custom_components/audi_dashboard/screening.py | 76 +++++++- custom_components/audi_dashboard/verlauf.py | 39 ++++ .../audi_dashboard/veroeffentlichung.py | 16 +- 12 files changed, 344 insertions(+), 30 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index a8f35a8..0472845 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -3267,6 +3267,181 @@ measured 736×170px at a 1400px viewport (Y-scale exactly `1`), axis label `getC `tsc --noEmit` clean. Manifest bumped to `2026.8.27.5`, `npm run ota` rerun, `audi_ha_test` restart confirmed clean via log. +**Fourth follow-up (2026.8.27.6): the real gap behind the `.5` "0V on the real instance" report - a second, +unfiltered publish path, not (only) stale/not-yet-updated data.** Owner report: "Mein Audi/Zustand Box" +still shows `Batteriespannung 0,0V`, while the Batterie-Messwerte list has no such entry. Traced to a second +code path that was never touched by the `SPANNUNG_MIN_V` floor at all: `veroeffentlichung.py`'s +`fahrzeugstatus()` publishes `batteriespannung` as the **raw, unfiltered current `BATTERIE_SENSOR` reading** +(`_zu_zahl(zustand_oder_none(...))`), completely independent of `batterie.py`'s history-recording path that +the floor actually guards. The panel's "Zustand" tile (`audi-dashboard-app.js` ~line 1611) and +companion-app's `MeinAudi.tsx`/`Batterie.tsx` "Aktuell gemeldet" line all read this same published field +directly - so a live sensor glitch (confirmed live: the test container's `BATTERIE_SENSOR` was genuinely +reporting raw state `"0"`) always showed through unfiltered there, in both codebases, regardless of whether +the instance had ever been updated. Fixed by applying the identical floor to this publish too: `spannung = +None` when the raw reading is below `SPANNUNG_MIN_V`, so "Zustand"/`Aktuell gemeldet` now show "unbekannt"/ +"—" for the same implausible readings the history path already silently drops - one backend fix covers both +frontends, since both read the same published field. Needed a **function-local** import of `SPANNUNG_MIN_V` +from `batterie.py` (not a module-level one): `batterie.py` already imports `zustand_oder_none` from +`veroeffentlichung.py`, so a top-level import the other direction risks a circular-import failure depending +on load order (batterie.py reaches its own `from .veroeffentlichung import zustand_oder_none` line *before* +its `SPANNUNG_MIN_V = 10.0` assignment, so an eager reverse import can hit a partially-initialized module). +A local import inside `fahrzeugstatus()` sidesteps this entirely - both modules are always fully loaded by +the time that function actually runs. Verified live: a real Docker Desktop outage interrupted this fix +mid-session (confirmed via `docker ps` failing, unrelated to the code) - resumed once Docker was back. +`py_compile` clean, `audi_ha_test` restart confirmed clean via log **with no circular-import traceback** +(the actual proof this pattern needed, `py_compile` alone can't catch an import-order bug), and live in the +browser: raw sensor confirmed still reporting `"0"` via a direct state query, "Zustand" tile now reads +"Batteriespannung unbekannt" instead of "0,0 V". No companion-app source changes this round (backend-only +fix), so no OTA rebuild needed. Manifest bumped to `2026.8.27.6`. + +## V. Per-trip Verbrauch (l/100 km): dead schema closed with a liter-based approximation, real-sensor +question left open (2026.8.27.7) + +**The trip detail's "Verbrauch" row (`fahrtVerbrauch()`, `audi-dashboard-app.js`) always showed "liegt nicht +vor" - traced (owner asked "why is it so? what sensor are you waiting for?") to `t.verbrauch_l_100km` being +dead schema exactly like `start_lat`/`route` were before section U: it existed **only** in the frontend, no +backend code path (live or import) had ever written it, and no Setup-mappable sensor role existed for it +either. The "vom Fahrzeug gemeldet" caption was aspirational leftover, not a description of anything actually +wired up.** + +**Owner's decision, to close this properly rather than just deleting the dead row:** two options exist - +(a) the FMM003 might expose a genuine short-trip l/100km value directly over OBD (the owner is checking), or +(b) compute an approximation from `TANK_LITER_SENSOR`'s liter-delta over the trip ÷ distance. Built (b) now +as the working default, with (a) tracked as an explicit follow-up: **if a real short-trip consumption sensor +turns up, swap to it directly instead of this approximation** - noted here rather than only in a chat +message, per this file's own "state changes, note it" maintenance rule. + +**Implementation**, mirroring the existing `route_aus_verlauf()`/position-screening pattern from section U +for the exact same reason (live vs. import parity, no duplicated math): new +`verbrauch_aus_literstaenden(start_liter, end_liter, distance_km)` in `verlauf.py` - `None` unless both liter +readings and a positive distance are available *and* the liter level actually fell (a level that rose or held +steady means a mid-trip refuel or noise, not a meaningful ratio). `verbrauch_l_100km` added to the trip schema +(`leere_fahrt()`, was entirely absent before). Live path: new `_verbrauch_screenen()` in `screening.py`, +wired into `durchfuehren()` exactly like `_position_screenen()` - runs whenever `TANK_LITER_SENSOR` is mapped, +re-attempted on every screening pass until it succeeds (liter data can lag just like odometer/GPS data). +Import path: `_fahrten_importieren()` in `historienimport.py` computes it inline from the already-fetched +`verlaeufe["tank_liter"]` history (was fetched for tank-refill import already, just never used for this). +Both frontends: panel's caption changed from the false "vom Fahrzeug gemeldet" to "Näherung aus +Tankfüllstand"; companion-app's `FahrtDetail.tsx` had **no Verbrauch row at all before this** (a pre-existing +parity gap, not something this change broke) - added one in the same position as the panel's (after +"Durchschnitt"), same honest caption, `verbrauch_l_100km` added to the `Fahrt` type (was typed `unknown` +nowhere - simply absent). + +**A second, real bug found and fixed while live-testing this: `_fahrt_screenen()` (the existing odometer +screening, unchanged by this feature) never synced its result back onto the in-memory `fahrt` dict, only into +storage.** `_vollstaendig()` only ever wrote `distance_km`/`km_quelle`/`status` into a local `aenderungen` +dict, which `_fahrt_screenen()` then persisted via `fahrt_aktualisieren()` - but never applied to the `fahrt` +object itself, unlike `_position_screenen()`, which already does `fahrt.update(aenderungen)` for exactly this +reason. Consequence: when a trip's distance was computed for the first time and the *same* `durchfuehren()` +pass then reached the new `_verbrauch_screenen()` step, the `ohne_verbrauch` filter still saw the stale +`distance_km: None` from the `fahrten` list fetched at the top of the function - `verbrauch_l_100km` silently +stayed unfilled for one whole screening cycle, only catching up on the *next* trigger. Fixed by adding the +same `fahrt.update(aenderungen)` to `_fahrt_screenen()`, matching `_position_screenen()`'s already-correct +pattern - found by reproducing it directly (a trip's `distance_km` and `verbrauch_l_100km` both stayed empty +after the first screening pass, filled in only after a second explicit trigger) rather than by reading the +code and guessing. + +Verified: `py_compile` clean on all five touched backend files (incl. this `screening.py` fix), `node --check` +clean on the panel JS, companion-app `tsc --noEmit` clean and full suite green at 146/146. Live end-to-end in +`audi_ha_test` (`TANK_LITER_SENSOR` was already mapped to the container's real +`sensor.testcar_b9_fmm003_testintegratoin_can_fuel_volume`, liters - no Setup change needed): ran a synthetic +20.0→19.0 l trip over a simulated 10 km, confirmed `verbrauch_l_100km: 10.0` computed correctly and rendered +on the panel's trip detail ("10,0 l/100 km · Näherung aus Tankfüllstand", screenshot taken). companion-app's +`FahrtDetail` row was **not** live-rendered this round (no running dev server connected to a backend this +session) - verified only via `tsc --noEmit` and the full test suite, same as several other companion-app-only +changes this session. + +**Separately, while pulling data for this: found the container's `ZUENDUNG_SENSOR` mapping had changed since +last checked** - now `binary_sensor...engine_ignition_or_acc_status` (stable, no chattering observed) instead +of the `instant_movement_status` entity used earlier this session, which **was** flapping on/off dozens of +times per minute (test-integration noise, unrelated to any real vehicle behavior). The owner had reconfigured +the Setup mapping themselves in the meantime. Confirms this container's synthetic test entities remain +unrelated to the owner's real-vehicle trip-merging report from the same day (section P/the "no clean +ignition-off signal" conversation) - it needs the real instance's own history, not this container's. + +Manifest bumped to `2026.8.27.7`, `npm run ota` rerun (companion-app source changed). + +## W. Correction: `audi_ha_test` is connected to the real vehicle, not synthetic data - and the real +trip-merging/GPS-jump report, root-caused with real data (2026.8.27.8) + +**Correction to sections U and V above: the owner confirmed `audi_ha_test` (this session's "test container") +receives live telemetry from the real car/real FMM003 - the same sensors are wired into both this container +and the real HA instance in parallel.** Both prior sections state the opposite ("synthetic test-integration +noise", "unrelated to the owner's real-vehicle... report") - that was wrong, and this project's own +convention is to correct rather than silently rewrite history, so it stays here rather than editing U/V after +the fact. The erratic on/off chatter observed on `instant_movement_status` earlier the same day is real +telemetry from a real accelerometer/movement-based signal, not fabricated test noise - see below for what it +actually means. **The owner also confirmed creating synthetic test trips in this container (as done +throughout sections R-V) remains fine** - it's a secondary instance fed by the same sensors, not the sole +copy of their trip history, so the established "simulate via `hass.callApi` POST states, verify, clean up +afterward" testing convention stands unchanged going forward. + +**With that corrected, the real trip-merging/GPS-jump report (originally raised in section P's conversation) +was root-caused directly from this container's real recorder history - no separate pull from a "production" +instance was needed after all, since this *is* that instance's real data.** Matched the owner's report +exactly once UTC/local (`CEST = UTC+2`) is accounted for: + +- `t-da363d681915` (`09:55:31`–`12:05:01` UTC = **11:55–14:05 local**) - the wrongly-merged trip. +- `t-8be105166025` (`12:28:05`–`12:29:12` UTC = **14:28–14:29 local**), `distance_km: 22.0` over 67 seconds + (~1180 km/h) - the "GPS jumps 22 km" report. + +**Root cause of the merge, confirmed from the raw history (not the "unavailable-instead-of-off" hypothesis +originally guessed in section P's conversation):** `instant_movement_status` (mapped as `ZUENDUNG_SENSOR` at +the time) reported sustained, unbroken `on` for 45–64-minute stretches with zero transitions - including +straight through the ~30-minute real stop the owner described around `10:22` UTC, with no `off` at all during +it. Where it did flip `off`, it almost always flipped back `on` within milliseconds to a couple of seconds, +so the 15-minute pause-close logic (`fahrterkennung.py`) never got an uncanceled window to actually end the +trip - every near-instant `on` cancels the pending close (`k.warte_ende_ab_abbrechen()`, correct behavior in +isolation) before the wait can complete. No `unavailable` states appeared anywhere in the relevant window, so +the section P dropout-hypothesis genuinely doesn't apply to this specific incident. The entity itself is the +problem: a real-time movement/accelerometer heuristic, not a debounced ACC/ignition state - it can both +chatter during genuine driving *and* fail to register a genuine stop. **The owner had already fixed this +independently by remapping `ZUENDUNG_SENSOR` to `engine_ignition_or_acc_status`** (confirmed stable, no +chatter, when checked) - the correct fix; nothing further needed there from this end. + +**The GPS-jump trip (`t-8be105166025`) is a second, related but distinct defect: the live trip-completion +path had no plausibility guard on computed average speed at all.** `historienimport.py` already had one +(`UNPLAUSIBLE_KMH = 300`, added 2026-08-25/section P) for exactly this failure mode - a real 22 km drive +whose *actual* duration was much longer than 67 seconds, but whose recorded trip window got compressed by the +chattering ignition entity creating a spuriously short boundary, while `naechster_wert()`'s odometer lookup +still (correctly, on its own terms) found the real km delta nearest those wrong timestamps. `screening.py` +(the live path) never got the equivalent guard - a gap already flagged as open in section P but not built +until now. Fixed by moving the check into a shared home: `UNPLAUSIBLE_KMH` and a new `durchschnitt_kmh()` +helper now live in `verlauf.py` (both `screening.py` and `historienimport.py` import them, no more duplicated +constant), and `screening.py`'s `_vollstaendig()` - the single choke point both `_fahrt_screenen()` and +`_lueckenlos_verketten()` already funnel through - now rejects (not just the distance, both `odo_start` *and* +`odo_end`) whenever the implied average speed exceeds the limit, logs a warning, and leaves the trip `offen` +to be retried on the next screening pass, exactly matching how `historienimport.py` already handles this +class of error. + +**The two already-broken real trip records were deliberately left untouched** - they're the owner's real +driving history, not disposable test data (see the correction above), so fixing/deleting them is the owner's +call via the app's own edit/delete controls, not something to do unilaterally from this session. + +**Owner then confirmed synthetic trips in this container remain fine** (same sensors feed both this +container and the real instance in parallel, this one is not the sole copy of trip history) **- and drew a +hard line that stays for the rest of this project: `audi_ha_test`/`:18123` is the only instance ever to be +touched; the real instance is never to be worked on, full stop.** Attempted a live end-to-end repro of the +exact bug (POSTed a fake +22 km jump over ~8 s, same recipe used successfully for the position/verbrauch +features earlier this session) - and hit a new, worth-remembering limitation: **the real FMM003/flespi +integration re-asserts its own live odometer reading shortly after a manual `POST /api/states` write**, so +the simulated +22 km value never actually landed in the recorder at all (confirmed via a direct history +query - only the real, unchanged ~21324 km value ever appears). This container's earlier "first screening +pass runs before the recorder commits" races (sections R/S) may have partly been this same effect rather than +pure commit latency - a real competing writer, not just replay timing. **Consequence for future sessions:** +simulating a *specific* sensor value in this container is unreliable for entities the real FMM003 actively +reports (ignition, odometer, GPS, tank) - it can work if the value is posted right before the dependent +event fires (as it did for the position/verbrauch tests), but don't assume a posted value will still be there +moments later if the real device happens to report in the meantime. + +Fell back to the same no-live-state verification as the first pass: `py_compile` clean on all three touched +backend files, `audi_ha_test` restart confirmed clean via log (single `audi_dashboard` loader warning, no +duplicate-domain regression), and the plausibility math verified by calling `durchschnitt_kmh()` directly +against the real bug's own numbers (no HA state involved): `durchschnitt_kmh(22.0, 67)` → `1182.1` km/h, +correctly exceeding `UNPLAUSIBLE_KMH=300` and therefore now rejected; a real plausible drive +(`durchschnitt_kmh(22.0, 1200)` → `66.0` km/h) correctly passes through unaffected. No companion-app source +changes this round (backend-only). Manifest bumped to `2026.8.27.8`. + --- ## Working conventions (observed — keep them) diff --git a/companion-app/src/api/types.ts b/companion-app/src/api/types.ts index 15dd683..c521b90 100644 --- a/companion-app/src/api/types.ts +++ b/companion-app/src/api/types.ts @@ -56,6 +56,10 @@ export interface Fahrt { start_address?: string | null; end_address?: string | null; route?: [number, number][] | null; + /** Näherung aus der Literstand-Differenz (TANK_LITER_SENSOR) ÷ Distanz, kein + * vom Fahrzeug selbst für diese eine Fahrt gemeldeter Wert - siehe + * verbrauch_aus_literstaenden() im Backend. */ + verbrauch_l_100km?: number | null; pausen?: unknown[]; } diff --git a/companion-app/src/screens/FahrtDetail.tsx b/companion-app/src/screens/FahrtDetail.tsx index 99e7b89..38d28a9 100644 --- a/companion-app/src/screens/FahrtDetail.tsx +++ b/companion-app/src/screens/FahrtDetail.tsx @@ -90,6 +90,11 @@ export function FahrtDetail({ id }: { id: string | undefined }) { : "—" } /> + } /> diff --git a/custom_components/audi_dashboard/fahrterkennung.py b/custom_components/audi_dashboard/fahrterkennung.py index 294994d..041067c 100644 --- a/custom_components/audi_dashboard/fahrterkennung.py +++ b/custom_components/audi_dashboard/fahrterkennung.py @@ -52,6 +52,7 @@ def leere_fahrt(start_ts: datetime.datetime, ende_ts: datetime.datetime, quelle: "odo_start": None, "odo_end": None, "avg_speed_kmh": None, + "verbrauch_l_100km": None, "start_lat": None, "start_lon": None, "end_lat": None, diff --git a/custom_components/audi_dashboard/frontend/app/bundle.json b/custom_components/audi_dashboard/frontend/app/bundle.json index 3f3108e..0d874b9 100644 --- a/custom_components/audi_dashboard/frontend/app/bundle.json +++ b/custom_components/audi_dashboard/frontend/app/bundle.json @@ -1 +1 @@ -{"version":"2026.8.27.5","sha256":"8d63b052bdcf4cf2eabd5a01f525fc25c4ab8eea30327dc3b8cbd0db2feb05ed","bytes":235510,"gebaut":"2026-08-27T16:30:48Z"} \ No newline at end of file +{"version":"2026.8.27.7","sha256":"4631011c09be09efcdf787ba86ad1bd1fb40006f0d247e8b99b29b0a196f2da3","bytes":235579,"gebaut":"2026-08-27T17:32:23Z"} \ No newline at end of file diff --git a/custom_components/audi_dashboard/frontend/app/bundle.zip b/custom_components/audi_dashboard/frontend/app/bundle.zip index 9b644a16c86276d90ee3a4374b8677b53b6a7d36..90ab108c35c8c4dc26776a2f8091c6cb54b090cc 100644 GIT binary patch delta 86527 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%0ATg)-30?VyDC> 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�N;lK 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 KULNT0qJIIuBG$41 delta 86440 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 z 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�o23yE!Qf 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

Startkilometer
${t.odo_start != null ? de(t.odo_start) + " km" : "noch offen"}
Endkilometer
${t.odo_end != null ? de(t.odo_end) + " km" : "noch offen"}
Dauer
${dauerText(t.duration_s)}
-
Verbrauch
${fahrtVerbrauch(t) != null ? de(fahrtVerbrauch(t), 1) + " l/100 km" : "liegt nicht vor"}vom Fahrzeug gemeldet
+
Verbrauch
${fahrtVerbrauch(t) != null ? de(fahrtVerbrauch(t), 1) + " l/100 km" : "liegt nicht vor"}Näherung aus Tankfüllstand
diff --git a/custom_components/audi_dashboard/historienimport.py b/custom_components/audi_dashboard/historienimport.py index af15a3f..99aa774 100644 --- a/custom_components/audi_dashboard/historienimport.py +++ b/custom_components/audi_dashboard/historienimport.py @@ -44,7 +44,16 @@ from typing import TYPE_CHECKING from .batterie import SPANNUNG_MIN_V from .fahrterkennung import leere_fahrt, pausenzeit_sekunden from .tankerkennung import LITER_SCHWELLE, leerer_tankvorgang, schwelle_prozent -from .verlauf import Verlaufspunkt, route_aus_verlauf, verlauf_lesen, wert_bei, zahl +from .verlauf import ( + UNPLAUSIBLE_KMH, + Verlaufspunkt, + durchschnitt_kmh, + route_aus_verlauf, + verbrauch_aus_literstaenden, + verlauf_lesen, + wert_bei, + zahl, +) if TYPE_CHECKING: from .koordinator import Koordinator @@ -61,14 +70,11 @@ TANK_DUBLETTE_MIN = 90 # fluten sie den Bestand aber mit Nulleinträgen. Bewusst konservativ. MINDESTDAUER_S = 60 -# Kein Auto dieser Art erreicht diesen Schnitt. Eine errechnete -# Durchschnittsgeschwindigkeit darüber ist kein Beleg für eine schnelle -# Fahrt, sondern für einen fehlerhaften Kilometerstand-Sprung am Fahrtrand -# (z. B. ein Ausreißer im Verlauf oder ein knapp daneben liegender -# wert_bei()-Treffer über eine Lücke hinweg). Die Strecke wird dann verworfen -# statt eine physikalisch unmögliche Fahrt anzuzeigen - die Fahrt bleibt -# "offen", genau wie bei fehlendem Kilometerstand. -UNPLAUSIBLE_KMH = 300 +# UNPLAUSIBLE_KMH selbst lebt in verlauf.py - gemeinsam mit screening.py, das +# dieselbe Prüfung seit 2026.8.27 auch für die Live-Vervollständigung nutzt +# (siehe dortiges _vollstaendig()). Die Strecke wird dann verworfen statt +# eine physikalisch unmögliche Fahrt anzuzeigen - die Fahrt bleibt "offen", +# genau wie bei fehlendem Kilometerstand. def als_zeit(wert: object) -> datetime.datetime | None: @@ -150,6 +156,7 @@ async def _fahrten_importieren(k: Koordinator, verlaeufe: dict) -> dict: km_verlauf = verlaeufe["km"] lat_verlauf = verlaeufe["lat"] lon_verlauf = verlaeufe["lon"] + tank_liter_verlauf = verlaeufe["tank_liter"] angelegt = uebersprungen = zu_kurz = 0 neue: list[dict] = [] @@ -169,19 +176,17 @@ async def _fahrten_importieren(k: Koordinator, verlaeufe: dict) -> dict: if odo_start is not None and odo_end is not None and odo_end >= odo_start: distanz = round(odo_end - odo_start, 1) - durchschnitt = None - if distanz is not None and dauer_s > 0: - durchschnitt = round(distanz / (dauer_s / 3600.0), 1) - if durchschnitt > UNPLAUSIBLE_KMH: - _LOGGER.warning( - "Kilometerstand für Fahrt %s bis %s verworfen: unmögliche %s km/h " - "im Schnitt (%s km in %s s) - vermutlich ein Ausreißer im Verlauf. " - "Die Fahrt wird trotzdem angelegt, bleibt aber ohne Strecke.", - f_start.isoformat(), f_ende.isoformat(), durchschnitt, distanz, dauer_s, - ) - distanz = None - odo_start = odo_end = None - durchschnitt = None + durchschnitt = durchschnitt_kmh(distanz, dauer_s) + if durchschnitt is not None and durchschnitt > UNPLAUSIBLE_KMH: + _LOGGER.warning( + "Kilometerstand für Fahrt %s bis %s verworfen: unmögliche %s km/h " + "im Schnitt (%s km in %s s) - vermutlich ein Ausreißer im Verlauf. " + "Die Fahrt wird trotzdem angelegt, bleibt aber ohne Strecke.", + f_start.isoformat(), f_ende.isoformat(), durchschnitt, distanz, dauer_s, + ) + distanz = None + odo_start = odo_end = None + durchschnitt = None fahrt = leere_fahrt(f_start, f_ende, "import") fahrt.update({ @@ -195,6 +200,9 @@ async def _fahrten_importieren(k: Koordinator, verlaeufe: dict) -> dict: "end_lat": wert_bei(lat_verlauf, f_ende), "end_lon": wert_bei(lon_verlauf, f_ende), "route": route_aus_verlauf(lat_verlauf, lon_verlauf, f_start, f_ende), + "verbrauch_l_100km": verbrauch_aus_literstaenden( + wert_bei(tank_liter_verlauf, f_start), wert_bei(tank_liter_verlauf, f_ende), distanz + ), "status": "vollständig" if distanz is not None else "offen", }) neue.append(fahrt) diff --git a/custom_components/audi_dashboard/manifest.json b/custom_components/audi_dashboard/manifest.json index f43d543..e9f2e5b 100644 --- a/custom_components/audi_dashboard/manifest.json +++ b/custom_components/audi_dashboard/manifest.json @@ -1,7 +1,7 @@ { "domain": "audi_dashboard", "name": "Audi Dashboard", - "version": "2026.8.27.5", + "version": "2026.8.27.8", "documentation": "https://gitea.nothaft.cloud/paul/audi-app/src/branch/main/README.md", "issue_tracker": "https://gitea.nothaft.cloud/paul/audi-app/issues", "codeowners": ["@paul"], diff --git a/custom_components/audi_dashboard/screening.py b/custom_components/audi_dashboard/screening.py index 7e9c49b..9bdc2e4 100644 --- a/custom_components/audi_dashboard/screening.py +++ b/custom_components/audi_dashboard/screening.py @@ -22,7 +22,14 @@ import datetime import logging from typing import TYPE_CHECKING -from .verlauf import naechster_wert, route_aus_verlauf, verlauf_lesen +from .verlauf import ( + UNPLAUSIBLE_KMH, + durchschnitt_kmh, + naechster_wert, + route_aus_verlauf, + verbrauch_aus_literstaenden, + verlauf_lesen, +) if TYPE_CHECKING: from .koordinator import Koordinator @@ -47,9 +54,30 @@ def _als_zeit(wert: str | None) -> datetime.datetime | None: def _vollstaendig(aenderungen: dict, fahrt: dict) -> dict: """Ergänzt Strecke, Quelle und Status, sobald beide Kilometerstände da sind. Eine Fahrt ist genau dann "vollständig", wenn ihre Strecke feststeht - - "offen" heißt nicht "unterwegs", sondern "Daten fehlen noch".""" + - "offen" heißt nicht "unterwegs", sondern "Daten fehlen noch". + + Verwirft eine physikalisch unplausible Durchschnittsgeschwindigkeit + (UNPLAUSIBLE_KMH) statt sie anzuzeigen, statt der bislang unbehandelten + Lücke gegenüber historienimport.py: eine falsch abgegrenzte Fahrt (z. B. + durch ein chatterndes Zündungssignal) kann sonst einen Kilometerstand- + Sprung wie "22 km in 67 s" als echte Strecke zeigen. Sowohl odo_start als + auch odo_end werden dann verworfen (nicht nur die Strecke) - die Fahrt + bleibt "offen" und wird beim nächsten Screening erneut versucht, statt + einen unmöglichen Wert dauerhaft zu speichern.""" if fahrt.get("odo_start") is not None and fahrt.get("odo_end") is not None: - aenderungen["distance_km"] = round(fahrt["odo_end"] - fahrt["odo_start"], 1) + distanz = round(fahrt["odo_end"] - fahrt["odo_start"], 1) + geschwindigkeit = durchschnitt_kmh(distanz, fahrt.get("duration_s")) + if geschwindigkeit is not None and geschwindigkeit > UNPLAUSIBLE_KMH: + _LOGGER.warning( + "Fahrt %s: Kilometerstand verworfen - unmögliche %s km/h im " + "Schnitt (%s km in %s s), vermutlich ein Ausreißer im " + "Verlauf oder eine falsch abgegrenzte Fahrt.", + fahrt.get("trip_id"), geschwindigkeit, distanz, fahrt.get("duration_s"), + ) + aenderungen["odo_start"] = None + aenderungen["odo_end"] = None + return aenderungen + aenderungen["distance_km"] = distanz aenderungen["km_quelle"] = "odometer" aenderungen["status"] = "vollständig" return aenderungen @@ -81,6 +109,15 @@ async def durchfuehren(k: Koordinator) -> None: for fahrt in ohne_position: await _position_screenen(k, lat_sensor, lon_sensor, fahrt) + tank_liter_sensor = k.zuordnung.werte.TANK_LITER_SENSOR + if tank_liter_sensor: + ohne_verbrauch = [ + f for f in fahrten + if f.get("verbrauch_l_100km") is None and f.get("distance_km") + ] + for fahrt in ohne_verbrauch: + await _verbrauch_screenen(k, tank_liter_sensor, fahrt) + await _lueckenlos_verketten(k) await k.fahrten_veroeffentlichen() @@ -115,7 +152,15 @@ async def _fahrt_screenen(k: Koordinator, km_sensor: str, fahrt: dict) -> None: if geaendert: aenderungen = {"odo_start": fahrt.get("odo_start"), "odo_end": fahrt.get("odo_end")} - await k.ablage.fahrt_aktualisieren(fahrt["trip_id"], _vollstaendig(aenderungen, fahrt)) + aenderungen = _vollstaendig(aenderungen, fahrt) + await k.ablage.fahrt_aktualisieren(fahrt["trip_id"], aenderungen) + # Das In-Memory-Objekt sofort mitziehen (nicht nur die Ablage) - sonst + # sehen spätere Schritte innerhalb desselben durchfuehren()-Laufs + # (z. B. _verbrauch_screenen(), das eine bekannte distance_km + # braucht) noch den alten Stand, obwohl die Strecke gerade erst in + # diesem Durchlauf ermittelt wurde. _position_screenen() macht das + # bereits genauso. + fahrt.update(aenderungen) async def _position_screenen( @@ -161,6 +206,29 @@ async def _position_screenen( fahrt.update(aenderungen) +async def _verbrauch_screenen( + k: Koordinator, tank_liter_sensor: str, fahrt: dict +) -> None: + """Trägt den Verbrauch (l/100 km) nach, sobald die Distanz feststeht und + der Tankfüllstand (Liter) das hergibt - siehe verbrauch_aus_literstaenden() + für die Näherung selbst und ihre Begrenzung.""" + start = _als_zeit(fahrt.get("ts_start")) + ende = _als_zeit(fahrt.get("ts_end")) + if start is None or ende is None: + return + + verlauf = await verlauf_lesen(k.hass, tank_liter_sensor, start - SUCHFENSTER, ende + SUCHFENSTER) + if not verlauf: + return + + verbrauch = verbrauch_aus_literstaenden( + naechster_wert(start, verlauf), naechster_wert(ende, verlauf), fahrt.get("distance_km") + ) + if verbrauch is not None: + await k.ablage.fahrt_aktualisieren(fahrt["trip_id"], {"verbrauch_l_100km": verbrauch}) + fahrt["verbrauch_l_100km"] = verbrauch + + async def _lueckenlos_verketten(k: Koordinator) -> None: """Fahrt-Ende(N) == Fahrt-Start(N+1), solange dazwischen nicht gefahren wurde. diff --git a/custom_components/audi_dashboard/verlauf.py b/custom_components/audi_dashboard/verlauf.py index c3afdb9..214fce0 100644 --- a/custom_components/audi_dashboard/verlauf.py +++ b/custom_components/audi_dashboard/verlauf.py @@ -85,6 +85,25 @@ def zahl(wert: object) -> float | None: return None +# Kein Auto dieser Art erreicht diesen Schnitt. Eine errechnete +# Durchschnittsgeschwindigkeit darüber ist kein Beleg für eine schnelle +# Fahrt, sondern für einen fehlerhaften Kilometerstand-Sprung am Fahrtrand +# (z. B. ein Ausreißer im Verlauf oder ein knapp daneben liegender +# wert_bei()/naechster_wert()-Treffer über eine Lücke hinweg). Gemeinsam für +# den Import (historienimport.py) und die Live-Vervollständigung +# (screening.py) - beide dürfen dieselbe Strecke nie unterschiedlich +# bewerten. +UNPLAUSIBLE_KMH = 300 + + +def durchschnitt_kmh(distanz_km: float | None, dauer_s: float | None) -> float | None: + """km/h aus Strecke und Dauer, oder None wenn eine der beiden fehlt oder + die Dauer nicht positiv ist.""" + if distanz_km is None or not dauer_s or dauer_s <= 0: + return None + return round(distanz_km / (dauer_s / 3600.0), 1) + + def wert_bei( verlauf: list[Verlaufspunkt], zeitpunkt: datetime.datetime ) -> float | None: @@ -134,6 +153,26 @@ def route_aus_verlauf( return punkte if len(punkte) >= 2 else None +def verbrauch_aus_literstaenden( + start_liter: float | None, end_liter: float | None, distance_km: float | None +) -> float | None: + """l/100km aus der Differenz zweier Literstände (TANK_LITER_SENSOR) und + der gefahrenen Strecke - eine Näherung, kein vom Fahrzeug selbst für + diese eine Fahrt gemeldeter Wert (ein solcher OBD-Sensor steht als + offener Punkt in AGENTS.md; taucht einer auf, ersetzt er diese Näherung). + + None, wenn einer der Werte fehlt, die Strecke nicht positiv ist, oder der + Literstand nicht gefallen ist (z. B. ein Tankvorgang während der Fahrt, + oder unveränderter Füllstand) - in beiden Fällen ist der Quotient nicht + aussagekräftig.""" + if start_liter is None or end_liter is None or not distance_km or distance_km <= 0: + return None + verbraucht = start_liter - end_liter + if verbraucht <= 0: + return None + return round(verbraucht / distance_km * 100, 1) + + def naechster_wert( zielzeit: datetime.datetime, verlauf: list[Verlaufspunkt] ) -> float | None: diff --git a/custom_components/audi_dashboard/veroeffentlichung.py b/custom_components/audi_dashboard/veroeffentlichung.py index 5a7208c..8988281 100644 --- a/custom_components/audi_dashboard/veroeffentlichung.py +++ b/custom_components/audi_dashboard/veroeffentlichung.py @@ -149,11 +149,25 @@ def fahrzeugstatus(hass: HomeAssistant, werte: Sensorzuordnung) -> dict: standort = _standort(hass, werte) + # Verzögerter Import (statt oben am Dateikopf): batterie.py importiert + # seinerseits zustand_oder_none aus diesem Modul - ein Import auf + # Modulebene würde bei bestimmter Ladereihenfolge zu einem + # Circular-Import-Fehler führen. Zum Zeitpunkt dieses Funktionsaufrufs + # sind beide Module immer schon vollständig geladen. + from .batterie import SPANNUNG_MIN_V + + spannung = _zu_zahl(zustand_oder_none(hass, werte.BATTERIE_SENSOR)) + if spannung is not None and spannung < SPANNUNG_MIN_V: + # Dieselbe Plausibilitätsgrenze wie beim Aufzeichnen (batterie.py) - + # sonst zeigt die "Zustand"-Kachel einen Wert, der im Messwertverlauf + # nie auftaucht, weil er dort schon verworfen wird. + spannung = None + return { "km": _zu_zahl(zustand_oder_none(hass, werte.KM_SENSOR)), "tankprozent": _zu_zahl(zustand_oder_none(hass, werte.TANK_SENSOR)), "reichweite_km": _zu_zahl(zustand_oder_none(hass, werte.RANGE_SENSOR)), - "batteriespannung": _zu_zahl(zustand_oder_none(hass, werte.BATTERIE_SENSOR)), + "batteriespannung": spannung, "gesichert": gesichert, "sicherheitscheck": sicherheitscheck, # Fährt das Fahrzeug gerade? Kommt aus derselben Zündungs-Entität, die