
Das gesamte Projekt der Kleingarten Zeiterfassung ist OpenSource und kann von jedem Bastler mit ein bisschen Erfahrung selbst zusammen gebaut werden. Alle dafür benötigten Informationen findest du auf dieser Seite. Im Downloadbereich findest du die entsprechende Software und Vorlagen für 3D Druck Gehäuse und Applikationen.
1. Kern-Hardware (Elektronik)
-
Raspberry Pi: Empfohlen wird ein Raspberry Pi 3B, 3B+ oder 4 (inkl. Micro-SD-Karte, min. 8GB besser aber 16GB).
-
RFID-Reader: Ein USB-RFID-Reader (EM4100 oder kompatibel), der sich als Tastatur (HID) am System anmeldet.
-
LCD-Display: 16×2 Zeichen Display mit I2C-Adapter (PCF8574).
-
Industrie-Taster: 2x robuste Drucktaster (idealerweise in Grün für „JA“ und Rot für „NEIN“) zur Montage im Gehäuse.
-
Thermodrucker: ESC/POS-kompatibler Belegdrucker (im Code für Serial/Bluetooth über
/dev/rfcomm0konfiguriert). -> Empfohlen wird der XGR-POS581 -
Netzteil: Stabiles 5V Netzteil mit ausreichend Ampere (min. 3A), um Pi, Display und RFID-Leser zu versorgen.
- Powerbank: Wenn am Ort des Arbeitseinsatzes kein Stromanschluss zur Verfügung steht, lässt sich das System auch mit einer 5V 3A Powerbank betreiben.
2. Verkabelung & Kleinteile
-
Jumper-Kabel: Female-to-Female für die direkte Verbindung vom Pi zum I2C-Display und den Tastern. Ist natürlich abhängig von den verwendeten Tastern
-
Gehäuse: IP65 Abzweigkasten oder 3D-Druck – 3D-Druck Dateien im Downloadbereich verfügbar
-
RFID-Chips/Karten: 125kHz RFID-Tags oder RFID-Mitgliederausweise für die Mitglieder.
3. Software-Voraussetzungen
Das System basiert auf Raspberry Pi OS (Lite). Folgende Python-Bibliotheken müssen installiert sein:
-
RPLCD: Für die Ansteuerung des Displays über I2C.
-
evdev: Zum Auslesen der RFID-Events vom USB-Port.
-
gpiozero: Für die einfache Handhabung der physischen Buttons.
-
python-escpos: Zur Steuerung des Thermodruckers.
-
sqlite3: (Standardmäßig in Python enthalten) für die lokale Datenhaltung.
-
ftplib: Für den Datenaustausch mit deinem Webserver.
4. Infrastruktur (Extern)
-
FTP-Server: Ein Webspace mit FTPS-Unterstützung (explizites TLS) für das Backup der Anwesenheitslisten und das Bereitstellen der Mitgliederdatenbank.
-
Netzwerk: WLAN-Verbindung am Einsatzort, kann auch ein Handy-HotSpot sein (für die Synchronisation).
5. Anschlussbelegung (Standard laut config.py)