
-
Version 1.3 – 02.02.2026
1. Mitglieder-Funktionen (Check-In/Out)
-
RFID-Identifikation: Anmeldung und Abmeldung über kontaktlose RFID-Chips (als Tastatureingabe/Event simuliert).
-
Automatisierte Zeiterfassung: Erfassung von Start- und Endzeitpunkt eines Arbeitseinsatzes in einer lokalen SQLite-Datenbank (
anwesenheit.db). -
Echtzeit-Feedback: Persönliche Begrüßung der Mitglieder mit Namen und Anzeige der aktuell geleisteten Arbeitsstunden auf dem LCD.
-
Belegdruck: Optionaler Ausdruck eines Arbeitszeit-Nachweises nach dem Auschecken über einen Thermo-Drucker (ESC/POS).
-
Stufen-Wertung: Automatische Bewertung der Arbeitszeit (z.B. Erreichen von „Stufe 1“ ab 180 Minuten), die direkt im System hinterlegt wird.
2. Hardware-Integration & UI
-
LCD-Steuerung: Dynamische Anzeige von Statusinformationen, Uhrzeit und Menüs auf einem 16×2 I2C-Display.
-
Interaktive Taster: Steuerung des Systems über zwei physische Taster (JA/GRÜN und NEIN/ROT) mit Entprellung (
bounce_time). -
Sonderzeichen-Support: Eigens definierte Custom-Chars für deutsche Umlaute (ä, ö, ü) im Display.
-
System-Info-Menü: Anzeige von technischen Parametern wie IP-Adresse, WLAN-Name (SSID), Signalstärke und CPU-Temperatur direkt am Gerät.
3. Datenverwaltung & Cloud-Synchronisation
-
FTPS-Download: Sicherer Download der Mitgliederdatenbank (
mitglieder.db) vom Server mittels explizitem TLS. -
Automatisiertes Backup: Zeitgestempelter Upload der Anwesenheitsliste (
anwesenheit-DD-MM-YYYY.db) auf einen FTP-Server zur externen Auswertung. -
Lokale Datenbank-Resilienz: Speicherung aller Scans in einer lokalen SQLite-Datenbank, um auch bei Netzwerkausfall funktionsfähig zu bleiben.
-
Logging: Detaillierte Protokollierung aller Systemereignisse und Fehler in der Datei
garten.log.
4. Admin-Funktionen
-
Admin-Chips: Vorbereitet um mit speziellen Berechtigungen (hinterlegte RFID-Nummern) zu arbeiten, derzeit noch funktionslos.
-
Automatischer Neustart: Skripte können sich nach Updates oder Fehlern selbstständig neu laden (
os.execv), um den Kiosk-Modus aufrechtzuerhalten.
5. Konfiguration (config.py)
-
Zentrale Steuerung: Alle Schwellenwerte für die Arbeitszeit, Hardware-Pins (GPIO), Drucker-MAC-Adressen und FTP-Zugangsdaten sind zentral konfigurierbar, ohne den Programmkern ändern zu müssen.
-
Druck-Modus: Globales Aktivieren/Deaktivieren der Druckfunktion (
ENABLE_PRINTING).
-