← Zur Übersicht

📖 Cocktailmaschine – Handbuch

Bedienung, Einrichtung und Wartung deiner Cocktailmaschine.

Inhalt:
1. Erste Inbetriebnahme 2. Die Oberfläche 3. Einrichtung 4. Getränke anlegen 5. Getränk ausgeben 6. WLAN & Standalone 7. Tablet-Kiosk 8. Sicherheit & NOT-AUS 9. Hardware / Pins 10. FAQ

1. Erste Inbetriebnahme

Zum Aufspielen der Firmware brauchst du Rust mit der ESP-Toolchain (espup install) sowie espflash und ldproxy. Dann:

  1. WLAN eintragen: die Vorlage .cargo/config.toml.example nach .cargo/config.toml kopieren und dort WIFI_SSID / WIFI_PASS ausfüllen.
  2. Im Projektordner cargo run --release ausführen – das kompiliert, flasht über USB und öffnet den seriellen Monitor.
  3. Im Monitor erscheint die IP-Adresse. Die Oberfläche ist unter http://cockimate/ oder dieser IP erreichbar.
Der ESP32 funkt nur im 2,4-GHz-WLAN. Reine 5-GHz-Netze funktionieren nicht. Kommt keine Router-Verbindung zustande, öffnet die Maschine automatisch ihr eigenes WLAN „Cockimate" (siehe Abschnitt 6).

2. Die Oberfläche

Standardmäßig – so wie es ein Gast sieht – zeigt der Bildschirm nur die Getränke-Auswahl, dazu oben den Verbindungs- und Maschinenzustand, ein dezentes Zahnrad ⚙️, ein Referenzier-Symbol 🏠 und den NOT-AUS.

Das Verwaltungsmenü ist bewusst versteckt. Ein Tipp auf das Zahnrad ⚙️ und die Eingabe des Passworts (Standard 1234) blenden die vier Reiter Getränke, Einrichtung, Manuell und Skripte ein. Das Zahnrad wird dann zum Schloss 🔒 – damit sperrst du das Menü wieder.

Das Passwort änderst du in src/servo-control-migrated.html (Konstante SETUP_PASSWORD). Es ist eine Bedien-Sperre, damit Gäste nichts verstellen – kein echter Zugriffsschutz.

3. Einrichtung

Öffne den Reiter Einrichtung. Hier lernst du die Maschine einmalig an; alles wird auf dem ESP32 gespeichert.

  1. Referenzieren: „🏠 X referenzieren" / „🏠 Z referenzieren" – beide Achsen fahren auf ihren Endschalter (Nullpunkt).
  2. Slots einlernen: Mit dem Fahr-Panel (±10/±100/±1000) den Schlitten unter Slot 1 fahren und „📍 X übernehmen" drücken. Für alle 6 Slots wiederholen. Pro Slot wählst du den Typ Mechanismus oder Pumpe. Bei einer Pumpe erscheint zusätzlich eine Z-Position, auf die Z vor dem Pumpen fährt.
  3. Z-Release-Höhe: Z so weit hochfahren, dass der Mechanismus sicher auslöst, und übernehmen. Diese Höhe gilt für alle Mechanismus-Slots.
  4. Ausgabe: Standardmäßig endet jedes Getränk mit einer Referenzfahrt (der Nullpunkt ist die Entnahmeposition). Optional eine eigene Ausgabeposition einlernen.
  5. Zeiten & Dosierung: Haltezeit, Pause und Rückhub zwischen den Portionen sowie die Pumpenlaufzeit pro Portion einstellen.
  6. Ganz unten „Einstellungen speichern" drücken.
