NEWS
Test Adapter homeconnect (BSH Home-Connect) v0.0.x
-
@gezi70
Da musst du mal in der App gucken, ob Fernstart dauerhaft aktiv ist bei dir, wenn ja, dann kannst mit deinen virtuellen Schalter in der Vis das realisieren.
Das gewählte Programm wird ja im Datenpunkt'homeconnect.0.05466786785688.programs.selected.BSH_Common_Root_SelectedProgram'
und wenn du den Inhalt ins
'homeconnect.0.05466786785688.programs.active.BSH_Common_Root_ActiveProgram'
schiebst, startet das Prog.
-
@ple Ich danke dir. Dann fange ich mal an zu basteln...
-
@gezi70
Hallo habe das mit dem Geschirrspüler und Solar Überschussladen hingekriegt.
Im Gegensatz zur Waschmaschine und Trockner hat der Geschirrspüler ja keine "pause" Funktion. War daher eine schwierigere Geburt.Ablauf ist wie folgt:
a) Bediener- Geschirrspüler einschalten
- Programm wählen
- Fernstart aktivieren
- Gerät starten
b) Iobroker Skript
- Schaltet Geschirrspüler wieder aus
Var 1:
sobald PV grösser 1500W Leistung schalte Geschirrspüler ein --> Programm wird fortgesetzt
Var 2
sollte bis 11:45 Uhr nicht durch PV Überschuss gestartet, dann schalte Geschirrspüler ein... --> Programm wird fortgesetztGruss
Karacho
-
@karacho meins läuft auch schon ein paar Tage. Allerdings brauche ich nur den Tab einwerfen und die Tür schließen. Das Programm wähle ich am Display (Tablet an der Wand) und wähle aus, dass er bei Überschreiten des Schwellwertes von 350 W startet. Der Rest geht prima von alleine.
-
@karacho magst du das script vielleicht zur verfügung stellen?
-
So richtig zu gebrauchen ist der Fernstart bei den Spülmaschinen aktuell ja wohl nicht. Mein Modell S255HB800E ist jetzt im permanenten Fernstart in 10 Minuten 7x erreichbar und 7x nicht erreichbar gewesen. Also hat die Verbindung laufend verloren und wieder bekommen.
Da kann man nur hoffen dass Neff das Problem in den Griff bekommt. -
Hallo, ich krieg es einfach nicht auf die Reihe mit der Anmeldung:
Ich habe schon die Anmeldung im Developer und auch in der Home Connect App erneuert, den Adapter gelöscht und neu installiert, es hilft alles nichts.
Kann es sein dass ein Port geöffnet sein muss in der Firewall für den Adapter ?
-
@dskrt
OAuth Flow ist Device Flow ausgewählt und du hast die Zugangsdaten der App eingegeben? -
@tombox Klar, schon x-mal probiert seit Samstag. Kann es eventuell auch an diesem Single-Key ID hängen?
-
@frana120500 ich bin noch am Tüfteln, wie ich es übermitteln soll: allein der Code für das Blockly überschreitet den Maximalwert von 10000 Zeichen, die in einem Beitrag gesendet werden können...
-
@gezi70 screenshot
oder pack es in eine txt datei
-
@gezi70 kannst du hier als txt hochladen
-
@frana120500 Um den Geschirrspüler vom Tablet aus zu steuern, habe ich mir erstmal einige Datenpunkte als Boolean und als String angelegt.
Mit den Booleans wähle ich die Programme vor, und "drücke" quasi nochmals auf den "Auslöser", nicht dass der Geschirrspüler macht was er will, wennn der eingestellte Schwellwert der PV überschritten wurde.
Bei der Auswahl am Display wird dann die Maschine für einen kurzen Moment eingeschaltet und geprüft, ob die Tür geschlossen ist. Wenn nicht, erfolgt eine Sprachausgabe (bei mir direkt am Display).
Wenn dann der Schwellwert der PV Anlage überschritten ist (ich habe bei mir 350 W genommen, der Wert ab dem meine Anlage ins Netz einspeist), schaltet der Datenpunkt um, das durch den bool. Wert vorgewählte Programm wird in den entsprechenden Datenpunkt des Geschirrspülers übernommen und anschließend noch mit ein paar ms in den Datenpunkt zum Start der Maschine geschrieben.
Ist das Programm fertig und der Geschirrspüler meldet dies in seinem Datenpunkt, wird der Auslöser für den Schwellwert und das angewählte Programm wieder auf "false" gesetzt, dass alles wieder im Ausgangszustand ist, und das Programm nicht automatisch am nächsten Tag wieder von selbst startet.
Das ganze ließe sich vermutlich mit Informatik- und Programmierkenntnissen eleganter lösen, aber es funktioniert und der Geschirrspüler macht was er soll.
-
@frana120500
Hallo,
here it is<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="timeout" id="timeout2">timeout2</variable> <variable type="timeout" id="timeout">timeout</variable> </variables> <block type="on" id="=EI[P$3d[ib4/E[]qTX3" x="-538" y="-1388"> <field name="OID">homeconnect.0.BOSCH-SMV68TX06E-68A40E0869E8.status.BSH_Common_Status_RemoteControlStartAllowed</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="timeouts_wait" id="-WH}/45^BS2g5C1=6Xyh"> <field name="DELAY">15</field> <field name="UNIT">sec</field> <next> <block type="controls_if" id="A-jAjhjdA.2P9k/^:kNn"> <value name="IF0"> <block type="logic_operation" id="EaMdkJm/87Aqeg[Vnr@-" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="{F*aph}D-rUiM:biJlIQ"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="xf$j/jK-wX_F[ej*Yq?u"> <field name="ATTR">val</field> <field name="OID">homeconnect.0.BOSCH-SMV68TX06E-68A40E0869E8.status.BSH_Common_Status_OperationState</field> </block> </value> <value name="B"> <block type="text" id=",ID^WV;lNe./J78xG;`G"> <field name="TEXT">BSH.Common.EnumType.OperationState.Run</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="T(]5gJdYZPG{;Z=*ON)Z"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="r|aJg6_qa5vJW,h-ZE5O"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Geschirrspüler_Einschalt_Logik</field> </block> </value> <value name="B"> <block type="logic_boolean" id="dKGJB{U;(DHJ1O.1xoP~"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="2aD:`yfy$77s2ePc6t-2"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">homeconnect.0.BOSCH-SMV68TX06E-68A40E0869E8.settings.BSH_Common_Setting_PowerState</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="D{OCAjnPRFzbEm{))Exc"> <field name="TEXT">BSH.Common.EnumType.PowerState.Off</field> </block> </value> </block> </statement> <next> <block type="update" id="7#5t/t6vpX8Bx8;}+b]`"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">0_userdata.0.Geschirrspüler_Einschalt_Logik</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">10</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="/eW|EAVP9)ElNE!JwPT;"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id="LAGlYNmQyZrwK#S%W.?E"> <field name="COMMENT">Start bei Überschuss Solar</field> <next> <block type="on" id="QTovZ4ZkHP_?mn$#1AkV"> <field name="OID">solarlog.0.status.pac</field> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="comment" id="hP:)Ji(05X0G8x];bui["> <field name="COMMENT">Start bei Überschreiten Wert</field> <next> <block type="controls_if" id="9=ZM~}[,@;uLNJs|gWS."> <value name="IF0"> <block type="logic_operation" id="Cn)Ey+~s;~~/HPhD:RHK" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="oG_5RH5:sT{o:TmfO:UU"> <field name="OP">GT</field> <value name="A"> <block type="convert_tonumber" id="(rvt,:Lz]wi!6wn,AOr9"> <value name="VALUE"> <block type="on_source" id="NfEKMc(.|`/`ceV+Xc(x"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="9:pYzKpedF,G+ZQhr*Zb"> <field name="NUM">1500</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="BV;$I3scoiIgfyQZS:EI" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="Sau(8t/Rr*PXdM*`Jz!k"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="]6E@yrt2ZS^d,D;ik7Ft"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Geschirrspüler_Ueberschuss_Start_Push</field> </block> </value> <value name="B"> <block type="logic_boolean" id="Oa*OIa0#r_hb,xHl0Xq_"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id=",rcqOV}z,qF3+ott{gS7"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="G5t)rQbgseV+]DgB*Nd2"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Geschirrspüler_Einschalt_Logik</field> </block> </value> <value name="B"> <block type="logic_boolean" id="]R`R-X.(}+.pd8r978,O"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="$J-6tu.kk$Qj0XU4XQXy"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">homeconnect.0.BOSCH-SMV68TX06E-68A40E0869E8.settings.BSH_Common_Setting_PowerState</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="BZt8?ng9|R_g`w@gIdIf"> <field name="TEXT">BSH.Common.EnumType.PowerState.On</field> </block> </value> <next> <block type="pushover" id="~UI=Q}W/,4+i13S6:oha"> <field name="INSTANCE"></field> <field name="SOUND">siren</field> <field name="PRIORITY">1</field> <field name="LOG"></field> <value name="MESSAGE"> <shadow type="text"> <field name="TEXT">Temperatur CPU >70°. Sehr Kritisch !!!!</field> </shadow> <block type="text" id="{s.^9Dx.eR.us|~u5xbd"> <field name="TEXT">Geschirrspüler Solar Überschuß gestartet!</field> </block> </value> <next> <block type="update" id="5_.`JPw~HMwxefal:/be"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">0_userdata.0.Geschirrspüler_Ueberschuss_Start_Push</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">15</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="*^e-,n+Mlz+ohsYz(7!~"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="timeouts_settimeout" id="Dv1U_d!#QzBfIzRb}^aq"> <field name="NAME">timeout</field> <field name="DELAY">300</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="update" id="A;+5l[buM5vg[P:yXP^9"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Geschirrspüler_Ueberschuss_Start_Push</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="_cU]Yt-ceHWU1VkQY/v1"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> <next> <block type="comment" id="]Y|nGr/HGp.%NeCKo1?j"> <field name="COMMENT">Alternativ Start zur Uhrzeit</field> <next> <block type="schedule" id="u=ZNG?~q}/*4?~k4)Ri0"> <field name="SCHEDULE">45 11 * * *</field> <statement name="STATEMENT"> <block type="controls_if" id="ej9`tgAVvEGbSa4GfTaO"> <value name="IF0"> <block type="logic_compare" id="{^3tB$4XLz6x,CEoi4/e"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="?bFJk)v@nD3M~ngisiCJ"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Geschirrspüler_Einschalt_Logik</field> </block> </value> <value name="B"> <block type="logic_boolean" id="*Vn:EaZl;,uMD.%3D{ZP"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="m_{MI:p?0bpcq{u=-7(f"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">homeconnect.0.BOSCH-SMV68TX06E-68A40E0869E8.settings.BSH_Common_Setting_PowerState</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="X1%vMYrj,vEGqMh{jCx~"> <field name="TEXT">BSH.Common.EnumType.PowerState.On</field> </block> </value> <next> <block type="pushover" id="-MmTLoZlX2-4SSzJ]U]0"> <field name="INSTANCE"></field> <field name="SOUND">siren</field> <field name="PRIORITY">1</field> <field name="LOG"></field> <value name="MESSAGE"> <shadow type="text" id="tj=Q6,rH?K:HjrowMoW."> <field name="TEXT">Temperatur CPU >70°. Sehr Kritisch !!!!</field> </shadow> <block type="text" id="H3j(?H)Cj/|{uPY?0{$;"> <field name="TEXT">Geschirrspüler Klassisch gestartet!</field> </block> </value> </block> </next> </block> </statement> </block> </statement> <next> <block type="timeouts_settimeout" id="xI=iO2h2F[2jDFQwa_7s"> <field name="NAME">timeout2</field> <field name="DELAY">300</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="update" id="nrNd;)PxF`4V8BV;$E%x"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Geschirrspüler_Einschalt_Logik</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="u$,0!UB^Bc]Yg1Qe$Ba^"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </xml>
Bin kein Profi... vielleicht zu umständlich.....
Der Geschirrspüler hat Bedienfeld verdeckt in der Klappe. Er muss nur ganz normal bedient werden.
Starten - Programm wählen - Fernstarte aktivieren - Starten - zumachen
Wollte das nicht über ein Ipad oder so realisieren....Gruss
Karacho -
@ricogesch Was war denn das Problem ? ich steh auf dem gleichen Schlauch und kriege den Adapter nicht grün...
-
@maxpower-0 Was war denn jetzt die Lösung dieses Problems ? ich habe das Gleiche und komme nicht weiter...
-
Guten Tag.
Habe auch adapter Installiert und bin nach Anleitung gegangen.
Bekomme aber keine Verbindung aufgebaut.
Fehler im Log steht:homeconnect.0
2022-10-08 09:03:36.669 info Wait 10 seconds to retry
homeconnect.0
2022-10-08 09:03:36.669 error {"error":"expired_token","error_description":"Device authorization session not found, expired or blocked"}
homeconnect.0
2022-10-08 09:03:36.668 error https://api.home-connect.com/security/oauth/device_verify?user_code=U646-CI2D
homeconnect.0
2022-10-08 09:03:36.663 error Bitte überprüfe Benutzername und Passwort oder besuche diese Seite für manuelle Anmeldung:
homeconnect.0
2022-10-08 09:03:36.662 error Please check username and password or visit this site for manually login:Kann mir da einer weiterhelfen
-
@bockwurst19 Bitte die GitHub version probieren da ist das gelöst mit singlekey login
-
@tombox Danke für den Tipp.
Verbindung ist aufgebaut.
jetzt habe Ich diese Meldung im Loghomeconnect.0
2022-10-09 08:16:05.348 error Start relogin in 10min
homeconnect.0
2022-10-09 08:16:05.347 error {"error":"invalid_client","error_description":"client has limited user list - user not assigned to client"}
homeconnect.0
2022-10-09 08:16:05.345 error AxiosError: Request failed with status code 401
homeconnect.0
2022-10-09 08:16:05.343 error refresh token failed
homeconnect.0
2022-10-09 08:16:05.254 info Token abgelaufen
homeconnect.0
2022-10-09 08:16:05.252 error Start Event Stream Error: {"type":"error","status":401,"message":"Unauthorized"}
homeconnect.0
2022-10-09 08:16:05.250 error 401 Unauthorized
homeconnect.0
2022-10-09 08:16:05.182 error {"error":{"key":"invalid_token","description":"The access token expired"}}
homeconnect.0
2022-10-09 08:16:05.180 error AxiosError: Request failed with status code 401
homeconnect.0
2022-10-09 08:16:05.103 error Start relogin in 10min
homeconnect.0
2022-10-09 08:16:05.101 error {"error":"invalid_client","error_description":"client has limited user list - user not assigned to client"}
homeconnect.0
2022-10-09 08:16:05.100 error AxiosError: Request failed with status code 401
homeconnect.0
2022-10-09 08:16:05.097 error refresh token failed -
@bockwurst19 Sehr eigenartig würde ich den auth Ordner löschen und erneut probieren