NEWS
[Neuer Adapter] SelveRF
-
@rintrium also bislang läuft es ganz gut. Habe eigentlich alle meine Rollladen Controlls in Vis zu den Datenpunkten von deinem Adapter gewechselt. Alles top! Falls sich etwas ändert oder nicht mehr geht, gebe ich dir bescheid.
Ich benutze nur commeo (keine iveo) und auch keine Sensoren also wenn du die implementierst müsste jemand anders diese testen.
Nochmal vielen Dank! Ich kann nun FHEM loswerden! Yipeee! -
Würde mich gerne als iveo Tester zur Verfügung stellen.
Habe aktuell 12 Rolladen (iveo) in FHEM und steuere sie per FHEM Integration, würde das aber gerne direkt zu ioBroker umziehen.
Leider fehlt es mir noch an ioBroker Dev Skills, um eine Version für iveo zu bauen.
Ich habe damals die erste Version des Moduls Selve für FHEM entwickelt, aktuell aber habe ich leider keine Zeit um mich mit dem Thema Integration Selve in ioBroker zu kümmern.
Wäre aber super wenn du auch iveo Rolläden integrieren könntest.
Wie gesagt, zum Testen würde ich mich bereit erklären.Gruß,
-
@jostereo ich habe gerade eine neue Version veröffentlicht, die nun (hoffentlich ) auch mit den iveo Aktoren und Sensoren umgehen kann. Da ich keinerlei Möglichkeit habe den Code zu testen, kann es gut sein, dass es kleinere oder größere Bugs gibt. Dann bitte einfach mit Debug-Log hier posten und ich gucke was ich tun kann.
@mrFenyx mit dem Update habe ich den SerialPort so eingestellt, dass ein paralleles Öffnen aus unterschiedlichen Anwendungen einen Fehler schmeißen müsste. Das ist dann wahrscheinlich noch etwas praktischer als ein Eintrag in der Readme (die ich aber auch beizeiten etwas ausführlicher schreiben muss). ...wenn man nur vorher mit allen Fehlern rechnen könnte
-
Vielen Dank schonmal für den Adapter.
Die Steuerung funktioniert für meine 12 Rolläden.
Die Übernahme der Namen aus der Konfiguration des Sticks, funktionierte auch prima.
Habe nur 1 - 2 Warning Meldungen im LOG, habe es dir mal angehangen.Zum Verständnis hätte ich aber noch 2 Fragen:
-
Wenn ich auf einen Rolladen state z.b. "down" true oder false setze, wird der Befehl ausgeführt, d.h. es ist egal ob true oder false.
Ist das so gewollt? -
Gebe es die Möglichkeit den letzten Befehl (down, up, drivePos1, drivePos2, stop) in den jeweiligen Objekten zu speichern, so dass man weiß welcher Befehl als letztes an das Rollo ging?
Ansonsten wie gesagt schonmal vielen Dank.
Bin dann noch einen Schritt weiter weg von FHEM, dank dir.
iobroker.current.log -
-
@rintrium ich bekommen manchmal diese Meldung:
Not implemented method call message from gateway: {"methodCall":{"methodName":["selve.GW.event.sender"],"array":[{"int":["0","2"],"string":["Gateway No.01"]}]}}
Ich gehe davon aus dass es gewollt und geplant und dass in zukünftigen Updates die Methode implementiert wird, oder?
EDIT:
soweit ich sehe ist dieses Event eine Nachricht die vom Gateway generiert wird falls ein Sender ein Ereignis erzeugt. Ist also nicht so wichtig (mehr in der Richtung INFO).
In meinem Fall sagt es dass das Gateway automatisch Rollladen heruntergefahren hat (was eigentlich stimmt ) -
@rintrium da ich ein bisschen Zeit hatte, habe ich das hier geschrieben:
Die Event Beschreibungen habe ich von hier übernommen / übersetzt: https://www.rolladen-shop.de/media/pdf/0b/c0/ca/USB-RF-Stick_XML-Spezifikation_Rev_2-0-2-GER.pdf, Kapitel 7.1.4. Bin mir nicht sicher ob das so passt da ich noch nie JS geschrieben habe aber vielleicht hilft es. Könnte in SelveUSBGateway.js irgendwo um die Zeile 543 reinpassen, denke ich. -
@mrfenyx Ich füge die (Events für die) Sender mit einem weiteren Update ein. Ich kann aber aktuell noch nicht versprechen wann genau. Danke auf jeden Fall schonmal für den Code, den nehme ich dann als Basis
@jostereo Zunächst schön, dass es funktioniert. Eine Rückfrage habe ich noch: laut Log wurden bei dir zehn Rollläden erkannt, du schreibst aber, dass du zwölf hast. Werden die Datenpunkte trotzdem für zwölf Rollläden gesetzt? Die Warnmeldungen sind grundsätzlich nicht schlimm, alles was das Gateway nicht oder nicht schnell genug quittiert wird nach Schließen und Wiederaufbau der Verbindung erneut gesendet. Ab und an braucht das Gateway einfach einen Moment länger..
Zu deinen Fragen:
1: Ja, das ist so gewollt, da die Datenpunkte als Button ausgelegt sind. Jedes zuweisen eines Wertes sorgt sozusagen dafür, dass der Button "gedrückt" wird.
2: Kann ich für die nächste Version vorsehen. Es würde dann aber wirklich nur der letzte Befehl angezeigt, der über das Gateway lief. Wurde der Rollladen also per Schalter betätigt kann das nicht berücksichtigt werden (zumindest sehe ich dafür keine Möglichkeit). -
@rintrium ich probiere es gerade bei mir lokal und gib bescheid ob es läuft. Falls ja, kann ich ein Pull Request machen, wenn du das willst. Habe das Format der Logs auch ein bisschen "verbessert", z.B.:
case "0": this.adapter.log.info("Sender " + senderName + " with ID: " + senderID + ", reports no events available. (Status after startup)"); break;
Ich sag dir morgen ob es funktioniert hat, nachdem ein Event getriggered wird.
-
Bezüglich der Rolladenanzahl muss ich mich korrigieren.
Habe aktuell nur 9 Rolladen im Gateway konfiguriert, deswegen ist die Anzahl der angelegten Rolladen durch das Modul auch richtig.Bezüglich meines 2. Punktes:
Der letzte Befehl der per ioBroker an das entsprechende Rollo gesendet wurde, sollte theortisch ja der Status des Rolladen sein.
Da iveo Rolläden leider Unidirektional sind, können Sie den Status ja nicht zurückmelden, deswegen würde es reichen den letzten Befehl "up, down, stop..." in einem DP zu speichern pro Rollo.Ich bin allerdings aus der Doku nicht 100% schlau geworden ob iveo auch die Gateway Events unterstützt. Nach meiner Ansicht erzeugt das Gateway für einen Befehl einen Event, allerdings weiß ich nicht ob solch ein Event auch erzeugt wird, wenn man die "normalen" Fernbedienung nutzt.
-
@rintrium Habe die Änderungen bei mir implementiert und lokal getestet. Hatte versucht ein Pull Request zu erstellen aber habe kein Zugriff. Wie soll ich dir am besten diese geben? patch.diff? Soll ich für das Projekt ein Fork machen? Was ist dir lieber?
EDIT: habe ein fork gemacht und dann ein PR erstellt -> https://github.com/Rintrium/ioBroker.selverf/pull/18
-
Ich habe gerade die Version 0.5.0 fertiggestellt.
@mrfenyx Ich habe deinen Code in der neuen Version integriert (wenn auch etwas umgeschrieben). Sender werden nun ebenfalls als Datenpunkte zur Verfügung gestellt. Meines Erachtens müssten sich darüber nun die Sender nutzen lassen, um beliebige Aktionen durch ioBroker durchzuführen.
@jostereo Bei den Iveo Aktoren ist nun ein Datenpunkt vorhanden, der das letzte Kommando speichert.
-
Ich habe leider das Problem das mit der Version 0.5.0 meine Rolladen (Iveo) nicht mehr fahren.
Der Wert den ich setze z.B. "down" wird auch in lastSentCommand richtig gesetzt, aber scheinbar wird nichts an das Gateway übermittelt.Im LogFile (auf Debug gestellt) gibt es auch keinen Eintrag nach drücken des "down" Buttons (auch bei den anderen Fahrarten "up", "stop", ...)
Ist da vielleicht noch Debugmäßig drin das das Kommando nicht an das Gateway gesendet wird?
Gruß,
jostereo
-
@jostereo
Fehler müsste behoben sein, fehlte nur ein Funktionsaufruf . Die neue Version ist schon online. -
Habe die Version 0.5.1 getestet.
Das Fahren der Rolladen erfolgt nun wieder.Allerdings wenn ich "drivePos2" setze, wird weder der Rolladen noch der lastSentCommand gesetzt.
Bei den anderen funktioniert es. (also down, up, stop, drivePos1)
Kannst du da bei Gelegenheit bitte nochmal schauen.
Desweiteren taucht seit Version 0.5.0 beim Fahren der Rolladen folgende Fehlermeldung im LOG auf. (Siehe Screenshot Log)
Das ist der Log Ausschnitt beim Fahren eines Rolladen.
Danke und Gruß,
jostereo
-
@jostereo Den Fehler für drivePos2 habe ich gerade gefixt.
Bevor ich eine neue Version hochlade, kannst du den Fehler aus dem Log nochmal reproduzieren, aber dabei den Adapter vorher auf Log-Stufe debug stellen? Am besten hier dann das Log ab Adapterstart posten, dann gucke ich mal, woran es liegen kann.
Viele Grüße
Rintrium -
Hmm komischerweise kann ich den oben genannten Fehler nicht mehr nachstellen bzw. reporduzieren.
Habe jetzt die 0.5.1 laufen und im Log (auch unter Debug) fallen dort keine Fehler mehr auf.Vielleicht hatte sich dort was "verhakt", da ich öfter zwischen den Versionen gesprungen bin, um das drivePos2 Problem zu untersuchen.
Ich werde mein LOG aber weiter beobachten, ob dort was zu sehen ist.
Gruß,
jostereo
-
@jostereo
Danke für die Rückmeldung. 0.5.2 ist jetzt onlineIch hatte es auch schonmal, dass Fehler bei den Nachrichten dekodieren vom Gateway aufgetreten sind, war nach Reinstallation des Adapters dann aber auch weg.. Ich vermute mal, irgendwas, was mit dem SerialPort zusammenhängt. In der normalen Benutzung seit knapp zwei Monaten hatte ich das aber nicht mehr, also vermute ich mal, dass das eher auftritt, wenn man zwischen Versionen wechselt und dabei die Kommunikation mit dem Gateway während des Nachrichten Sendens/Empfangens unterbricht.
Viele Grüße
Rintrium -
@rintrium
Erst mal vielen Dank für den Adapter!
Ich nutze ihn seit Oktober ohne Probleme. Wäre es möglich den Adapter im latest zu ergänzen? -
@rintrium gibt es irgendwo eine Anleitung, wie man das USB Gateway anlernt (raspberry pi - raspbian) oder funktioniert das per plug and play? Muss man die Rollos vorher unter Windows mit der Selve Software anlernen?
Vielen Dank für eine Rückmeldung. -
@android51
Erst die Rollos über das SelveTool unter Windows anlernen. Die angelernten Rollos werden dann über den Adapter aus dem USB Gateway ausgelesen...