NEWS
Hilfe zum Projekt Futterautomat Aquarium mit ESP8266
-
Hallo Leute,
ich bin wider mal auf euer Hilfe angewiesen.
Mein Bastelprojekt ist ein Futterautomat für das Aquarium.
Folgende Punkte sind bereits erledigt:
Grundgerät mit 3D gedruckt:
https://www.thingiverse.com/thing:301532
und Zusatzgehäuse mit FreCad gezeichnet und gedruckt:
Am ESP8266 sind Folgende Teile angeschlossen:
-
Display zur Anzeige Uhrzeit und Zeit der nächsten Fütterung.
-
Taster um eine Zusatzmahlzeit zu setzen
-
Servo (ohne Elektronik) für die Förderschnecke.
Für die Steuerung über ioBroker hab ich mir eine eigene Seite in der Visu angelegt
(es sollen noch weitere Geräte folgen)
Das Script sendet zur eingestellten Zeit einen http Befehl an den ESP8266
was auch sehr gut funktioniert.
Nun meine Frage:****__Wie kann ich die an der Visu eingestellte Zeit an den ESP senden damit dieser in
im Display anzeigt?__****
In der ESPEasy habe ich Generic-MQTT Import unter Device eingefügt:
-
-
Hallo Leute,
hier die Lösung falls das auch mal wer in einer ähnlichen Form brauchen kann.
Ein zusätzliches Javascript sorgt für das senden der Daten falls sich die
eingestellte Zeit geändert hat.
Die Datenpunkt entstehen nach dem anlegen des "Generic-MQTT Import"
// Senden der geänderten Zeit an das Display im Futterautomat on({id: 'javascript.0.Futterautomat_Einschaltzeit', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; var FutterMin=getState("javascript.0.Futterautomat_Einschaltzeit_Minuten"/*Futterautomat_Einschaltzeit_Minuten*/).val; // Datenpunkte auslesen und in Variablen schreiben var FutterStd=getState("javascript.0.Futterautomat_Einschaltzeit_Stunden"/*Futterautomat_Einschaltzeit_Stunden*/).val; setState("mqtt.0.min"/*min*/,FutterMin); // Variablen nach ESP8266 schreiben via MQTT setState("mqtt.0.std"/*std*/,FutterStd); // setState("mqtt.0.Futter.futterzeit.stunden"/*/Futter/futterzeit/stunden*/,12); //FutterStd); // "mqtt.0.easy_wemo.cmd","wemo,2,"+temp+" °C" });
Da der MQTT Import nur Zahlen verkraftet stelle ich denn Doppelpunkt in der Uhrzeit erst im
Display dar.
filename="screenshot.35.jpg" index="0">~~Grüße Andy.