Hackerspace-FFM Badge: Unterschied zwischen den Versionen

Aus Hackerspace Ffm
Wechseln zu: Navigation, Suche
Zeile 14: Zeile 14:
 
# Testen: Batterie wird eingelegt: Test das Ein-Taster funktioniert und Touch Funktioniert
 
# Testen: Batterie wird eingelegt: Test das Ein-Taster funktioniert und Touch Funktioniert
 
# Personalisieren: Name wird hinterlegt, Benutzergrafik (mit Name) kann erstellt und übertragen werden
 
# Personalisieren: Name wird hinterlegt, Benutzergrafik (mit Name) kann erstellt und übertragen werden
 +
 +
== Software / Funktionen ==
 +
* Initialisierung
 +
** Hardware-Erkennung wo das Display angeschlossen ist - darüber Pin-Zurordnung
 +
** Neopixel auf ESP-Modul zur Fehlerausgabe
 +
** Versorgungstransistor einschalten
 +
** Auto-Power-Off Task starten
 +
** Version + Logo + etc auf Display anzeigen für ein paar Sekunden
 +
* Hauptschleife
 +
** Augen animieren
 +
** Alle X-Sekunden Namen bzw. Custom-Bild statt den Augen anzeigen
 +
** Hin und wieder Neopixel aktivieren
 +
** Touch Sensor: Verschiebt Augen etwas in die Richtung, wechselt Augenausdruck für ein paar Sekunden
 +
* Bei Tastendruck Boot-0:
 +
** Wifi starten und ggf Firmwareupdate holen von fixen Space-Server (kostet viel Energie!)
 +
* Featuritis wenn jemand anderes mitprogrammiert oder viel Zeit bleibt:
 +
** Per ESP-Now andere Badges in der Nähe finden und "begrüßen", dabei evtl. den Namen des gegenüber übertragen
 +
** Wenn viel "getoucht" wird entsprechend reagieren mit den Augen (Tamagochi wird fröhlich oder genervt etc)
 +
** Sounds ausgeben

Version vom 16. März 2025, 14:35 Uhr

Hackffm kid animeyes.gif

Basis

  • ESP32-S3 Modul, entweder "Super Mini ESP32-S3" oder "ESP32-S3-Zero"
  • 1,3 SH1106 / (SSD1306) OLED, 128x64 1bit via I2C
  • CR123A 3V Zelle und Halter zur Versorgung

Aufbau mit Laufkarte

Besucher kaufen ein Badge und erhalten die Roh-PCB, beim Speaker-Add-On einen Speaker sowie eine Laufkarte:

  1. Reflow-Löten: Lotpaste wird aufgetragen, SMDs werden bestückt (bei Speaker-Add-On auch die Teile des Speaker-Bereichs), gelötet wird im Reflow-Ofen oder auf der heißen Platte
  2. Handlöten: Display-Connector, ESP-Modul, Neopixel, CR123 Halter, ggf. PCB-Patches, ggf. Speaker-Buchse werden per Hand gelötet
  3. Mechanischer Aufbau: Display einschrauben, PCB montieren, Neopixel platzieren, Halsband anbringen, ggf. Speaker montieren
  4. Programmieren: Grundprogram wird per USB-C eingespielt, Funktionen werden kontrolliert: Display, Neopixel, ggf. Speaker
  5. Testen: Batterie wird eingelegt: Test das Ein-Taster funktioniert und Touch Funktioniert
  6. Personalisieren: Name wird hinterlegt, Benutzergrafik (mit Name) kann erstellt und übertragen werden

Software / Funktionen

  • Initialisierung
    • Hardware-Erkennung wo das Display angeschlossen ist - darüber Pin-Zurordnung
    • Neopixel auf ESP-Modul zur Fehlerausgabe
    • Versorgungstransistor einschalten
    • Auto-Power-Off Task starten
    • Version + Logo + etc auf Display anzeigen für ein paar Sekunden
  • Hauptschleife
    • Augen animieren
    • Alle X-Sekunden Namen bzw. Custom-Bild statt den Augen anzeigen
    • Hin und wieder Neopixel aktivieren
    • Touch Sensor: Verschiebt Augen etwas in die Richtung, wechselt Augenausdruck für ein paar Sekunden
  • Bei Tastendruck Boot-0:
    • Wifi starten und ggf Firmwareupdate holen von fixen Space-Server (kostet viel Energie!)
  • Featuritis wenn jemand anderes mitprogrammiert oder viel Zeit bleibt:
    • Per ESP-Now andere Badges in der Nähe finden und "begrüßen", dabei evtl. den Namen des gegenüber übertragen
    • Wenn viel "getoucht" wird entsprechend reagieren mit den Augen (Tamagochi wird fröhlich oder genervt etc)
    • Sounds ausgeben