Eine Portion (ein „Hub") entspricht ca. 20 ml. Miss das an deiner Maschine aus und stelle bei Pumpen-Slots die „ms pro Portion" passend ein.

4. Getränke anlegen

Unter Einrichtung → Getränke verwalten: „➕ Neues Getränk anlegen", Name und Icon wählen, dann das Rezept als Liste „Slot × Portionen" zusammenstellen. „✔ Getränk übernehmen", zum Schluss „Getränkeliste speichern".

Auf einer frisch geflashten Maschine liegen bereits ein paar Getränke mit „Beispiel:" im Namen – nur als Vorschlag. Du kannst sie bearbeiten oder löschen.

5. Getränk ausgeben

Im Reiter Getränke auf eine Kachel tippen, das Rezept kurz bestätigen – fertig. Ein Banner zeigt den Fortschritt; „Fertig! 🥂" heißt: Glas entnehmen.

Referenzieren vom Hauptscreen: Muss die Maschine referenziert werden, erscheint oben ein Gold-Balken „Referenzfahrt nötig – hier tippen" und das 🏠-Symbol pulsiert. Ein Tipp fährt erst Z frei, dann X – das darf auch ein Gast auslösen, ohne Passwort.

6. WLAN & Standalone

Router-Modus (Standard): Die Maschine hängt sich in dein Heim-WLAN (Zugangsdaten in .cargo/config.toml).

Standalone-Modus: Kein Router nötig – die Maschine spannt ihr eigenes WLAN „Cockimate" auf (Passwort cocktail123). Umschalten unter Einrichtung → Netzwerk → „Speichern & neu starten". Danach mit dem WLAN „Cockimate" verbinden und http://192.168.71.1/ öffnen.

Android meldet bei Standalone-WLANs oft „kein Internet". Einmal „Verbindung halten" bestätigen, dann bleibt das Gerät verbunden.

7. Tablet-Kiosk

Für ein fest verbautes Panel eignet sich ein günstiges Android-Tablet mit einer Kiosk-Browser-App (z. B. „Fully Kiosk Browser"): als Startseite die Maschinen-Adresse eintragen, Vollbild aktivieren und „Bildschirm wach halten". Der Gäste-Modus (verstecktes Menü) sorgt dafür, dass Gäste nur Getränke wählen und den NOT-AUS nutzen können.

8. Sicherheit & NOT-AUS

Der große rote NOT-AUS ist immer erreichbar (auch per ESC-Taste). Er stoppt sofort beide Motoren und die Pumpe und verwirft alle wartenden Befehle. Zum Weiterfahren danach „Fortsetzen" (Reiter Manuell) und neu referenzieren.

Wichtig: Ein Software-NOT-AUS ersetzt keinen echten Hardware-Not-Aus, der die Motorversorgung physisch trennt. Wenn Personen an bewegliche Teile gelangen können, ist ein echter Not-Aus-Taster in der Stromzuleitung dringend zu empfehlen. Betrieb auf eigene Verantwortung.

Weitere Schutzfunktionen: Software-Endlagen, Geschwindigkeits-Limits, Homing-Abbruch bei nicht erreichtem Endschalter, entprellter Endschalter, begrenzte Warteschlangen.

9. Hardware / Pins

AchseFunktionGPIO
XStep / Dir / Enable / Endschalter32 / 33 / 14 / 21
ZStep / Dir / Enable / Endschalter25 / 26 / 27 / 22
Pumpen-Relais (HIGH = an)19

Die Pins änderst du in src/main.rs (Abschnitt „HARDWARE-SETUP"), die Verfahrwege und Limits in src/config.rs. Fährt eine Achse falsch herum, drehst du in src/config.rs die Konstante X_DIR_INVERTED bzw. Z_DIR_INVERTED um.

10. FAQ

Die Maschine taucht nicht im WLAN auf.

SSID/Passwort in .cargo/config.toml prüfen (2,4 GHz!). Im seriellen Monitor steht die IP. Notfalls mit dem WLAN „Cockimate" verbinden.

Ein Getränk startet nicht („Slot X nicht eingelernt").

Einrichtung öffnen, die fehlende Position bzw. Z-Höhe einlernen und speichern.

Die Pumpe läuft nicht.

Slot auf „Pumpe" gestellt? Relais an GPIO 19? „ms pro Portion" sinnvoll eingestellt?

Positionen stimmen nach dem Einschalten nicht.

Der ESP32 vergisst die aktuelle Achsposition beim Ausschalten (die eingelernten Slots bleiben gespeichert). Die Ausgabe referenziert automatisch vorab; manuell hilft immer eine Referenzfahrt.