NEWS
Adapter: broadlink2
-
Schöne Grüße zusammen!
Hab mirch in den letzten 3 Tagen hauptsächlich mit dem broadlink2-Adapter auseinandergesetzt und die erste neue beta (v2.0.9) auf git gestellt.Die wichtigsten Änderungen sind:
- RM4-Protokoll installiert wodurch einige neuen RM3-mini und RM4's jetzt funktionieren sollten. Ich habe zum Test einen RM4 mini, und einen alten RMPro (mit RF) und beide funktionieren jetzt
- Beim Start des Adapters werden die Geräte gesucht und falls ein Gerät gefunden hat das einen neuen Namen hat (z,B, neue IP) die mac-Adresse gleich ist wird der alte Name weiterverwendet, damit braucht man nicht umbenennen wenn neue IP's vergeben werden.
- Fast alle Kommunikationsroutinen mid den Geräten upgedated um Fehler (auf die ich draufgekommen bin als ich mehr Diagnose eingebaut hatte um RM4 zum laufen zu bekommen) zu minimieren, dadurch wurden Geräte zu als offline gekennzeichnet. Aber es sind noch nicht alle unhandled promise rejections gelöst, daran arbeite ich noch.
- Einige anderen kleinen Fehler so wie beim Debug-mode von admin wurden behoben.
Wichtig für RM4-Geräte: Man muss die Geräte womöglich mit älteren handy-apps ins netzwerk holen, wenn ich die neuesten apps verwendet habe dann werden sie mit einem neuen Protokoll verknüpft und der Adapter kriegt keine Authorizierung mit ihnen zu sprechen!
Ich persönlich habe die Adressen der broadlink clouds in CHina und Europe auf meinem PiHole gesperrt, damit können die Geräte nicht nach Hause-Telefonieren und werden nur vom Adapter gesteuert! Das muss aber temporär ausgeschaltet werden um ein Gerät ins WLAN zu bekommen.
Wäre nett wenn ihr testen könnt, ich werde mich in den nächsten Tagen anderen neuen Geräten widmen (der Glühbirne welche ich von geborgt bekommen habe z.B.) und weitere Fehler beheben.
-
@frankjoke sagte in Adapter: broadlink2:
Schöne Grüße zusammen!
Hab mirch in den letzten 3 Tagen hauptsächlich mit dem broadlink2-Adapter auseinandergesetzt und die erste neue beta (v2.0.9) auf git gestellt.Die wichtigsten Änderungen sind:
- RM4-Protokoll installiert wodurch einige neuen RM3-mini und RM4's jetzt funktionieren sollten. Ich habe zum Test einen RM4 mini, und einen alten RMPro (mit RF) und beide funktionieren jetzt
- Beim Start des Adapters werden die Geräte gesucht und falls ein Gerät gefunden hat das einen neuen Namen hat (z,B, neue IP) die mac-Adresse gleich ist wird der alte Name weiterverwendet, damit braucht man nicht umbenennen wenn neue IP's vergeben werden.
- Fast alle Kommunikationsroutinen mid den Geräten upgedated um Fehler (auf die ich draufgekommen bin als ich mehr Diagnose eingebaut hatte um RM4 zum laufen zu bekommen) zu minimieren, dadurch wurden Geräte zu als offline gekennzeichnet. Aber es sind noch nicht alle unhandled promise rejections gelöst, daran arbeite ich noch.
- Einige anderen kleinen Fehler so wie beim Debug-mode von admin wurden behoben.
Wichtig für RM4-Geräte: Man muss die Geräte womöglich mit älteren handy-apps ins netzwerk holen, wenn ich die neuesten apps verwendet habe dann werden sie mit einem neuen Protokoll verknüpft und der Adapter kriegt keine Authorizierung mit ihnen zu sprechen!
Ich persönlich habe die Adressen der broadlink clouds in CHina und Europe auf meinem PiHole gesperrt, damit können die Geräte nicht nach Hause-Telefonieren und werden nur vom Adapter gesteuert! Das muss aber temporär ausgeschaltet werden um ein Gerät ins WLAN zu bekommen.
Wäre nett wenn ihr testen könnt, ich werde mich in den nächsten Tagen anderen neuen Geräten widmen (der Glühbirne welche ich von geborgt bekommen habe z.B.) und weitere Fehler beheben.
Gehen mit der neuen Adapter Version , die alten Angelernten Geräte flöten?
Oder werden die Daten sauber in die neue Version dann übernommen?Werde Ihn morgen testen. Auch mit dem RM3-mini der bis jetzt nicht funktioniert.
Welches ist die richtige GIT Version? Bitte Link noch mal.
-
@deta
Die alte Konfig wird nicht geändert und sie bleibt bestehen.
Der Adapter wird vielleicht nur mekkern wenn du Geräte doppelt drinnen hast (selbe mac adresse für unterschiedliche IP's z.B.).
Du kannst auch ohne Probleme zurücksteigen da die Konfig nicht geändert wurde. -
Ich habe mir die Beta von github geholt und es funktioniert prima mit meinem RM mini 3.
Danke @frankjoke für deine Arbeit! -
@frankjoke Habe auch gerade mit dem RM3 mini getestet. Funktioniert super. Vielen, vielen Dank für Deine Arbeit zu dem Thema!!
-
@frankjoke auch bei mir funktionierts auf Anhieb! Danke dafür!
-
@frankjoke bei mir läuft es leider nicht so rund. Benutze ein RM4pro und bekomme folgendes angezeigt:
broadlink2.0 2020-06-06 00:06:23.216 info (23386) debug: Device UN:RM4 already found! broadlink2.0 2020-06-06 00:06:23.215 info (23386) debug: Device UN:RM4 already found! broadlink2.0 2020-06-06 00:06:23.215 info (23386) debug: Device UN:RM4 already found! broadlink2.0 2020-06-06 00:06:22.318 info (23386) found macs: 24:df:a7:e4:66:e7 broadlink2.0 2020-06-06 00:06:22.317 info (23386) broadlink2.0 started and found 1 devices named UN:RM4 broadlink2.0 2020-06-06 00:06:22.316 info (23386) Poll every 31 secods. broadlink2.0 2020-06-06 00:06:22.209 info (23386) debug: Device UN:RM4 already found! broadlink2.0 2020-06-06 00:06:16.742 info (23386) debug: discover from [ '192.168.0.154' ] broadlink2.0 2020-06-06 00:06:16.739 info (23386) debug: broadlink2 has 7 old states! broadlink2.0 2020-06-06 00:06:16.738 warn (23386) Unknown UN:RM4 with { address: '192.168.0.154', port: 80, devtype: 24994, maco: <Buffer e7 66 e4 a7 df 24>, mac: '24:df:a7:e4:66:e7', type: 'unknown', name: 'UN:RM4', devname: 'UKN', devhex: ' broadlink2.0 2020-06-06 00:06:16.691 silly (23386) States user redis pmessage broadlink2.0.*/broadlink2.0._NewDeviceScan:{"val":false,"ack":true,"ts":1591394776683,"q":0,"from":"system.adapter.broadlink2.0","user":"system.user.admin","lc":1591 broadlink2.0 2020-06-06 00:06:16.688 info (23386) debug: ChangeState ack:true of _NewDeviceScan = false broadlink2.0 2020-06-06 00:06:16.686 silly (23386) States user redis pmessage broadlink2.0.*/broadlink2.0._NewDeviceScan:{"val":false,"ack":true,"ts":1591394776683,"q":0,"from":"system.adapter.broadlink2.0","user":"system.user.admin","lc":1591 broadlink2.0 2020-06-06 00:06:14.201 info (23386) Device UN:RM4 dedected: address=192.168.0.154, mac=24:df:a7:e4:66:e7, typ=unknown, id=0x61a2 devtype=UKN broadlink2.0 2020-06-06 00:06:08.971 info (23386) debug: discover from [ '192.168.0.255', '255.255.255.255', '224.0.0.251' ] broadlink2.0 2020-06-06 00:06:08.964 info (23386) debug: ChangeState ack:true of _NewDeviceScan = true broadlink2.0 2020-06-06 00:06:08.909 info (23386) UDP socket listening on 0.0.0.0:15001 broadlink2.0 2020-06-06 00:06:08.904 info (23386) Discover Broadlink devices for 10sec on broadlink2.0 broadlink2.0 2020-06-06 00:06:08.891 info (23386) debug: Config IP-Address end to remove: .fritz.box broadlink2.0 2020-06-06 00:06:08.891 info (23386) macObjects: [ '24:df:a7:e4:66:e7' ] broadlink2.0 2020-06-06 00:06:08.889 info (23386) debug: interface to be used: { address: '192.168.0.211', netmask: '255.255.255.0', mac: '94:c6:91:10:f9:7b', cidr: '192.168.0.211/24' }: broadlink2.0 2020-06-06 00:06:08.887 info (23386) Devices to rename: broadlink2.0 2020-06-06 00:06:08.886 info (23386) Devices to add: broadlink2.0 2020-06-06 00:06:08.882 info (23386) broadlink2 initialization started... broadlink2.0 2020-06-06 00:06:08.878 info (23386) debug: broadlink2 received undefined objects and 7 states, with config ip,scenes,switches,poll,new,rename,lang,latitude,longitude,adapterConf,loglevel broadlink2.0 2020-06-06 00:06:08.791 info (23386) starting. Version 2.0.9 in /opt/iobroker/node_modules/iobroker.broadlink2, node: v10.20.1 broadlink2.0 2020-06-06 00:06:04.779 warn (22649) Adapter will exit in latest 1 sec with code false! broadlink2.0 2020-06-06 00:06:04.778 info (22649) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason broadlink2.0 2020-06-06 00:06:04.777 info (22649) terminating broadlink2.0 2020-06-06 00:06:04.775 info (22649) Close all connections... broadlink2.0 2020-06-06 00:06:04.774 info (22649) Adapter disconnected and stopped with dostop(false) and callback(true) broadlink2.0 2020-06-06 00:06:04.773 info (22649) Got terminate signal TERMINATE_YOURSELF
Außerdem werden die Objekte nicht richtig angelegt z.B. der bzw. die learn Buttons
Gruß
moJO -
@frankjoke So nun meine Rückmeldung: Funktioniert jetzt auch der RMmini3
Wurde dann erkannt und man kann auch Anlernen, senden hab ich noch nicht probiert,
aber denke es wird auch gehen.Klasse. Danke
-
So da es nun geht , brauche ich bitte mal jetzt einen Anschubs um das nun noch zu verstehen. Hab ich bis heute nicht kappiert.
Was kann ich hier , und wie einstellen, welchen Nutzen hat das?Kapiere das nicht.
Habe z.b. ein Paar Tasten der Satbox angelernt, wie was kann ich jetzt damit in Verbindung
machen?
-
@frankjoke
Hi, läuft hier einwandfrei mit js-controller 3.1.5, node 12, Linux Mint 18.3.
Habe einen rm2 pro plus, einen rmpro3 Mini und 2 so Steckdosen. -
@deta sagte in Adapter: broadlink2:
Was kann ich hier , und wie einstellen, welchen Nutzen hat das?
Also brauchen tust Du die Einstellungen nicht zwingend.
Man kann den Adapter auch (in Skripten) ohne Nutzen.
Du kannst hier (bei States) Geräte anlegen, indem Du Ihnen Ihre an/aus Befehle zuweist.
Die Namen der Befehle sind die, wie Du sie in den Datenpunkten der Instanz unter "L" angelernt hast.
Diese Geräte kannst Du dann z.B., wie normal, über den iot Adapter Alexa bekannt machen.Szenen sind eine Reihenfolge von Befehlen, ähnlich, wie man das von einer Logitech Harmony kennt.
Du kannst also wiederkehrende Kombinationen nutzen, zB Kino = TV an, Verstärker an... -
@padrino sagte in Adapter: broadlink2:
@deta sagte in Adapter: broadlink2:
Was kann ich hier , und wie einstellen, welchen Nutzen hat das?
Also brauchen tust Du die Einstellungen nicht zwingend.
Man kann den Adapter auch (in Skripten) ohne Nutzen.
Du kannst hier (bei States) Geräte anlegen, indem Du Ihnen Ihre an/aus Befehle zuweist.
Die Namen der Befehle sind die, wie Du sie in den Datenpunkten der Instanz unter "L" angelernt hast.
Diese Geräte kannst Du dann z.B., wie normal, über den iot Adapter Alexa bekannt machen.Das geht doch auch so. Über den iot Adapter, den datenpunkt habe ich bis jetzt immer so über den iot Adapter für Alexa hinterlegt. Warum muss man da einen anderen Namen vergeben?
Szenen sind eine Reihenfolge von Befehlen, ähnlich, wie man das von einer Logitech Harmony kennt.
Du kannst also wiederkehrende Kombinationen nutzen, zB Kino = TV an, Verstärker an...Ok, kann man das nicht sowieso mit den Szenen Adapter machen? Habs noch nicht probiert.
-
@deta
Du hast gefragt, wofür die Einstellungen sind und das hab ich Dir gesagt.
Auch, dass Du sie nicht nutzen musst/brauchst.
In ioB gibt es eben oft mehrere Wege zum selben Ziel, welchen man wählt bleibt einem selbst überlassen.
Den Szenen Adapter kenn ich z.B. nicht. -
Die devicetype 24994 (hex 0x61a2) war mir leider noch nicht bekannt, werde sie beim nächsten Upload dazugeben .
Inzwischen kannst probieren in der Konfig rechts oben
24994=RM4P
einzugeben und mal sehen was der Adapter dann (hoffentlich) besser macht. -
Ich kann leider momentan keine Geräte anlernen.
Wenn ich den Anlernprozess auslöse (Lern oder LearnRF) kommt folgender Logeintragbroadlink2.0 2020-06-06 12:53:26.506 warn (11423) Error in StateChange for broadlink2.0.RM:RMPROPLUS-4a-2e-b8.LearnRF = 'cannot get code to send for: RM:RMPROPLUS-4a-2e-b8.LearnRF=RM:RMPROPLUS-4a-2e-b8 { val: true,ack: false,ts: 1591440806500 broadlink2.0 2020-06-06 12:53:26.505 warn (11423) cannot get code to send for: RM:RMPROPLUS-4a-2e-b8.LearnRF=RM:RMPROPLUS-4a-2e-b8 { val: true,ack: false,ts: 1591440806500,q: 0,from: 'system.adapter.admin.0',user: 'system.user.admin',lc: 1591
Mein System
Docker auf Syn918+
JS-Conroller 3.1.4
Admin 4.0.9
Node.js 10.20.1
Broadlink Adapter 2.0.3Ich betreilige mich gern mit testen an der Weiterentwicklung.
Vielen Dank für deine Entwicklungsarbeit -
@frankjoke danke das hat geklappt! Die Objekte werden jetzt angezeigt und das Anlernen und Steuern funktioniert auch
Falls du noch Logs oder andere Infos vom RM4Pro für die Entwicklung brauchst sag Bescheid.
Danke und Gruß
moJO -
Funktioniert bei mir ohne Probleme (Nachtrag - Leider doch nicht).
Habe allerdings nur 7 Flureon und die RM3 Mini am laufen.
Beim starten des Adapters erscheint nur die Warnung: sendPacket error: could not send after 3 trials!: SendPacketErr Error: socket not created
Aber scheint keinerlei Auswirkung zu haben im laufenden Betrieb.broadlink2.0 2020-06-07 18:41:41.519 info (6504) found macs: 34:ea:34:9b:9b:0c, 34:ea:34:9b:98:2f, 34:ea:34:9b:99:1f, 34:ea:34:9f:cb:f2, 34:ea:34:75:cf:45, 34:ea:34:9b:92:95, 34:ea:34:9a:6c:4c, 24:df:a7:d6:15:46 broadlink2.0 2020-06-07 18:41:41.518 info (6504) broadlink2.0 started and found 8 devices named T1:Heizung-Bad, T1:Heizung-Bjoern, T1:Heizung-Kueche, T1:Heizung-Wohnzimmer, T1:Heizung-WC, T1:Heizung-Flur, T1:Heizung-Schlafzimmer, RM:0x5f36_2 broadlink2.0 2020-06-07 18:41:41.518 info (6504) Poll every 30 secods. broadlink2.0 2020-06-07 18:41:40.546 warn (6504) sendPacket error: could not send after 3 trials!: SendPacketErr Error: socket not created/bound or closed or waiting!at T1._send (D:\ioBroker\node_modules\iobroker.broadlink2\broadlink_fj.js:1 broadlink2.0 2020-06-07 18:41:40.511 warn (6504) sendPacket error: could not send after 3 trials!: SendPacketErr Error: socket not created/bound or closed or waiting!at T1._send (D:\ioBroker\node_modules\iobroker.broadlink2\broadlink_fj.js:1 broadlink2.0 2020-06-07 18:41:40.477 warn (6504) sendPacket error: could not send after 3 trials!: SendPacketErr Error: socket not created/bound or closed or waiting!at T1._send (D:\ioBroker\node_modules\iobroker.broadlink2\broadlink_fj.js:1 broadlink2.0 2020-06-07 18:41:32.852 info (6504) Device RM:0x5f36_24:df:a7:d6:15:46 dedected: address=192.168.178.30, mac=24:df:a7:d6:15:46, typ=rm4, id=0x5f36 devtype=RM Mini 3 broadlink2.0 2020-06-07 18:41:32.850 info (6504) Device T1:Heizung-Schlafzimmer dedected: address=192.168.178.34, mac=34:ea:34:9a:6c:4c, typ=t1, id=0x4ead devtype=T1 Floureon, originalName=T1:0x4ead_34:ea:34:9a:6c:4c broadlink2.0 2020-06-07 18:41:32.848 info (6504) Device T1:Heizung-Flur dedected: address=192.168.178.37, mac=34:ea:34:9b:92:95, typ=t1, id=0x4ead devtype=T1 Floureon, originalName=T1:0x4ead_34:ea:34:9b:92:95 broadlink2.0 2020-06-07 18:41:32.846 info (6504) Device T1:Heizung-WC dedected: address=192.168.178.39, mac=34:ea:34:75:cf:45, typ=t1, id=0x4ead devtype=T1 Floureon, originalName=T1:0x4ead_34:ea:34:75:cf:45 broadlink2.0 2020-06-07 18:41:32.843 info (6504) Device T1:Heizung-Wohnzimmer dedected: address=192.168.178.35, mac=34:ea:34:9f:cb:f2, typ=t1, id=0x4ead devtype=T1 Floureon, originalName=T1:0x4ead_34:ea:34:9f:cb:f2 broadlink2.0 2020-06-07 18:41:32.824 info (6504) Device T1:Heizung-Kueche dedected: address=192.168.178.38, mac=34:ea:34:9b:99:1f, typ=t1, id=0x4ead devtype=T1 Floureon, originalName=T1:0x4ead_34:ea:34:9b:99:1f broadlink2.0 2020-06-07 18:41:32.795 info (6504) Device T1:Heizung-Bjoern dedected: address=192.168.178.36, mac=34:ea:34:9b:98:2f, typ=t1, id=0x4ead devtype=T1 Floureon, originalName=T1:0x4ead_34:ea:34:9b:98:2f broadlink2.0 2020-06-07 18:41:32.765 info (6504) Device T1:Heizung-Bad dedected: address=192.168.178.33, mac=34:ea:34:9b:9b:0c, typ=t1, id=0x4ead devtype=T1 Floureon, originalName=T1:0x4ead_34:ea:34:9b:9b:0c broadlink2.0 2020-06-07 18:41:32.624 info (6504) UDP socket listening on 0.0.0.0:15001 broadlink2.0 2020-06-07 18:41:32.615 info (6504) Discover Broadlink devices for 10sec on broadlink2.0 broadlink2.0 2020-06-07 18:41:32.612 info ] broadlink2.0 2020-06-07 18:41:32.612 info (6504) macObjects: [ '24:df:a7:d6:15:46', '34:ea:34:75:cf:45', '34:ea:34:9a:6c:4c', '34:ea:34:9b:92:95', '34:ea:34:9b:98:2f', '34:ea:34:9b:99:1f', '34:ea:34:9b:9b:0c', '34:ea:34:9f:cb:f2' broadlink2.0 2020-06-07 18:41:32.599 info (6504) Devices to rename: T1:0x4ead_34:ea:34:9b:9b:0c=T1:Heizung-Bad,T1:0x4ead_34:ea:34:9b:98:2f=T1:Heizung-Bjoern,T1:0x4ead_34:ea:34:9a:6c:4c=T1:Heizung-Schlafzimmer,T1:0x4ead_34:ea:34:9b:92:95=T1:H broadlink2.0 2020-06-07 18:41:32.598 info (6504) Devices to add: [] broadlink2.0 2020-06-07 18:41:32.593 info (6504) broadlink2 initialization started... broadlink2.0 2020-06-07 18:41:32.435 info (6504) starting. Version 2.0.9 in D:/ioBroker/node_modules/iobroker.broadlink2, node: v12.16.3, js-controller: 3.1.4
-
Ich habe die Beta auch gerade heruntergeladen, stoße jedoch beim klicken auf den Learn Button auf folgendes Problem:
broadlink2.0 2020-06-07 20:01:32.382 warn (16860) Error in StateChange for broadlink2.0.RM:RM3-7a-cd-5f._Learn = ReferenceError: Cannot access 'err' before initializationat /opt/iobroker/node_modules/iobroker.broadlink2/broadlink_fj.js:325:2
Ich habe einen RM 3 Mini (0x5f36).
@frankjoke Vielen Dank für deine tolle Arbeit!
LG -
Habe eben versucht einen Neuen Taster anzulernen. Geht leider nicht
Fehlermeldung wie bei saemet.
Wenn ich den Learnbutton betätige dann folgende Meldungenbroadlink2.0 2020-06-07 22:29:03.407 warn (8624) Error in StateChange for broadlink2.0.RM:0x5f36_24:df:a7:d6:15:46._Learn = ReferenceError: Cannot access 'err' before initializationat D:\ioBroker\node_modules\iobroker.broadlink2\broadlink_fj. broadlink2.0 2020-06-07 22:29:03.340 info (8624) Should learn on RM:0x5f36_24:df:a7:d6:15:46 broadlink2.0 2020-06-07 22:29:03.303 info (8624) Start -learning for device: RM:0x5f36_24:df:a7:d6:15:46
Ebenfalls ein RM 3 Mini (0x5f36).
-
Habe das Problem gerade selbst gehabt und gelöst, leider nicht auf alle 'Ergebnisse' gewatet und Befehe gleichzeitig ausgesendet
Habe auch noch 'ne menege checks eingefügt und einige mögliche promise rejection fehler ausgemärzt.Die neue Version ist uinter der gleichen Versionsnummer am git.
Die
could not send after 3 trials
-Fehler tauchen auch bei mir auf, aber nach sehr unterschiedlichen Zeiten (alle 5-20 Minuten) bei unterschiedlichen Geräten (habe 9 von meinen 15 in Betrieb). In der neuen Version mag nach einem solchen Fehler ein anderer info-log auftauchen, der sagt mir nur dass das Gerät nichts zurücksendet!
Ich habe keine Ahnung warum die Geräte manchmal nicht ansprechbar sind, 5-10 Sekunden Später sind sie es wieder. Ich dachte schon dass sie self-reboots machen und dann einige Sekunden nicht ansprechbar sind ....
Bei normalen Statusabfragen ist das nicht sooo wichtig da der Adapter einfach den letzten Status nimmt, aber bei Lern uder anderen Befehlen mag das problematisch scheinen. Ich versuche (mit Verzögerung) 3x die Befehle zu senden aber es kommt immer noch vor.p.s.: Die Version ist deswegen nicht schlechter als 2.02 oder 2.03 , die haben nur die Fehler nicht gemeldet sondern einfach weitergemacht!
Bezüglich dem Anlernen, mein RMPro+ und RM4Mini funktionieren momentan, das mögliche Problem mit den scenes muss ich getrennt überprüfen.