NEWS
Neuer Robonect HX Adapter
-
@HAL: Versuch es mal mit der IP Adresse des Mähroboters und auch ohne Port. Evtl. ist das Dein Problem. `
Vermutlich wurde der Fehler ausgelöst von einem "#" Zeichen in meinem Passwort. Ich habe das jetzt gelöscht und bisher taucht der Fehler im Log nicht mehr auf.
-
Hallo.
Wollte wissen ob mir jemand sagen kann wie man den Robonect Adapter in Verbindung mit IoBroker und Alexa verknüpfen kann.
Mein Problem ist dass im Status des Brokers der jeweilige Modus ausgewählt werden kann das heißt ich gehe rechts darauf und dort ist ein Pfeil nach unten wo man den Status dann ändern kann. Wenn ich den jeweiligen Mode ausgewählt habe fährt der RI40 auch los jedoch kann ich den Mode nicht in alexa einbinden.
Unter Cloud Adapter und hinzufügen kann der „State“ nicht ausgewählt werden.
Weiß da jemand was man da tun muss?
-
Ich hänge mich mal hier mit dran. Läuft bei mir mit einem R40, Baujahr 2016.
Edit:
Wie lasse ich mit denn am sinnvollsten den Mode in VIS anzeigen? Der DP robonect.0.status.status liefert aktuell 'nur'
0: "Unbekannt", 1: "Parken", 2: "Mähen", 3: "Suchen der Ladestation", 4: "Laden", 5: "Umsetzen", 7: "Fehler", 8: "Schleifensignal verloren", 16: "Abgeschaltet", 17: "Schlafen"
Eigener DP und via Skript entsprechend befüllen? Oder übersehe ich gerade etwas?
-
Genau so habe ich es gemacht….
Gesendet von iPhone mit Tapatalk
-
Ich jetzt auch, falls es jemand braucht (Blockly Import):
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="create" id="wNq%qfGC20jG:5FHgvIu" x="-1262" y="-112"><field name="NAME">Garten.Rasenmaehroboter.Status</field> <next><block type="comment" id="`o*^YK^x2GS8xhlEJ]WY"><field name="COMMENT">Status Rasenroboter aus Zahl wird Text</field> <next><block type="comment" id="NJzR}Y_1c;hL-u.il{bG"><field name="COMMENT">http://192.168.1.200/json?cmd=status</field> <next><block type="on_ext" id="-B/i{)JmeNNtfm#+y*,T"><mutation items="1"></mutation> <field name="CONDITION">ne</field> <value name="OID0"><shadow type="field_oid" id="an8k{`9WavP`j9Ii!0F5"><field name="oid">robonect.0.status.status</field></shadow></value> <statement name="STATEMENT"><block type="controls_if" id="8r9y{dBZ/putAzAMN:(T"><mutation elseif="9"></mutation> <value name="IF0"><block type="logic_compare" id="]{H@q-E31KX[g{L}=?(D"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="HqT+m/+P!ZH3E?JdW7~9"><field name="ATTR">val</field> <field name="OID">robonect.0.status.status</field></block></value> <value name="B"><block type="math_number" id="K9cj`OY`:={BNYkT4:)q"><field name="NUM">0</field></block></value></block></value> <statement name="DO0"><block type="control" id=")[dRZf|IwXo`GBz{(~q%"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Garten.Rasenmaehroboter.Status</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text" id="J8O9uo-_F`UV/1,-.rAJ"><field name="TEXT">Unbekannt</field></block></value></block></statement> <value name="IF1"><block type="logic_compare" id="D-W^PenR~EBTf,SR,Drr"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="b2i3y+mUrh?/=TYVPb{{"><field name="ATTR">val</field> <field name="OID">robonect.0.status.status</field></block></value> <value name="B"><block type="math_number" id="/]AK/,9)EDuTtTuZX+yN"><field name="NUM">1</field></block></value></block></value> <statement name="DO1"><block type="control" id="6l9#Jbgv+1l6{KS=tP;x"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Garten.Rasenmaehroboter.Status</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text" id="#j6G+s+yVaMD~R:jVUe#"><field name="TEXT">Parken</field></block></value></block></statement> <value name="IF2"><block type="logic_compare" id="H-@m@esL`H%1pyrC%vo5"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="w{dW?wNtQz2/N`BdN4W#"><field name="ATTR">val</field> <field name="OID">robonect.0.status.status</field></block></value> <value name="B"><block type="math_number" id="*74BIyzbf2Zu(u]BnQJc"><field name="NUM">2</field></block></value></block></value> <statement name="DO2"><block type="control" id="@AcaO@P=ERP((Mj,GVcC"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Garten.Rasenmaehroboter.Status</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text" id="I%g1~j0xv+-zyKz4f)#e"><field name="TEXT">Mähen</field></block></value></block></statement> <value name="IF3"><block type="logic_compare" id="vL_7{!)KG.OZk3T8Vd~0"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="[wa@wSrf9h~KLU:cz|O;"><field name="ATTR">val</field> <field name="OID">robonect.0.status.status</field></block></value> <value name="B"><block type="math_number" id="q#4zs]1/SYRw^KT|w({V"><field name="NUM">3</field></block></value></block></value> <statement name="DO3"><block type="control" id="KZG[gNyjtJr]7TZd.Bgs"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Garten.Rasenmaehroboter.Status</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text" id="0pF{qi5WoQn|C7L35yOQ"><field name="TEXT">Heimweg</field></block></value></block></statement> <value name="IF4"><block type="logic_compare" id="9cLNe#wOZHO?ufo{n+qd"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="~KS)U]7%Tq0M[7b7:G,5"><field name="ATTR">val</field> <field name="OID">robonect.0.status.status</field></block></value> <value name="B"><block type="math_number" id="km)]e-6;lP9,M?Up5)}p"><field name="NUM">4</field></block></value></block></value> <statement name="DO4"><block type="control" id="I9xZ1;JaS2N9igLGDX9b"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Garten.Rasenmaehroboter.Status</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text" id="OaDfAVugZc{Qz(^IPEh,"><field name="TEXT">Laden</field></block></value></block></statement> <value name="IF5"><block type="logic_compare" id="vm{PKJR[7A4b5(OGg`a3"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="w.Fh|6/Ie0|*p=nOEt;z"><field name="ATTR">val</field> <field name="OID">robonect.0.status.status</field></block></value> <value name="B"><block type="math_number" id="YhrorUcm-q^peG*i5fq)"><field name="NUM">5</field></block></value></block></value> <statement name="DO5"><block type="control" id="9uTl5]/#[kJ_;cjEc@Ru"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Garten.Rasenmaehroboter.Status</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text" id="KX`k)x~QE6G:_BSXU?Ak"><field name="TEXT">Umsetzen</field></block></value></block></statement> <value name="IF6"><block type="logic_compare" id="y4y6y0YP;oECHzaChe?k"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="Y!|PPtO(,[i6uJBMn1a3"><field name="ATTR">val</field> <field name="OID">robonect.0.status.status</field></block></value> <value name="B"><block type="math_number" id="s7gZ9nxE.!O#_u0uZz~v"><field name="NUM">7</field></block></value></block></value> <statement name="DO6"><block type="control" id="BoH6M[{+@Ti7YQae]9.P"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Garten.Rasenmaehroboter.Status</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text" id="@JbK2^k?Cj?N|y,rc7cI"><field name="TEXT">Fehler</field></block></value></block></statement> <value name="IF7"><block type="logic_compare" id="H6S;T5uWMfZNcaQl,E-D"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="C%@5XTqznC5?-LJ`^BFZ"><field name="ATTR">val</field> <field name="OID">robonect.0.status.status</field></block></value> <value name="B"><block type="math_number" id="D^X;NvhKn+]-8_47(*Zc"><field name="NUM">8</field></block></value></block></value> <statement name="DO7"><block type="control" id="yBv2n82jhaho]zDiW2Pd"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Garten.Rasenmaehroboter.Status</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text" id="U{cb)@yPpoCf;7u8LbP3"><field name="TEXT">Schleifensignal verloren</field></block></value></block></statement> <value name="IF8"><block type="logic_compare" id="0`(DDd4(eurNc9ULEd0k"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="R^Ud_rXao`2|#O5Wf6N~"><field name="ATTR">val</field> <field name="OID">robonect.0.status.status</field></block></value> <value name="B"><block type="math_number" id="+4nr;0^vG(CGHXl/]En="><field name="NUM">16</field></block></value></block></value> <statement name="DO8"><block type="control" id="9bXjr,Xi9T66aBXkD)=@"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Garten.Rasenmaehroboter.Status</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text" id="}{EyFUA(Y,y^9e%v9I@k"><field name="TEXT">Abgeschaltet</field></block></value></block></statement> <value name="IF9"><block type="logic_compare" id="Qv9@bF3g82oaaszlkIps"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="NLCX}_=_smm*elwm@_p["><field name="ATTR">val</field> <field name="OID">robonect.0.status.status</field></block></value> <value name="B"><block type="math_number" id="7-6I5ln!.ov@d3:G({*q"><field name="NUM">17</field></block></value></block></value> <statement name="DO9"><block type="control" id="ET7SB`S^RLl~_Fv_@,:q"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Garten.Rasenmaehroboter.Status</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="text" id="{C|TqZmr7a2-Usj3LMg9"><field name="TEXT">Schläft</field></block></value></block></statement></block></statement></block></next></block></next></block></next></block></xml>
-
Aktuell werden die DPs next_date, next_time und next_unix nicht befüllt. Im JSON sind diese Werte auch nicht vorhanden:
Ist der Fehler bekannt?
-
Was kann ich mit dem Blockly Skript nun anfangen?
Bekomme meinen Status nicht in den Cloud Adapter reingepackt.
-
Das war ja auch nicht gefragt…
Aber du kannst den Status im VIS sichtbar machen....
-
So, mein Mäher funktioniert wieder. Das Problem war nicht der Begrenzungsdraht. Das Kabel vom Netzteil zur Ladestation hatte einen Kabelbruch, so dass die Ladestation mal Strom hatte und mal nicht.
Wollte wissen ob mir jemand sagen kann wie man den Robonect Adapter in Verbindung mit IoBroker und Alexa verknüpfen kann. `
Da kann ich leider nicht helfen. Ich habe zwar eine Alexa, mein Mäher läuft aber rein über Timer.Aktuell werden die DPs next_date, next_time und next_unix nicht befüllt. Im JSON sind diese Werte auch nicht vorhanden.
Ist der Fehler bekannt? `
Das ist kein Fehler, sondern so gewollt. Robonect gibt die Werte nur aus, wenn gerade kein Timer läuft und er auf den nächsten Timer wartet. Mein Mäher ist für heute fertig und zeigt mir an, dass er morgen um 13:00 Uhr wieder anfangen wir zu mähen.Ein Frage in die Runde: Läuft der Adapter bei Euch so stabil, dass ich ihn in die offizielle ioBroker Adapter Liste aufnehmen lassen kann? Wie schon öfters erwähnt, habe ich absolut keine Probleme, aber ich habe auch sehr guten WLAN Empfang im Garten.
-
Kann man da wirklich nix dran machen den "Status" als Schalter einzubinden?
Eine Timerprogrammierung mit fest eingestellten Tagen macht keinen Sinn finde ich, da man nie weiss wie das Wetter so mitspielt.
Man kann da bestimmt anhand der Wettervorhersage was programmieren, jedoch bin ich in dem Gebiet zu unerfahren was programmieren angeht.
Sofern ich den Status ausgewählt habe, wäre es da nicht möglich dann im Broker auf das + zu tippen um den aktuell ausgewählten Status als Verknüpfung anzulegen?
Mit einem Landroid Worx habe ich gelesen geht dies ohne Probleme.
-
Das ist kein Fehler, sondern so gewollt. Robonect gibt die Werte nur aus, wenn gerade kein Timer läuft und er auf den nächsten Timer wartet. Mein Mäher ist für heute fertig und zeigt mir an, dass er morgen um 13:00 Uhr wieder anfangen wir zu mähen. `
Ok, dann werde ich mir das nochmal im Detail anschauen.
Ein Frage in die Runde: Läuft der Adapter bei Euch so stabil, dass ich ihn in die offizielle ioBroker Adapter Liste aufnehmen lassen kann? Wie schon öfters erwähnt, habe ich absolut keine Probleme, aber ich habe auch sehr guten WLAN Empfang im Garten. `
Bisher stabil, allerdings hatte ich heut Mittag ein paar Erros im Log, falls ich die wieder sehe schreibe ich sie hier.
Kann ich über den Adapter dem Roboter auch einen Einzelauftrag geben (Job)? Bisher noch nicht gesehen, wollte mir morgen mal deinen Code genauer anschauen.
@Schmaviator: Du kannst du den Status über robonect.0.status.mode setzen?
-
Eine Timerprogrammierung mit fest eingestellten Tagen macht keinen Sinn finde ich, da man nie weiss wie das Wetter so mitspielt. `
Ich habe genau einen Timer. Jeden Tag von 13-20 Uhr wird gemäht. Regnet es dann setze ich den Mode auf Home. Regnet es nicht mehr, dann wird der Mode auf Auto gesetzt. Mehr Logik brauche ich nicht.Kann ich über den Adapter dem Roboter auch einen Einzelauftrag geben (Job)? Bisher noch nicht gesehen, wollte mir morgen mal deinen Code genauer anschauen. `
Job ist noch nicht implementiert. Wenn Du das übernehmen kannst, dann wäre das eine super Sache. Ansonsten guck ich mir das auch nochmal an, auch wenn ich es nicht brauche. Siehe oben. -
Ja den Status JOB kann ich auswählen und der Robbi fährt daraufhin los. Nur über den Status JOB ist es auch möglich den RI40 aus seinem Parkzustand aufzuwecken und daraufhin loszufahren. AUTO geht ja nur bei programmierten Timer und bei MANUELL wartet er bis er manuell aus der Station genommen wird und seine Arbeit verrichtet bis der Akku leer ist und das Teil stehen bleibt.
-
Ich habe mir die Doku der API gerade mal angesehen: https://forum.robonect.de/viewtopic.php … &hilit=job
Eigentlich fehlen nur die fünf Datenpunkte remotestart, after, start, end und duration. Die Implementierung könnte so aussehen, dass der User die fünf Datenpunke nach eigenen Wünschen setzt und anschließend den Mode auf Job stellt. Der Job wird an Robonect übertragen und die fünf Datenpunkte geleert. Entspricht das Euren Erwartungen?
Edit: Sowohl im Robonect WebUI, als auch in der Robonect App kann man die Duration nicht setzen. Ich würde es also erstmal analog dazu umsetzen.
-
Ich habe genau einen Timer. Jeden Tag von 13-20 Uhr wird gemäht. Regnet es dann setze ich den Mode auf Home. Regnet es nicht mehr, dann wird der Mode auf Auto gesetzt. Mehr Logik brauche ich nicht.
Job ist noch nicht implementiert. Wenn Du das übernehmen kannst, dann wäre das eine super Sache. Ansonsten guck ich mir das auch nochmal an, auch wenn ich es nicht brauche. Siehe oben. `
Muss ich mir anschauen ob ich das hinbekommen würde, habe aktuell auch nur einen Timer: Mo,Di,Do,Fr 9-16 Uhr
Am WE gönne ich dem Rasen 2 Tage Pause vom Mähen und unter der Woche nochmal einen Tag am Mittwoch.
-
Ich habe aktuell das Problem , das mit der Beta 5 der Roby wieder unmoviviert zu Piepen anfängt (hatten wir ja schonmal , wenn die Infos abgefragt wurden…)
Dann wäre für mich noch ein Feature cool.... Die Duration des letzten Status wird ja momentan nur in Sekunden ausgegeben... Kann man das nicht gleich im Adapter in einen eigenen Datenpunkt als Zeitangabe übergeben ? Um das schön lesbar im VIS zu machen, muss man schon ein bisschen um die Ecke denken.. (ich kriegs auf jeden Fall nicht sauber hin ..)
-
Tatsächlich, mit setzen des Status "Job" fährt mein Mower los und mäht . Im Status bei Robonect steht dann :
.Ich erwarte, dass er mäht, bis das Akku leer ist und dann zur Ladestation zurück fährt und auf den nächsten Timer wartet. Mehr bräuchte ich nicht und direkt in der GUI von Robonect kann ich das nicht auslösen
[edit] . Klappt leider doch nicht so ganz. Der Mower hat einige Minuten gemäht und ist dann wieder in die Ladestation zurückgefahren. Offensichtlich muss man bei Job doch noch mehr Parameter mitgeben.
[edit 2 ] es gibt doch die Möglichkeit einen Mähauftrag "Job" auch in der Robonect GUI auszuführen, hatte ich bisher übersehen.
-
Der Robbi fährt über den Status JOB für die vorher eingestellte Zeit los. Vorkonfiguriert ist eine Stunde.
Wie schon erwähnt geht es leider nicht den Status in die Iobroker Cloud einzubinden. Wenn man den Status versucht einzubinden erscheint die Meldung
"Wird nicht unterstützt".
-
Auch wenn ich es eigentlich nicht benötige, habe ich mal kurz meinen Mower per Alexa gesteuert.
Allerdings benutze ich ausschließlich für die Alexasteuerung Note-Red und keine Cloud.
Ein bisschen holprig aber es funktioniert:
Befehle:
0 = "Auto",
1 = "Manuell",
2 = "Home",
98 = "End of day",
99 = "Job"
note-red:
Alexa, setzte Rasen auf 99
Mower fährt für eine Stunde mähen "Job"
Alexa , setzte Rasen auf 98
Mower macht Feierabend und fährt in die Ladestation
VG Uwe
-
@HAL:Auch wenn ich es eigentlich nicht benötige, habe ich mal kurz meinen Mower per Alexa gesteuert.
Allerdings benutze ich ausschließlich für die Alexasteuerung Note-Red und keine Cloud.
Ein bisschen holprig aber es funktioniert: `
Könntest du mir sagen wie das mit Note-Red funktioniert ohne Cloud?