NEWS
IoBroker mit Warema WMS Web Control
-
Besten Dank. Ich werde mal alles einrichten und schauen ob es funktioniert.
-
Habe es jetzt mal ausprobiert, es klappt alles wie beschrieben. Super. Vielen Dank.
Eune Frage habe ich aber noch: sollten die WMS Komponenten nicht auch Signale von Aktoren im Netz weiterleiten, die keinen unmittelbaren Kontakt zum Sender haben? Mein Raspi stand im Hauswirtschaftsraum und konnte dort nur zwei von dreien WMS Zwischensteckern auffinden. Ich musste den Raspi dann ins Wohnzimmer bringen, wo er alle frei Aktoren gefunden hat. Und das, obwohl der eine Empfänger, der zuerst nicht aufgefunden wurde, sich nur ca. Zwei Meter neben einem der anderen beiden Empfänger befindet. Echt komisch. Wie soll das erst mit der Wetterstation werden, die ich noch nicht angeschlossen habe. Die wird zwei Etagen über dem Erdgeschoss sein…
-
Eune Frage habe ich aber noch: sollten die WMS Komponenten nicht auch Signale von Aktoren im Netz weiterleiten, die keinen unmittelbaren Kontakt zum Sender haben? Mein Raspi stand im Hauswirtschaftsraum und konnte dort nur zwei von dreien WMS Zwischensteckern auffinden. Ich musste den Raspi dann ins Wohnzimmer bringen, wo er alle frei Aktoren gefunden hat. Und das, obwohl der eine Empfänger, der zuerst nicht aufgefunden wurde, sich nur ca. Zwei Meter neben einem der anderen beiden Empfänger befindet. Echt komisch. Wie soll das erst mit der Wetterstation werden, die ich noch nicht angeschlossen habe. Die wird zwei Etagen über dem Erdgeschoss sein… `
Ob das Netzwerk ein Mesh aufbaut kann ich nicht sagen, mit dem Stick kommunizieren wir ja auf einer höheren Schicht, was der Stick nicht bekommt, können wir auch nicht auswerten. Die Neigung und Ausrichtung des Sticks kann den Empfang verbessern. Die Empfangsleistung des Sticks ist auch bei mir sehr bescheiden, er wurde im Prinzip ja auch nur zur Konfiguration vor Ort entwickelt und nicht für diesen Zweck hier. Was den Wettersensor angeht: dieser Sendet Broadcasts in rel. kurzen Abständen. Wenn dein Stick nicht jeden davon mitbekommt fällt das kaum auf, so lang hin und wieder etwas empfangen wird.Du kannst natürlich auch versuchen die Antenne zu verbessern, da müssten die vielen Anleitungen im Internet für Wlan-Sticks (2.4Ghz!) funktionieren.
-
Ob das Netzwerk ein Mesh aufbaut kann ich nicht sagen, mit dem Stick kommunizieren wir ja auf einer höheren Schicht, was der Stick nicht bekommt, können wir auch nicht auswerten. Die Neigung und Ausrichtung des Sticks kann den Empfang verbessern. Die Empfangsleistung des Sticks ist auch bei mir sehr bescheiden, er wurde im Prinzip ja auch nur zur Konfiguration vor Ort entwickelt und nicht für diesen Zweck hier. Was den Wettersensor angeht: dieser Sendet Broadcasts in rel. kurzen Abständen. Wenn dein Stick nicht jeden davon mitbekommt fällt das kaum auf, so lang hin und wieder etwas empfangen wird.
Du kannst natürlich auch versuchen die Antenne zu verbessern, da müssten die vielen Anleitungen im Internet für Wlan-Sticks (2.4Ghz!) funktionieren. `
Laut Warema funktioniert das WMS System so, Mesh ist wohl die passende Bezeichnung. Wäre natürlich irgendwie nicht so toll, wenn ich die weiter entfernt gelegenen Raffstoren (die wir noch nachrüsten) nicht erreichen kann. Aber wenn der Stick wie ein normaler Netzteilnehmer eingebunden wird, verstehe ich das mit der höheren Ebene nicht. Wenn beispielsweise bei der Fernbedienung ein Teilnehmer eingelernt wird, und der ist später nicht direkt erreichbar, wenn ihm ein Befehl geschickt wird, müsste dieser Befehl doch auch über das Netz geroutet werden (laut Warema). Dann müsste das doch mit dem Stick in iobroker auch so funktionieren?!
-
> Aber wenn der Stick wie ein normaler Netzteilnehmer eingebunden wird, verstehe ich das mit der höheren Ebene nicht.
Der Stick übernimmt selbstständig die Kommunikation mit dem Netzwerk, er gibt dann über seinen Seriellen Port nur weiter, was er empfangen hat und umgekehrt können wir ihm sagen, was er senden soll. Das passiert beides auf einer abstrakten Ebene ohne Berührung mit technischen Details des Funknetzwerks.
-
Der Stick übernimmt selbstständig die Kommunikation mit dem Netzwerk, er gibt dann über seinen Seriellen Port nur weiter, was er empfangen hat und umgekehrt können wir ihm sagen, was er senden soll. Das passiert beides auf einer abstrakten Ebene ohne Berührung mit technischen Details des Funknetzwerks. `
Ich verstehe. Jetzt nehmen wir mal an, dem Stick sind (innerhalb von iobroker) Teilnehmer des Netzes bekannt, die jetzt nicht mehr unmittelbar erreichbar sind, weil sie eben außerhalb der Funkreichweite des Sticks liegen.Müsste es dann nicht so sein, dass der Stick seine Befehle versendet, auch ohne dass der Teilnehmer direkt erreichbar ist, und dieser Befehl wird dann von anderen Teilnehmern des Netzes weitergeleitet? Ich könnte das ja mal ausprobieren bei mir. Wenn das nicht funktioniert, könnte man das noch implementieren?
Andererseits - sobald ich das Skript oder den gesamten Raspi mal neu starte, sind doch die gefundenen Teilnehmer des Netzes weg, oder? Das wäre natürlich nicht praktikabel, weil man dann den Stick erst mal wieder in die Nähe der sonst nicht direkt erreichbaren Teilnehmer bringen müsste, um innerhalb des Skripts klar zu machen, aus welchen Teilnehmern das Netz besteht.
-
> Müsste es dann nicht so sein, dass der Stick seine Befehle versendet, auch ohne dass der Teilnehmer direkt erreichbar ist, und dieser Befehl wird dann von anderen Teilnehmern des Netzes weitergeleitet?
Ist möglich, ich kenne die technischens Details des WMS-Funknetzes nicht, diese sind auch nicht öffentlich.> Wenn das nicht funktioniert, könnte man das noch implementieren?
Nein. Wie gesagt, der Stick übernimmt die Kommunikation mit dem Netzwerk komplett, da kann man im Adapter nichts implementieren.> Andererseits - sobald ich das Skript oder den gesamten Raspi mal neu starte, sind doch die gefundenen Teilnehmer des Netzes weg, oder? Das wäre natürlich nicht praktikabel, weil man dann den Stick erst mal wieder in die Nähe der sonst nicht direkt erreichbaren Teilnehmer bringen müsste, um innerhalb des Skripts klar zu machen, aus welchen Teilnehmern das Netz besteht.
Der Adapter lässt den Stick periodisch nach neuen Geräten suchen, ob diese Suchanfragen im WMS-Netz weitergeleitet werden order nur Punkt-zu-Punkt gehen weiß ich nicht. -
Dann wär's vermutlich besser die Reichweite des Sticks zu erhöhen. Damit sollte es dann beim Neustart oder ähnlichem kein Problem sein. Oder?
Gesendet von meinem KFSUWI mit Tapatalk
-
Verstehe ich es denn richtig, dass die bekannten WMS Geräte bei einem Neustart des Scripts verloren gehen? Wenn ja, könnte man das nicht ändern? Indem ein einmal gefundenes Gerät dauerhaft gespeichert wird? Sofern das intelligente Routing der Befehle erfolgt (ich suche nochmal die WMS Broschüre raus, aus der das hervorgeht), könnte man so auch alle Netzteilnehmer erreichen, die nicht in unmittelbarer Reichweite des Sticks sind.
-
Die Objekte in ioBroker bleiben erhalten nachdem sie einmal erstellt wurden, sind aber erstmal passiv, bis sie im aktuellen Skriptstart auch tatsächlich gefunden wurden.
Sollte sich herausstellen, dass das auffinden von Geräten kein Routing unterstützt, das Empfangen und Senden von Befehlen jedoch schon, könnte man das Skript so abändern, dass einmal gefundene Geräte beim Skriptstart geladen werden. Ohne gesicherte Erkenntnisse dazu lohnt das aber nicht.
-
Da ich mittlerweile auf OpenHab umgestiegen bin - gibt's hier jemanden, der dafür ein Binding erstellen könnte? Sollte mit den Erkenntnissen hier doch möglich sein… Mir fehlen leider die Programmierkenntnisse dafür.
-
@ Eberhard: Wie sieht es jetzt eigentlich bei dir mit der Reichweite des wms sticks aus? Hast du da noch was machen können?
Gesendet von meinem HUAWEI VNS-L21 mit Tapatalk
-
Da ich mittlerweile auf OpenHab umgestiegen bin - gibt's hier jemanden, der dafür ein Binding erstellen könnte? Sollte mit den Erkenntnissen hier doch möglich sein… Mir fehlen leider die Programmierkenntnisse dafür. `
Im Forum hier geht es um ioBroker :-)) OpenHab ist ein anderes Forum …
-
Hallo zusammen,
das hier ist ein wirklich interessanter Treat und ich habe mich extra deswegen hier angemeldet
Wirklich eine sehr gute Arbeit von euch; etwas vergleichbares zu dem Warema-Protokoll ist sonst nirgendwo zu finden – vielen Dank.
Ein paar Fragen habe ich aber noch. Vielleicht könnt ihr helfen:
1. Was genau ist gemeint mit „Netzwerkschlüssel in umgekehrter Reihenfolge“?
123456ABCD…. wird zu ….CDAB563412 oder
123456ABCD…. wird zu ….DCBA654321
-
Gibt es einen Befehl für den USB-Stick, mit dem die vom Handsender gesendeten Daten mitgelesen werden können (z.B. an die Markise)?
-
Wir bekommt man die SNR von einem Aktor (z.B. Markise) ohne Sensor?
-
Mit welchem Befehl wird eine Markise ausgefahren oder eingefahren?
Edit:
zu 3 -> mit dem Scan-Befehl {R04FFFFFF7020PPPP02} (wurde schon beschrieben)
zu 4 -> mit dem Fahr-Befehl {R06FFFFFF70700pp0FFFFFF00} (pp für Position in %)
LG
rainer
-
-
Hallo Rainer,
ja es ist leider so, dass man bezüglich Warema leider gar nichts findet…
Leider kann ich dir noch nicht weiterhelfen... Umzug ins Haus steht im August / September an... Ich bin auch gespannt ob ich das Skript zum laufen bekomme
läufts bei dir nun schon?
-
Hi radiorichter,
nein, ich habe das Script nicht zum Laufen bekommen.
Ich bin jetzt aber auch auf openhab umgestiegen und versuche ein Bindung für den Stick zu entwickeln.
-
Eventuell können wir uns da zusammentun? Unter iobroker läuft das Script einwandfrei, aber ich nutze auch nur noch OpenHab.
-
Mein Bindung für Openhab funktioniert schon ganz gut, allerdings habe ich nur eine Markise, so dass ich nicht alle Funktionen programeren und testen kann.
Auch finde ich kaum Dokumentation für die Bindingprogrammierung in openhab und muss vieles googeln <emoji seq="1f614"></emoji>
Die Vorarbeiten hier in diesem Forum für die Warema-Protokolle sind aber super - vielen Dank dafür.
-
Ich hab dir mal ne Nachricht geschrieben. Bitte antworte mal Rainer
-
Ich weiß nicht, ob hier noch jemand weiter daran arbeitet, aber nachdem dieser Thread der detailierteste zum Warema WMS ist, den Google ausspuckt, schreibe ich noch noch dazu, was ich herausgefunden habe.
Ich habe zwei WMS Netzwerke (zwei Wohnungen im selben Haus mit jeweils eigener Fernsteuerung) mit in Summe 16 Raffstore-Zwischensteckern.
-
der Stick speichert einmal gesetzte Schlüssel auch über Abstecken hinweg für mehrere Netzwerke. Ich kann mit meinem Stick mit beiden Netzwerken gleichzeitig "reden" ohne den Schlüssel neu setzen zu müssen.
-
die meisten Befehle (inkl. Fahrbefehle) können ausgeführt werden, ohne die PANID zu setzen. Ein {M%17FFFF} ist genug. Meine Annahme, dass die PANID nur für das Empfangen von Broadcast-Nachrichten (z. B. von Sensoren) wichtig ist.
-
ich habe den Stromverbrauch des Sticks gemessen. 10mA direkt nach dem anstecken und 50mA sobald ein M-Befehl ausgeführt wurde. Ich nehme an, dies aktiviert das interne Funk-Modul. Ein "Abschalten" habe ich nicht geschafft.
-
mit {R06xxxxxx5040} kann man einen Zwischenstecker "Pingen". Antwort {rxxxxxx50ACAF7E}. Die letzten zwei Bytes ändern sich immer.
-
mit {R04FFFFFF5058} (oder {R04xxxxxx5058} für einen einzelnen Zwischenstecker) kann man nach den von den Zwischensteckern verwendeten Schlüsseln fragen. Antwort {rxxxxxx5059kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk}. Bei mir antworten alle erreichbaren Zwischenstecker aus beiden Netzwerken gleichzeitig auf diese Anfrage. Ich nehme an, dass man den Schlüssel dazu erst einmal wissen muss, um überhaupt mit den Geräten reden zu können, sonst wären die Schlüssel ja vollkommen umsonst. Testen kann ich das nicht mehr, da der Stick die Schlüssel wie gesagt anscheinend speichert.
-
Es ist ein Unterschied zwischen {M%…} und {M#...}. Bei {M#...} bekomme ich auf die obige Key-Abfrage {R04FFFFFF5058} nur eine einzige Antwort zurück, wobei der antwortende Zwischenstecker wechselt (der, der am schnellsten reagiert?). Bei {M%...} kommt eine ganze Liste von Antworten zurück.
Die meisten dieser Dinge habe ich in den Dateien des WMS-Studio pro "gefunden". Ein paar weitere Dinge, von denen ich nicht wirklich weiß, was sie genau tun (obwohl man vom Namen her natürlich raten kann).
M% nennt sich dort Tunnel-Mode, M# Unicast-Mode.
Die 2 Ziffern in einem "Rxx"-Befehl sind einerseits für den Schlüssel (0=key0, 1=key1, 2=plain) und Tranmission-Mode (0="OneHopBC", 1="P2P", 4="WideBC", 6="WideP2P", 8="NWK2Child"). Viele Befehle funktionieren z. B. mit "R01", "R04" "R06" oder "R08" am Anfang.
Es gibt in den Dateien noch weitere Listen von IDs (z. B. für den Produkt-Typ, Geräte-Typ, Sensor-Wert). Da ich außer Raffstore-Zwischenstecker aber nichts habe, kann ich damit nicht viel anfangen.
PS: hat jemand rausgefunden, ob man den Stick als Gerät in die Fernbedienung einlernen kann, sodass man mit der Fernbedienung Befehle an den Stick schicken kann?
-