Files
m5stack-dashboard/README.md
T
2026-08-02 00:38:15 +02:00

70 lines
1.8 KiB
Markdown

# M5Stack Core Dashboard
Wetter-, Kalender- und MVG-Abfahrten-Dashboard für den M5Stack Core (ESP32),
gesteuert über die 3 eingebauten Buttons (A, B, C).
Details zu Funktionsumfang, API-Formaten und Design-Entscheidungen stehen in
`SPEC.md` im Space. Umsetzungsschritte stehen in `PLAN.md` und `TODO.md`.
![Hauptbildschirm](docs/screenshot1.jpg)
![Abfahrten](docs/screenshot2.jpg)
![Wetter](docs/screenshot3.jpg)
![Termine](docs/screenshot4.jpg)
## Setup
1. PlatformIO CLI installieren:
```
pip install -U platformio
```
2. WLAN-Zugangsdaten eintragen:
```
cp include/secrets.h.example include/secrets.h
```
Dann in `include/secrets.h` `WIFI_SSID` und `WIFI_PASSWORD` anpassen.
Die drei API-URLs sind bereits vorbefüllt.
3. Gerät per USB anschließen.
## Build & Flash
```
./scripts/deploy.sh
```
Falls mehrere serielle Geräte angeschlossen sind und die automatische
Port-Erkennung fehlschlägt, kann der Port explizit übergeben werden:
```
./scripts/deploy.sh /dev/ttyUSB0
```
Das Skript baut nur und flasht, es öffnet keinen seriellen Monitor.
Falls du den Monitor separat sehen willst:
```
pio device monitor
```
## Bedienung
| Button | Funktion |
|---|---|
| A | Wechselt zwischen Wetter-Detail und Kalender-Detail |
| B | Zurück zur Hauptseite |
| C | MVG-Abfahrtsseite |
Nach 5 Minuten ohne Tastendruck springt das Gerät automatisch zurück zur
Hauptseite. Die Hauptseite aktualisiert sich alle 10 Minuten, die
MVG-Seite jede Minute.
## Icons
Die Icons (Sonne, Wolke, Regen, U-/S-Bahn-Badges, Kalender, Fehler-Symbol)
werden aktuell prozedural mit M5Stack-Grafikprimitiven gezeichnet
(`src/icons/icons.h`), um den Flash-Speicher zu schonen. Für echte
Pixel-Art-Bitmaps können die Funktionskörper später durch
`M5.Lcd.drawBitmap(...)`-Aufrufe mit RGB565-Arrays ersetzt werden.