# Feature Requests & Bug Fixes > Dieses Dokument verfolgt laufende Bug Fixes und kleinere Feature Requests nach Abschluss der Hauptentwicklungsphasen (Implementation-Plan.md Phase 1–9). > Größere Änderungen (neue Module, neue Architektur) werden weiterhin im `Implementation-Plan.md` dokumentiert. --- ## Format ``` - [ ] **FR-NNN** Kurzbeschreibung - Details, Kontext, betroffene Dateien - Commit: `` (wird nach Erledigung eingetragen) ``` Status: `[ ]` = offen · `[x]` = erledigt --- ## Offen - [ ] **FR-002** Web Console – serieller Monitor über Browser - Library: `ayushsharma82/WebSerial` (ESPAsyncWebServer-basiert, WebSocket, eigene `/webserial`-Seite) - Log-Umfang: **alle** `Serial.print`-Ausgaben (inkl. Libraries) via `TeeStream`-Wrapper: - Eigene Klasse `TeeStream : public Print` leitet an `HardwareSerial` + `WebSerial` gleichzeitig weiter - In `main.cpp` wird `Serial` durch `TeeSerial` ersetzt → kein Refactoring der bestehenden Aufrufe nötig - RAM-Ringbuffer: intern durch WebSerial verwaltet (WebSocket-basiert, kein NVS) - Sicherheit: HTTP-Basic-Auth (gleiche Credentials wie restliches Webinterface) - WebSerial kennt keine native Auth → eigene Auth-Route `/webserial-auth` als Wrapper, oder WebSerial-Seite über eigene Handler-Registrierung mit `requireAuth()` absichern - Integration in `WebServerManager::begin()` + `loop()` (`WebSerial.loop()`) - Commit: – --- ## Erledigt - [x] **FR-003** Bug: NTP Zeitzone falsch (UTC statt CET/CEST) ✅ - `configTime(0, 0, ...)` lieferte UTC → Anzeige 1h zu früh (CET) / 2h zu früh (CEST) - `wifi_connector.cpp`: `configTzTime("CET-1CEST,M3.5.0,M10.5.0/3", "pool.ntp.org", "time.nist.gov")` – automatische Sommerzeit - `mqtt_client.cpp`: `gmtime()` → `localtime()`, `Z`-Suffix entfernt – Payload zeigt Lokalzeit - Version: 1.0.0 → 1.0.1 - Commit: `3a31082` - [x] **FR-001** Firmware-Version auf Webseite und im MQTT-Status-Payload - Definition: `FIRMWARE_VERSION` als `build_flags` in `platformio.ini` `[env]`-Basisblock (Single Source of Truth) - Fallback `#define FIRMWARE_VERSION "0.0.0"` in `config.h` (Arduino IDE ohne build_flags) - Format: `1.0.0 (Feb 26 2026)` – Version + C++-Makro `__DATE__` (Compile-Zeitpunkt) - Web: Firmware-Zeile in der Statustabelle auf `/` + Footer auf `/config` - MQTT: `"firmware_version": "1.0.0 (Feb 26 2026)"` im `lasercutter/status`-Payload - Commit: `46a8c59` --- *Erstellt: 26. Februar 2026*