NEWS
Wemos D1 Mini + Relais Shield + ESPEasy
-
Einen schönen guten Abend,
Ich stehe vor einem Problem.
Ich habe meinen Wemos D1 Mini mit der ESPEasy Software (Arduino IDE) gefasht. Dann habe ich alles ordnungsgemäß eingestellt und kann über IoBroker (MQTT - Statusänderung 0/1) sowie über die Browserleiste meinen Wemos bzw. das Relais ansteuern. Es schaltet einwandfrei!
Nun zum Problem:
Wie bringe ich dem Wemos bei, dass er nur für 0,5 Sekunden das Relais einschalten soll und dass er dann wieder abfallen soll ?
Wie kann ich den Wemos als Schalter in IoBroker intrigieren ?
Der Wemos soll nur eine kurze Zeit das Relais einschalten um mein Garagentor zu öffnen (also wie ein Taster)
Ich möchte dann diesen Taster via HomeKit Adaper auf meinem Handy anzeigen lassen. wie alle anderen Lichter und Sonoff Geräte.
Bitte um Hilfe,
Danke
Mathias
Sent from my iPhone using Tapatalk
-
Guten Morgen, Mathias,
wg. der 0,5 Sekunden, du mußt dem Wemos (ESPEasy) einen PULSE-Befehl schicken. Hatte ich mal für eine Rolladen-Steuerung.
http://192.168.x.x/control?cmd=PULSE,14,0,500
schaltet GPIO 14 für 500 ms.
Aber:
da du ja mit 2 Relais arbeiten wirst, (auf und ab), verriegele die Relais gegeneinander, das wirklich nur 1 Relais einschalten kann.
Nach dem Einschalten des Wemos kommt es kurz zu unkontrolliertem Einschalten des/der Relais, dabei hat es mir den kompletten
Gurtwickler zerlegt. Etwa 95,-€ Lehrgeld.
Viel Spaß
Grüße Ingo
-
Guten Morgen,
Danke für dem Hinweis.
Ich betreibe das Ganze nur mit einem Relais.
1. Betätigung des Relais - Tor öffnet
2. Betätigung des Relais - Tor stoppt
3. Betätigung des Relais- Tor schließt
Die Statusabfrage zum aktuellen Stand des Tores lasse ich jetzt mal außen vor.
Wie kann ich den oa. Link in IoBroker einfügen bzw. wie bekomme ich den Link in meinen HomeKit Adapter?
Sent from my iPhone using Tapatalk
-
Homekit - keine Ahnung, hab ich nicht.
Du mußt dir ein kleines Script basteln, das Script für den Gurtwickler habe ich nicht mehr.
Schaue dir mal angehängtes Blockly-Script an. Damit steuere ich ein 4-zeiliges Display über
einen Wemos an. (nicht perfekt)
Bei Änderung der Vor- oder Rücklauftemperatur wird zuerst das Display gecleart, dann in Zeile 1
nur der Text "Heizung Keller" ausgegeben. Dann erfolgt in Zeile 2, 3 und 4 die Ausgabe von
Vor- und Rücklauftemperatur sowie Aussentemperatur aus den entsprechenden Datenpunkten.
Soll bloß mal als Anregung dienen, wie du den Befehl an den Wemos schickst.
Da, wo ich die Änderung von Vor- und Rücklauf erfasse, müßte dein Handy-Befehl rein, und statt
der Display-Befehle schickst du den PULSE-Befehl.
Kannst ja mal berichten….
Grüße Ingo
1519_test2.png -
Guten Morgen,
Danke für die Information.
Ich werde mich die nächste Zeit an das Scripten machen und dann in Folge berichten.
Danke auch für deine Vorlage - mit dieser habe ich eine kleine Anleitung wie es zu machen ist !
Jetzt noch die Laienfrage: „Mit was hast du dieses Script gemacht ? Oder was hast du zum Scripten verwendet?“
-
Auch Guten Morgen,
Du installierst dir den Javascript-Adapter. Danach gibt es in Admin einen neuen Reiter "Skripte".
Es kann sein, das du erst den Expertenmodus einschalten mußt, um einen Haken zu setzen, damit der
Reiter auch angezeigt wird.
Ich arbeite noch mit Admin 2.0.9.
Experten-Einstellungen = das 5. kleine Symbol oben links.
Dann den Bleistift oben rechts bei Admin anklicken, dann kannst du den Haken setzen.
Dann gehst du in den Reiter Skipte, sagst links oben "neues Skript". Jetzt wirst du gefragt,
ob Java, Blockly oder Typescript verwendet werden soll. Nimm Blockly, wenn du nicht Experte
für Java bist. Ich habe es mit scripten auch nicht so.
Blockly ist wie eine grafische Benutzeroberfläche für Java. Was Typescript ist, …keine Ahnung.
Ich versuche nachher mal, dieses Blockly-Script zu exportieren, dann kannst du es bei dir importieren.
Beschreibe doch bitte mal ein wenig deinen Homekit-Adapter, wozu ist das Ding gut ???
Grüße Ingo
-
Hallo, hier wie besprochen das Blockly-Script zum Einfügen.
! ````
<xml xmlns="http://www.w3.org/1999/xhtml"><block id="q}w%GMZi!p[EPRfSf61x" type="comment" y="-12" x="63"><field name="COMMENT">Heizung Keller</field>
<next><block id="wU5JRzhHm@Fz)7m:%r?a" type="on_ext"><mutation items="2"></mutation>
<field name="CONDITION">ne</field><value name="OID0"><shadow id="ZO0k!1OOD}m3n/JQ%]E)" type="field_oid"><field name="oid">mqtt.0.NodeMCU_Keller.Vorlauf.Temperature</field></shadow></value> <value name="OID1"><shadow id="d_A}pYh`OqW^:ris,ZXF" type="field_oid"><field name="oid">mqtt.0.NodeMCU_Keller.Ruecklauf.Temperature</field></shadow></value> <statement name="STATEMENT"><block id="!N3o;9@m_9.oZ,:1q#Z4" type="request"><mutation with_statement="false"></mutation> <field name="WITH_STATEMENT">FALSE</field> <value name="URL"><shadow id="6HOLk(R?X=p1vz2`n?Cc" type="text"><field name="TEXT">http://192.168.2.170/control?cmd=lcdcmd,clear</field></shadow></value> <next><block id="Ac)in,1+dMF+s)b!)MHv" type="request"><mutation with_statement="false"></mutation> <field name="WITH_STATEMENT">FALSE</field> <value name="URL"><shadow id=".XD}x#ACqDO..3cpD(^|" type="text"><field name="TEXT">http://192.168.2.170/control?cmd=lcd,1,1,Heizung Keller</field></shadow></value> <next><block id="W^.6he}`ZKUiMQ%P_O_J" type="request"><mutation with_statement="false"></mutation> <field name="WITH_STATEMENT">FALSE</field> <value name="URL"><shadow id="o^u~Mi%,QpJh9rs*PZhv" type="text"><field name="TEXT">text</field></shadow> <block id="uvUVT|i5D{:nzWrA?Tq5" type="text_join"><mutation items="3"></mutation> <value name="ADD0"><block id="7w3YsFroAlT32.mctIkN" type="text"><field name="TEXT">http://192.168.2.170/control?cmd=lcd,2,1,Vorlauf</field></block></value> <value name="ADD1"><block id="1CS=pn!no.`M##(}I?~F" type="get_value"><field name="ATTR">val</field> <field name="OID">mqtt.0.NodeMCU_Keller.Vorlauf.Temperature</field></block></value> <value name="ADD2"><block id="HvgjXW]^U(2heGAH*p!~" type="text"><field name="TEXT">C</field></block></value></block></value> <next><block id="lcmA%7Z2q4`v205!{G)D" type="request"><mutation with_statement="false"></mutation> <field name="WITH_STATEMENT">FALSE</field> <value name="URL"><shadow id="BEFtA~^}mA_mNdcsk@T." type="text"><field name="TEXT">text</field></shadow> <block id="0rk{oV39[vHg@-S7UM+w" type="text_join"><mutation items="3"></mutation> <value name="ADD0"><block id="gpOZ0DD:z[}7j,KV6#9W" type="text"><field name="TEXT">'http://192.168.2.170/control?cmd=lcd,3,1,Ruecklauf</field></block></value> <value name="ADD1"><block id="D*0bv]BPg?v,(fMp#P5:" type="get_value"><field name="ATTR">val</field> <field name="OID">mqtt.0.NodeMCU_Keller.Ruecklauf.Temperature</field></block></value> <value name="ADD2"><block id="q2K%OypdqdV7|rqDb,tT" type="text"><field name="TEXT">C</field></block></value></block></value> <next><block id="Zl1,y_om5JC!kCo7(96Z" type="request"><mutation with_statement="false"></mutation> <field name="WITH_STATEMENT">FALSE</field> <value name="URL"><shadow id="Dsy2esT`XcvN3iU[b^;w" type="text"><field name="TEXT">text</field></shadow> <block id=":yLG,z7vV3=GRvMI,TdS" type="text_join"><mutation items="3"></mutation> <value name="ADD0"><block id="hcf.k.Tp*DOPAg9#Q)[`" type="text"><field name="TEXT">'http://192.168.2.170/control?cmd=lcd,4,1,Aussen Temp</field></block></value> <value name="ADD1"><block id="*,l}Ly^=hFxx#yZx?.L|" type="get_value"><field name="ATTR">val</field> <field name="OID">rflink.0.channels.Baldr_1.TEMP</field></block></value> <value name="ADD2"><block id="D(~pq1mJO6EVuU24z4X1" type="text"><field name="TEXT">C</field></block></value></block></value></block></next></block></next></block></next></block></next></block></statement></block></next></block></xml>
! ````
Du sagst unter Scripte "neues Script", wählst Blockly aus und fügst das Script über "Blöcke importieren" ein.
(oben neben Blöcke prüfen)
Viel Spaß,
Grüße Ingo
-
Hallo Leute,
Ich möchte das so ca nachbauen.
Nur zusätzlich einen zweiten esp8266 nehmen und mittels Taster einschalten. Habt ihr eine Hilfestellung wie ich das anstellen kann?
-
Hallo, ich habe ein Problem mein Relais Shield über IoBroker anzusteuern. Vielleicht kann mir ja jemand helfen… Habe mein Wemos D1 Mini mit ESPEasy bespielt. Die Kommunikation zwischen IoBroker MQTT und dem Wemos funktioniert auch (Daten z. B. vom Temperatur Sensor werden übertragen). Nur das Relais bekomme ich nicht ans laufen. In ESPEasy habe ich ein Switch definiert und alle GPIO's durchprobiert. Ohne Erfolg Der Datenpunkt für den Schalter wird in IoBroker unter Objekte zwar angezeigt, das Relais reagiert nicht wenn ich zwischen 0/1 bzw true/false schalte... Bitte um Hilfe...
-
Moin,
ich habe im Hinterkopf, du mußt dir mit dem Win-Programm mqttfx erst einen Datenpunkt für das Relais erstellen.
Suche mal im Forum nach mqttfx. In irgendeinem Beitrag habe ich mal eine bebilderte Anleitung eingestellt.
Viel Erfolg !
Grüße Ingo
-
Du kannst die Objekte auch manuell anlegen! Hier mal zwei Screenshots von meinem Relayshield am Wemos.
In ESPEasy muss normalerweise nichts verstellt werden um einen GPIO zu aktivieren, wenn ich das richtig im Kopf habe. Wenn du eine Rückmeldung brauchst, dann musst du einen Switch anlegen, der auf den GPIO reagiert!
Enrico
-
Danke erstmal für die schnelle Antwort! Habe mich durch die Anleitung gearbeitet. Die Datenpunkte Set und Her wurden erzeugt, wie beschrieben. Ich kann diese auch über Objekte Set ein und ausschalten (also Set auf 1 setzt Get auch auf 1 und umgekehrt). Nur das Relais schaltet nicht. Ich probier es morgen noch Mal in Ruhe. Trotzdem vielen Dank erstmal!!!!
-
Noch ein kurzer Nachtrag…. Hab eben noch festgestellt, dass der Befehl Set in IoBroker im ESP Easy ankommt. Also unter Device sehe ich,vdass das Relax ein sein sollte. Aber auf dem Shield leuchtet weder eine LED noch höre ich das Relais klicken... Das ist zumindest schon Mal ein kleines Erfolgserlebnis und Grund genug mir erst Mal ein Bier zu trinken
-
Schaltest du den richtigen GPIO? Hast du in ESPEasy was verstellt?
Enrico
-
Schalte GPIO 12, woher weiß ich, welcher der richtige ist? Im ESP habe ich sonst nichts verstellt.
-
Die Belegung vom Wemos kennst du? Auf dem originalen Shield ist ein Punkt drauf (Rückseite), welcher dir den Pin anzeigt, der belegt ist.
https://wiki.wemos.cc/products:retired: … eld_v1.0.0
https://arduino-projekte.info/wp-conten … pinout.png
D1 ist also GPIO 5! Wenn ich das so richtig lese, muss doch was verstellt werden in ESPEasy. Und zwar musst du SCL von dem PIN runternehmen, musst du mal suchen in den Einstellungen des Wemos.
Enrico
Edit: Hier noch das Bild von den Einstellungen:
-
Auf der Relais Shield ist D1 angeschlossen, GPIO 5 kann ich aber in ESPEASY nicht auswählen. Ist grau hinterlegt. Was meinst du mit SCL vom Pin nehmen?
-
Ich habe noch einen Screenshot von den Einstellungen gemacht, da stellst du SCL erstmal auf none, übernehmen nicht vergessen!
Enrico
-
Es funktioniert!!!!! Hab vielen Dank!!!!
-
Hallo zusammen,
vielleicht kann jemand helfen. Anfängerfrage.
Ich würde gerne mit dem Wemos Di mini den Türöffner streuern. Also eigentlich nur zwei Drähte verbinden.
Das klappt mit dem Relais Shield sehr gut, aber eigentlich hätte ich es gerne schlanker. Ohne das Relais. Ist das mit dem D1 möglich?
Es geht ja am Ende nur darum zwei Drähte miteinander zu verbinden.
Grüsse