Skip to content

Minimum-SOC nur in 5%-Schritten erlauben (Venus OS Kompatibilität) #2

@meintechblog

Description

@meintechblog

Problem

Beim Setzen von "Minimum-SOC anpassen" akzeptiert DVHub aktuell offenbar auch Werte, die nicht durch 5 teilbar sind (z. B. 23, 27).

Auf Venus OS ist der Zielwert "SOC Mindestwert Entladung (außer bei Netzausfall)" jedoch nur in 5er-Schritten vorgesehen. Wird ein abweichender Wert von extern über DVHub geschrieben, wird der Sollwert nach Beobachtung nicht stabil übernommen und springt teilweise wieder auf ca. 20% zurück.

Warum das kritisch ist

  • Inkonsistenter Zustand zwischen DVHub und Venus OS
  • Nutzer sehen scheinbar "erfolgreiche" Eingabe, aber Device übernimmt nicht stabil
  • Kann zu falschem Betriebsverhalten führen (unerwartete SOC-Untergrenze)

Reproduktionsschritte

  1. In DVHub unter "Minimum-SOC anpassen" einen Wert setzen, der nicht durch 5 teilbar ist (z. B. 23%).
  2. Wert auf Venus OS beobachten (Feld: "SOC Mindestwert Entladung (außer bei Netzausfall)").
  3. Über Zeit/Refresh prüfen: Wert wird nicht korrekt gehalten bzw. springt auf einen anderen Wert (beobachtet: 20%).

Erwartetes Verhalten

  • DVHub erlaubt nur Werte in 5%-Schritten (0, 5, 10, ..., 100).
  • API/Backend validiert dieselbe Regel serverseitig.
  • Keine stillen inkonsistenten Writes.

Ist-Verhalten

  • Nicht-5er-Werte können zugespielt werden.
  • Zielwert wird auf Venus OS nicht zuverlässig verarbeitet/gehalten.

Lösungsvorschlag

UI

  • Input/Slider auf step=5 begrenzen.
  • Bei ungültigen Werten sofort klare Fehlermeldung anzeigen.

API/Backend (wichtig)

  • Harte Validierung: minSocPct % 5 === 0, Bereich 0..100.
  • Bei Verstoß 400 Bad Request mit verständlicher Meldung.
  • Optional: statt Reject konfigurierbare Rundungsstrategie (default: reject), falls gewünscht.

Readback/UX

  • Nach Write den echten Venus-Readback anzeigen und als Truth Source verwenden.
  • Wenn Gerät den Wert korrigiert/verwirft, explizit Hinweis im UI.

Akzeptanzkriterien

  • Nicht-5er-Werte werden in UI nicht auswählbar/eingabbar.
  • API lehnt Nicht-5er-Werte zuverlässig mit 400 ab.
  • 5er-Werte werden stabil übernommen und bleiben bestehen.
  • Regression-Test für Validierung + E2E-Write/Readback-Verhalten vorhanden.

Kontext: Es gibt bereits einen offenen PR zu VRM-Backfill-Verhalten (#1), dieses Thema ist davon unabhängig und betrifft die SOC-Minimum-Write-Validierung.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions