Neuer Profil-Chip im Header (alle Seiten): zeigt das zuletzt geladene bzw. gespeicherte Profil aus den neuen S3-State-Feldern profile/profDirty (S3 ab 5.1.1), „*" = seitdem geänderte Einstellungen. Antippen öffnet ein Schnellwahl-Overlay mit allen Profilen (aktives mit Häkchen und Akzentfarbe); ein Tap lädt direkt per loadProfile. Profile-Seite markiert das aktive Profil in der Liste. Bei älterer S3-Firmware bleibt der Chip unsichtbar. Version 1.0.13, Protokoll-Doku ergänzt. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
121 lines
9.3 KiB
Plaintext
121 lines
9.3 KiB
Plaintext
Version 1.0.13:
|
||
- Profil-Schnellwahl + Anzeige des aktiven Profils (braucht S3-Firmware ab 5.1.1):
|
||
- Neuer Profil-Chip im Header (auf allen Seiten sichtbar): zeigt das zuletzt geladene bzw.
|
||
gespeicherte Profil; ein „*" hinter dem Namen bedeutet, dass seitdem profil-relevante
|
||
Einstellungen geändert wurden. Lange Namen werden gekürzt; ohne bekanntes Profil
|
||
(oder mit älterer S3-Firmware) bleibt der Chip unsichtbar.
|
||
- Antippen des Chips öffnet die Profil-Schnellwahl: ein Overlay mit allen gespeicherten
|
||
Profilen, das aktive mit Häkchen und Akzentfarbe hervorgehoben. Ein Tap lädt das Profil
|
||
direkt (Toast bestätigt, Chip aktualisiert sich mit dem nächsten State) — zwei Berührungen
|
||
vom Dashboard zum Profilwechsel statt Umweg über die Profile-Seite.
|
||
- Profile-Seite: das aktive Profil wird in der Liste mit Häkchen-Symbol und Akzentfarbe
|
||
markiert.
|
||
|
||
Version 1.0.12:
|
||
- Verlauf-Chart: Flackernde Heizleistungs-Kurven in den großen Zeitfenstern behoben. Die
|
||
Dezimierung pickte pro Chart-Punkt ein Einzelsample, dessen Abtast-Raster mit jedem
|
||
Sekundentick um eine Position wanderte — die schnell schaltende Heizleistung (PWM)
|
||
sprang dadurch sichtbar zwischen zwei Kurvenbildern hin und her. Jetzt wird über den
|
||
gesamten Zeitabschnitt eines Chart-Punkts gemittelt: das Bild steht ruhig, und die
|
||
Leistungs-Kurve zeigt die tatsächliche mittlere Heizleistung statt zufälliger
|
||
Momentwerte. Im 2-min-Fenster (1 Sample je Punkt) ändert sich nichts.
|
||
|
||
Version 1.0.11:
|
||
- Verlauf-Seite ausgebaut (nur P4, keine S3-/Protokolländerung nötig):
|
||
- Umschaltbares Zeitfenster: Buttons „2 min / 10 min / 30 min / 60 min" in der Kopfzeile.
|
||
Intern läuft eine 1-s-Historie als Ringpuffer über volle 60 Minuten; das Chart zeigt
|
||
weiterhin 120 Punkte und dezimiert je Fenster. Dadurch ist beim Fensterwechsel der
|
||
komplette Verlauf sofort da (kein leeres Chart, kein Neuaufbau). Die Wahl wird P4-lokal
|
||
im NVS gespeichert und überlebt Neustarts.
|
||
- Gestrichelte Soll-Linien für Wasser und Dampf im Chart (Farbe der jeweiligen Kurve,
|
||
gedimmt). Die Y-Skala bezieht die Soll-Werte mit ein, damit die Linien im Bild liegen —
|
||
aber nur für Kreise, deren Ist-Kurve im Fenster sichtbar ist (ein kalter Dampfkessel
|
||
zieht die Skala nicht auseinander).
|
||
- Heizleistung zuschaltbar: Button „Leistung" blendet Duty-Cycle Wasser/Dampf als gedimmte
|
||
Zusatzkurven auf einer zweiten Achse (0–100 %) ein, inkl. Live-Legende. Einstellung
|
||
ebenfalls P4-lokal im NVS.
|
||
- Feinere Kurven: Die Temperatur-Historie wird jetzt in Zehntelgrad geführt und gezeichnet
|
||
(vorher ganzzahlig gerundet) — PID-Schwingungen um ±1 °C sind damit sauber ablesbar.
|
||
- Die ~29 KB Historie liegen im PSRAM (heap_caps_malloc, wie die LVGL-Framebuffer) —
|
||
als statische Arrays sprengten sie den internen RAM (Linker: 107 % belegt).
|
||
- Shot-Zusammenfassung: Karte auf 560 px verbreitert und Spaltenabstand zwischen
|
||
Dauer/Gewicht/Flow deutlich vergrößert (28 px statt 10 px) — die drei Werte standen
|
||
zu nahe beisammen und waren schlecht lesbar.
|
||
- PID-AutoTune sichtbar gemacht: Während eines Tuning-Laufs erscheint auf der Verlauf-Seite
|
||
eine Live-Karte (mit Spinner) — je Kreis Laufzeit, aktuelle Phase (heizt/kühlt ab) und
|
||
Schwingungshub samt Mittelpunkt (Min/Max der Ist-Temperatur seit Start). Nach dem Ende
|
||
zeigt die Karte ~30 s das Ergebnis (Erfolg/Abbruch samt Grund, farbcodiert). Die
|
||
PID-Tuning-Meldung in der Statuszeile ist jetzt antippbar und springt zur Verlauf-Seite,
|
||
wo die Schwingung auch als Kurve zu sehen ist.
|
||
|
||
Version 1.0.10:
|
||
- Live-Bezugsschirm (abschaltbar): Beim Start eines echten Bezugs blendet sich ein Vollbild-Overlay
|
||
weich ein — große Bezugszeit, Live-Gewicht und Flow samt Flow-Verlaufskurve der letzten 30 Sekunden
|
||
(nur bei verbundener Waage), Fortschrittsbalken Richtung Zielgewicht (Brew-by-Weight) bzw. Zielzeit
|
||
(Brew-by-Time) und Pre-Infusion-Phasenhinweis mit Restzeit. Über das X oben rechts für den laufenden
|
||
Bezug schließbar; beim nächsten Bezug erscheint er wieder. Ein/Aus-Schalter auf der Info-Seite unter
|
||
„Darstellung", die Einstellung wird P4-lokal im NVS gespeichert und überlebt Neustarts. Während
|
||
Flush und Reinigungsassistent erscheint das Overlay bewusst nicht.
|
||
- Shot-Zusammenfassung aufgewertet: Die Karte nach Bezugsende blendet jetzt weich ein/aus (Fade),
|
||
wirft einen Schlagschatten und zeigt Dauer, Endgewicht und mittleren Flow als große Werte mit
|
||
gedimmter Beschriftung statt reiner Textzeilen (Gewicht/Flow nur bei aktiver Waage).
|
||
- Pre-Infusion-Phasenanzeige auf dem Dashboard: Während eines Bezugs mit aktiver Pre-Infusion zeigt
|
||
eine Schrittleiste die Phasen „Pre-Infusion → Pause → Extraktion" an — erledigte Schritte mit Haken,
|
||
die aktive Phase hervorgehoben (Gold) inkl. Restzeit-Countdown (100-ms-Takt). Die aktive Phase kommt
|
||
quelltreu von der S3 (neues State-Feld "piState", ab S3-Firmware 5.0.12); bei älterer S3-Firmware wird
|
||
sie zeitbasiert aus den konfigurierten Phasendauern abgeleitet. Ist keine Pause konfiguriert (0 s),
|
||
wird der Pause-Schritt ausgeblendet.
|
||
- Temperatur-Seite: Solltemperaturen für Wasser und Dampf werden jetzt über radiale Drehregler (Arc,
|
||
270°) mit großem Wert mittig und −/+-Feinjustage eingestellt. Gesendet wird entprellt (nach kurzer
|
||
Bedienpause bzw. sofort beim Loslassen des Reglers oder Verlassen der Seite), damit Drag-Gesten die
|
||
S3 nicht mit setTemp-Kommandos und EEPROM-Schreibzugriffen fluten. Tippen in die Reglermitte löst
|
||
bewusst keinen Wertsprung aus (ADV_HITTEST: nur Ring/Griff reagieren).
|
||
- Dashboard-Feinschliff (nur P4, keine S3-/Protokolländerung nötig):
|
||
- Weiche Temperatur-Zustandsfarben: Der große Ist-Wert färbt sich stufenlos über den Abstand
|
||
zum Soll (kontinuierliche Farbinterpolation statt harter Stufen) — Blau beim Aufheizen,
|
||
Gold kurz vor dem Ziel, Grün im Zielband (±0,5 °C), Richtung Warngelb bei deutlichem
|
||
Überschwinger. Dazu neue „BEREIT"-Pille im Header (auf allen Seiten sichtbar), wenn der
|
||
Wasserkessel — und der Dampfkessel, sofern er heizt — im Zielband liegt, kein Fehler/
|
||
Standby/Eco aktiv ist und kein Aufheiz-Countdown läuft; mit Hysterese gegen Flackern
|
||
an der Bandgrenze, erscheint und verschwindet weich (Fade).
|
||
- Umschaltbares Temperatur-Design: Die Dashboard-Temperaturanzeige gibt es jetzt in fünf
|
||
Varianten — „Klassisch" (bisherige Karten mit Prozentbalken), „Instrumente" (freistehende
|
||
Rundinstrumente im Manometer-Look: Metall-Bezel mit Verlauf und Schlagschatten für eine
|
||
leichte 3D-Wirkung, 270°-Bogen füllt sich in der Zustandsfarbe, Soll-Wert in der
|
||
Bogen-Lücke), „Minimal" (komplett rahmenlos, nur große Werte mit dünner Ist/Soll-Linie),
|
||
„Soft-3D" (Neumorph: Fläche fast im Hintergrundton wirkt herausgedrückt — dunkler
|
||
Schatten unten rechts, heller Lichtschein oben links, eingelassener Balken) und
|
||
„Thermometer" (vertikale Säulen, die sich von unten in der Zustandsfarbe füllen, mit
|
||
Glanzstreifen als Glas-Effekt und rundem Kolben unten). Außer bei „Klassisch" folgt
|
||
auch die Füllfarbe von Balken/Bogen/Säule stufenlos der Zustandsfarbe des Ist-Werts.
|
||
Umschalter auf der Info-Seite unter „Darstellung"; die Wahl wird P4-lokal im NVS
|
||
gespeichert und überlebt Neustarts. Standard: Instrumente.
|
||
- Konsolidierte Statuszeile: Die sechs gestapelten Dashboard-Banner (Sicherheit, Dampf,
|
||
Reinigung, PID-Tuning, Wartung, Aufheiz-Countdown) teilen sich jetzt EINE feste einzeilige
|
||
Meldung — mehrere aktive Hinweise rotieren alle 4 s weich durch (Fade) statt das Layout
|
||
zu verschieben, Priorität Rot > Gelb > Blau. Wartungs- und Reinigungsmeldung bleiben
|
||
antippbar (Serviceseite bzw. Reinigungs-Sub-Screen), Überlängen laufen als Laufschrift durch.
|
||
|
||
Version 1.0.9:
|
||
- Weiche Übergänge (dezente Fade-Animationen) hinzugefügt:
|
||
- Start-Animation: Boot-Splash mit Logo, Untertitel, Lade-Spinner ("Verbinde mit Maschine...")
|
||
und Firmware-Stand; blendet sich beim Start weich ein und beim ersten State von der S3
|
||
(Verbindung steht) wieder aus.
|
||
- Einschlaf-Animation: Die Standby-Uhr wird beim Wechsel in den Standby weich eingeblendet.
|
||
- Aufweck-Animation: Beim Aufwecken blendet das Standby-Overlay weich aus und gibt das
|
||
Dashboard frei.
|
||
- Umsetzung speicher-neutral über das 'opa'-Style (kein opa_layered/Vollbild-Puffer), um den
|
||
LVGL-Speicherpool nicht zu belasten. Bei ausgeschalteter Standby-Uhr (Display aus) gibt es
|
||
weiterhin keine Einschlaf-Animation (schwarzer Bildschirm bietet keine Anzeigefläche).
|
||
|
||
Version 1.0.8:
|
||
- Statistik-Seite hinzugefügt
|
||
|
||
Version 1.0.7:
|
||
- Brew-by-Weight-Gewichtseingabelimit auf 150g erhöht, um auch Heißwasserbzug für Americano oder ähnliches via BBW zu ermöglichen
|
||
|
||
Version 1.0.6:
|
||
- Boot-Loop-Schutz implementiert:
|
||
P4-Boot-Loop-Schutz + „Update-Modus", der den UART-OTA offenhält.
|
||
Wenn die P4-Firmware in eine Absturzschleife läuft, erkennt sie das (RTC-Zähler wie beim S3) und
|
||
startet in einen abgespeckten Modus, der bewusst das riskanteste überspringt — vor allem die Display-/LVGL-Init (der wahrscheinlichste P4-Absturzgrund, siehe unser LVGL-Mem-Pool-Thema) — und nur den UART-Empfang + OTA-Receiver laufen lässt. Dann kann der S3 die P4-Firmware jederzeit per UART neu flashen, auch wenn die normale P4-Oberfläche kaputt ist. (Optional: eine ganz simple statische „Update-Modus"-Bildschirmmeldung, falls das Panel-Bringup als sicher genug gilt.) |