Die Fernbedienung des Zauberstab-Spiels: Ein Handheld mit OLED und Drehencoder, der alle Infinitag-Now-Geräte per Funk findet, einstellt, testet und aktualisiert – draußen im Einsatz genauso wie am Basteltisch, ganz ohne WLAN-Router, App oder Laptop.
- Geräte finden statt einrichten: Ein Discovery-Broadcast listet alle Stationen und Targets in Reichweite (MAC-Kennung + Signalstärke); das markierte Gerät blinkt weiß – man sieht sofort, welches gemeint ist
- Alles einstellbar: Lautstärke, Stab-Statusfarben und -Helligkeit, IR-ID der Stationen (Schützen-Kennung – der Treffer-Sound folgt automatisch dem Zauberstab, der geschossen hat), Sounds, Trefferzeiten (in Sekunden), Prop-Ausgänge und Ring-Helligkeit der Targets – Werte werden direkt ins Gerät geschrieben und dort dauerhaft gespeichert
- Testen aus der Ferne: Sound-Vorhören, kompletter Stations-Selbsttest (Sound, LEDs, Laser, IR mit Selbstempfang, Trigger) und der Treffer-Test – ein Target spielt die komplette Treffer-Sequenz ab, um Zeiten und Props ohne Station einzustellen
- Updates über die Luft: Die Box holt sich Releases selbst von
GitHub (Netz-Update): das eigene über Tools → „Box-Update suchen",
Geräte-Images über „Update suchen" in der jeweiligen Geräteliste –
verteilt wird per ESP-NOW-Funk-Push oder SoftAP; veraltete Firmware
wird in der Liste markiert (
^) - Live-Monitor: Zeigt eingehende Treffer-Meldungen in Echtzeit – praktisch beim Aufbau und bei der Fehlersuche
- Batteriebetrieb: 4×AA, Batteriespannung im Tools-Menü; vor einem Update wird der Akkustand geprüft
| Gerät | Repo | Aufgabe |
|---|---|---|
| Config-Box | dieses Repo | Handheld-Konfigurator: Discovery, Einstellungen, Updates, Live-Monitor |
| Station | infinitag-now-station | Sound + Zauberstab (Zauber-Auslösung, Laser, Status-LEDs) |
| Targets | infinitag-now-target | IR-Empfänger an den Zielen, melden Treffer per Funk |
| Protokoll-Lib | infinitag-now-core | Paketformat, EspNowService, SoftAP-Updater, PROTOCOL.md |
| Doku | infinitag-now | Wissensbasis (Hardware, Protokoll, Konzepte) |
Geräte identifizieren sich allein über ihre MAC-Adresse – auspacken, einschalten, „Neu suchen", fertig. Kein Pairing, keine ID-Vergabe.
ESP32-C3 Super Mini (IPEX + externe Antenne), 0,96"-OLED SSD1315 mit
4-Tasten-Board (I²C), KY-040-Drehencoder, 4×AA-Batteriefach mit
Schiebeschalter, Batteriemessung per Spannungsteiler. Pinbelegung in
src/Config.h (GPIO-Plan v3); Konzept, Bedienung und Schaltung in
Doc 18 der Wissensbasis.
pio run -e configbox # bauen
pio run -e configbox -t upload # flashen (USB-C, native USB-CDC)
pio device monitor # Log, 115200 BaudNur das allererste Flashen braucht USB – danach kommen Updates über die Luft (siehe unten).
Alles geht mit dem Encoder allein: drehen = navigieren oder Wert ändern (schnell drehen = ×10), drücken = OK. Jede Menüebene hat einen „< Zurück"-Eintrag. Die vier OLED-Tasten sind optionale Shortcuts: K1 = zurück, K2 = neu suchen / ×10 (halten), K3 = Identify-Blinken an/aus, K4 = OK.
Jede Version gibt es als GitHub-Release mit fertiger
infinitag-config-vX.Y.Z.bin. Am bequemsten per Netz-Update:
Tools → „Box-Update suchen" – die Box lädt und installiert das
Release selbst (WLAN dafür einmalig im Update-Modus hinterlegen).
Alternativ der SoftAP-Weg:
- Tools → „Update-Modus" (prüft vorher den Batteriestand)
- Die Box öffnet ein WLAN
infinitag-cfg-XXXXXX - Mit Laptop/Handy verbinden,
.binaufhttp://192.168.4.1hochladen - Die Box prüft das Image und startet mit der neuen Version neu
Die Upload-Seite zeigt an, welches Gerät man vor sich hat, und lehnt falsch benannte Firmware-Dateien ab. Ein abgebrochener Upload kann nicht booten – die alte Firmware bleibt aktiv.
| Pfad | Inhalt |
|---|---|
src/Config.h |
Pins, Funkkanal, Timing, FW-Version |
src/InputController.* |
Encoder (Interrupt-Quadratur) + 5 Tasten entprellt |
src/DeviceRegistry.* |
Geräteliste des letzten Discovery-Zyklus (stateless) |
src/UiController.* |
Menü-State-Machine + OLED-Rendering (größtes Modul) |
Änderungen laufen über Pull Requests (Squash-Merge, Typ-Label –
Template liegt in .github/). Releases entstehen bewusst über
einen Tag-Push: git tag vX.Y.Z && git push origin vX.Y.Z – GitHub
Actions baut und veröffentlicht das Release inkl. .bin (lokaler
Fallback: release.sh).
Protokolländerungen gehören ins Core-Repo. Arduino-Core 2.x ist
bewusst gepinnt (ESP-NOW-Callback-Signatur).
Geplant: Web-UI über SoftAP (Übersicht + Bearbeiten im Browser), Live-Monitor-Filter, ESP-NOW-Sniffer.
PolyForm Noncommercial 1.0.0 – © 2026 Tobias Stewen. Kommerzielle Nutzung nur mit Genehmigung: info@hallow-tech.de. Ursprung des Namens und der Idee: das Lasertag-Projekt Infinitag (2017); Infinitag Now ist eine komplette Neuentwicklung als Zauberstab-Spiel, entstanden für einen Halloween-Zauberstand.