Rollladen Antriebe der Fa. Selve per Funk und FHEM steuern

Begonnen von SELVE-Elektronik-Entwicklung, 13 Juli 2016, 13:46:46

Vorheriges Thema - Nächstes Thema

turo

Hallo SELVE  :),

Zitatsehr schöne Arbeit mit dem neuen Selve Commeo Modul. Endlich eine "vernünftige" Rückmeldung über die Position und Zustand des Rollladenantriebs. Ich habe hier mittlerweile einiges geprüft und ausprobiert.
Danke für die Blumen! Mich wundert, dass sich da noch keiner drangemacht hatte, denn nur mit der Rückmeldung kann man die Vorteile der Lösung mit SELVE Motoren richtig genießen. Ich habe inzwischen mal ausprobiert: Wenn ich das Rollo blockiere, bekomme ich sofort einen Alarm. Und wenn ich das Rollo mit der SELVE Fernbedienung oder mit direkt angeschlossenen Tastern steuere, bekommt FHEM das sofort mit!
ZitatZuerst musste ich jedoch einen weiteren USB-Stick mit dem Selve Commeo XML Gateway in den pi einstecken. Zusammen mit dem Intronic/Iveo Modul von Jostero hat es nicht auf einen Stick funktioniert. Ich weiß nicht ob das ein Problem von Linux ist oder ob es von den Perl Modulen selbst kommt. Der Selve Commeo XML Gateway beherrscht grundsätzlich beide Protokolle gleichzeitig. In der Praxis werden jedoch eher selten Mischanlagen mit Selve Iveo/Intronic und Selve Commeo vorkommen.
Das ist der Vorteil, wenn man an der Quelle sitzt ;-) Aber sonst ist mir das Verhalten klar: Es kann pro USB-Stick nur ein Gateway Modul geben. Aber es wäre kein Problem, die beiden Gateway Module zu mischen, so dass sich ein Modul ergibt, dass dann Commeo und Intronic Rollo Module gleichermaßen versorgt. Das kann ich ja mal machen... Testen müsste das dann jemand anderes.
ZitatDie Sache mit den 50% ist sicherlich etwas kniffelig. Man kann evtl. die "echten" 50% zuerst manuell einstellen (Rollladen genau auf die Mitte einstellen) und dann den Positionswert aus dem Antrieb auslesen. Danach muß man diesen Wert zur weiteren Berechnung speichern und in eine Art von Linearisierungsalgorithmus einbauen. Sicherlich ist der Wert auch abhängig von der mechanischen Anordnung des gesamten Rollladensystems. Ein Screen mit einer runden 40mm Tuchwelle hat ein deutlich anderes Wickelverhalten als ein normaler Rolladen mit einem 55mm Profil und einer Achtkant-Stahlwelle. Der Antriebsmotor selber kann aber nicht wissen, in welchem System er verbaut wurde.
Die Idee gefällt mir. Das Verhalten des Rollos sollte sich hinreichend genau mit einer quadratischen Funktion approximieren lassen. Für die Parameter dazu reichen mir drei Punkte. Oben und unten habe ich - also müsste ein weiterer Punkt in der Mitte genug sein. Da baue ich dann mal ein "set50" Kommando ein. Auf jeden Fall muss man das pro Rollo abspeichern.
ZitatIrgendwie habe ich auch noch ein Problem im Zusammenhang mit Alexa. Das Anfahren mit Prozentwerten funktioniert ohne Probleme. Der Sprachbefehl "Fahre Rollladen hoch" oder "Fahre Rolladen runter" fährt meist nur ein Stück und das auch noch in die falsche Richtung. Das muß ich aber über das Pfingstwochenende nochmals genauer analysieren. Mit dem Apple HomeKit habe ich leider noch keine Erfahrungen.
Bei mir funktionieren auch nur die "Prozentfahrten" mit Alexa richtig. Aber das ist ein Problem, dass man (diesmal nicht unbedingt ich...) mit etwas Konfiguration in der homebridge sicher lösen kann.

HomeKit funktioniert. "Hey Siri, fahre Couchrollo hoch!" habe ich gerade zu meiner Apple Watch gesagt und das Rollo fuhr hoch.
ZitatDas Ändern des Antriebsnamen mit "setLabel" hat bei mir nicht funktioniert.
Das habe ich gerade mal nachgeschaut: Das hat noch nie funktioniert - von den set Kommandos werden derzeit nur die Fahrbefehle tatsächlich gesendet. Der Code für die anderen Befehle fehlt einfach noch. (Bei einigen Befehlen wie "delete" ist das vielleicht auch gut so.  ;D
ZitatDen eigentlichen Einlernprozess über das Selve Tool durchzuführen finde ich super. Das muß hier in FHEM nicht eingebunden werden. Das macht die Sache noch komplizierter. Ich habe dort lediglich einen Offset in der AktorID festgestellt.
Im Selve Tool läuft die AktorID von 1-63, in FHEM aber von 0-62. Das könnte man evtl. noch anpassen.
Das sehe ich auch so: Das Windows Programm erfüllt seinen Zweck und beim Basteln ist es sowieso besser, ein Notebook mit dem eingesteckten Stick direkt vor Ort zu haben.

Zu der AktorID: Das könnte man natürlich anpassen. Aber der USB-Stick zählt auch von 0 an. Und das ist auch die sinvollste Art zu zählen. Aber zugegebenermaßen nicht für die Mehrheit der Menschen. Ich denke mal darüber nach.

ZitatWeiteres Hintergrundwissen und technischen Infos könnten wir evtl. auch direkt austauschen.
Gerne! Mich würde zum Beispiel interessieren, wie man etwa die Hinderniserkennung ausschaltet. Das war bei mir bei einem Rollo erforderlich, der nicht ganz rund läuft, und es ging nur mit der Fernbedienung.

Ansonsten wollte ich die Module jetzt noch etwas "abrunden" und mit Doku versehen und dann im passenden Bereich des Forums mal vorstellen (im Moment sind wir ja hier in der Wunschliste).

Gruss,
Turo
3xRaspberry PI, Homematic, SELVE Rollos, 1-wire, Logitech Harmony, Alexa, Fussbodenheizung (ESP8266), Netatmo

turo

Zum Thema "Linearisierung":

Hat schon jemand mal nachgemessen und und kann eine kleine Tabelle mit Messwerten (gemessene Position, vom Motor gemeldete Position) liefern? Am besten für verschiedene Rollos?

Ansonsten würde es mich wundern, wenn nicht bei der Fa. SELVE ein paar gut erreichbare Fenster für Demonstration, Ausbildung oder Entwicklung aufgebaut sind. Vielleicht könnte man da mal einen Azubi mit einem Maßstab vorbeischicken...

Gruss,
Turo
3xRaspberry PI, Homematic, SELVE Rollos, 1-wire, Logitech Harmony, Alexa, Fussbodenheizung (ESP8266), Netatmo

turo

#62
Und noch ein letztes für heute (dann ist ernsthafte Arbeit dran...):

Hier ist ein "konsolidiertes" Gateway Modul. Es ersetzt das 70_SELVEGatewayCommeo Modul und bedient sowohl das 70_SELVECommeo als auch das 70_SELVE Modul für Iveo Rollos. Das kann ich nur nicht testen. Die Set- und Get-Kommandos für Iveo habe ich umbenannt um Namenskonflikte aufzulösen.

Außerdem ist das Parsen der Nachrichten vom Gateway jetzt deutlich robuster und verträgt auch mehrere Antworten direkt hintereinander.

Edit: Noch schnell ein kleines, aber wichtiges Update, was einen Absturzfehler behebt. (Es werden jetzt auch event.log Meldungen gelesen und die sind manchmal anders formatiert.)

Gruss,
Turo
3xRaspberry PI, Homematic, SELVE Rollos, 1-wire, Logitech Harmony, Alexa, Fussbodenheizung (ESP8266), Netatmo

SELVE-Elektronik-Entwicklung

Die Ereignisse um den USB Selve XML Gateway machen in kurzer Zeit einen sehr großen Schritt nach vorne. Nochmals vielen Dank an Turo.

Falls Turo  noch immer Langeweile hat (hi.....), könnte ich noch eine aktuelle Selve Markisensensorik zur Verfügung stellen. Dann könnte man noch Sensordaten für Regen, Temperatur, Windgeschwindigkeit und Sonneneinstrahlung in das FHEM System einspeisen. Der USB Gateway kann das natürlich auch verwalten. Man muß "nur noch" die Daten abholen.

Die Hinderniserkennung bei den sogenannten SELVE SEL-Antrieben, kann man natürlich abschalten. Dazu kann man entweder einen SELVE Multisend benutzen oder auch einen normalen Standard Handsender. Wie es funktioniert, steht in der Anleitung zum Antrieb. Die Anleitung kann man sich auf der Selve Hompage downloaden. Aber Achtung. Dann funktioniert natürlich auch der
Auflaufschutz nicht mehr. Die Rollladenanlage könnte dann Schaden nehmen. Besser wäre es, die Mechanik der Anlage zu prüfen. Eigentlich sollte die Hinderniserkennung nur ansprechen, wenn wirklich
ein Hindernis vorliegt, nicht wenn die Anlage "hackelt". Mit dem USB Selve XML Gateway kann man die Hinderniserkennung nicht abschalten.

So jetzt werde ich erst mal eine Selve Mischanlage mit Iveo/Commeo prüfen.

Gruß SELVE-Elektronik-Entwicklung




Selve GmbH & Co.KG
Hardware-Entwicklung
58513 Lüdenscheid

turo

ZitatFalls Turo  noch immer Langeweile hat (hi.....), könnte ich noch eine aktuelle Selve Markisensensorik zur Verfügung stellen. Dann könnte man noch Sensordaten für Regen, Temperatur, Windgeschwindigkeit und Sonneneinstrahlung in das FHEM System einspeisen. Der USB Gateway kann das natürlich auch verwalten. Man muß "nur noch" die Daten abholen.
Langeweile habe ich zwar nicht und auch keine Markise - dafür schon Sensoren für Regen, Temperatur und Sonne. Aber ich habe noch keinen Windsensor und die Aussicht, mit neuer Hardware basteln zu können, wirkt direkt auf mein Belohnungszentrum. Ich denke also, da liesse sich was machen - ich schreibe mal eine PN.

Gruss,
Turo
3xRaspberry PI, Homematic, SELVE Rollos, 1-wire, Logitech Harmony, Alexa, Fussbodenheizung (ESP8266), Netatmo

turo

#65
So, hier noch ein kleines Update zu den SELVE Modulen.

Wesentliche Änderungen:

  • Das Parsen der Meldungen ist jetzt wesentlich robuster: Es werden auch mehrere direkt aufeinanderfolge Antworten sicher gelesen. Fault und Logmeldungen werden ebenfalls interpretiert.
  • Zu sendende Kommandos werden in eine Warteschlange eingereiht und schön der Reihe nach gesendet: Erst wenn ein Kommando bestätigt wurde, kommt das nächste. (So steht es in der Spezifikation und das Gateway jammert tatsächlich, wenn es mehr als 2 Rollos quasi gleichzeitig fahren soll.)
  • Es gibt ein neues Modul SELVEsender, mit dem Befehle einer SELVE Commeo Fernbedienung in FHEM Aktionen umgesetzt werden können.
  • Es gibt ein neues Modul SELVEsensor, mit dem eine SELVE Commeo Sensorik angebunden werden kann. (Noch nicht erfolgreich getestet: Mein Sensor liefert leider unmögliche Werte. Aber ich glaube nicht, dass das an meinem Code liegt.)
Einige Module haben jetzt auch eine Doku - leider am wenigstens das SELVEGateway.

Kurzinfo für diejenigen, die mit Sensor oder Sender testen wollen: Das automatische Anlernen sollte funktionieren. Man muss nur   get <gateway_device> SenderTeachStart bzw. get <gateway_device> SensorTeachStart starten und dann innerhalb von 4 Minuten die Anlernfunktion am Gerät auslösen (bei der Fernbedienung lange Select drücken). Mit SenderTeachResult kann man das Ergebnis in den Internals sehen. Bei der Fernbedienung dann noch mit "prog" bestätigen und mit "select" lang wieder ausschalten. Das SELVEsender/sensor Device sollte dann per Autocreate beim ersten Event angelegt werden.

Gruss,
Turo
3xRaspberry PI, Homematic, SELVE Rollos, 1-wire, Logitech Harmony, Alexa, Fussbodenheizung (ESP8266), Netatmo

SAWbri

Danke an turo für die ganze Arbeit!

Zitat von: turo am 03 Juni 2018, 20:23:22
  • Es gibt ein neues Modul SELVEsender, mit dem Befehle einer SELVE Fernbedienung in FHEM Aktionen umgesetzt werden können.

Dies gilt wahrscheinlich nur für Commeo-Ferbedienungen und nicht für Iveo oder?

turo

ZitatDies gilt wahrscheinlich nur für Commeo-Ferbedienungen und nicht für Iveo oder?
Ja, sorry, das hätte ich erwähnen sollen: Alles schöne und neue geht nur mit Commeo. Für Iveo gibt es im Gateway nur die Rollosteuerung.

Gruss,
Turo
3xRaspberry PI, Homematic, SELVE Rollos, 1-wire, Logitech Harmony, Alexa, Fussbodenheizung (ESP8266), Netatmo

jostereo

@Turo

Da ich gerade dabei bin mein FHEM neu einzurichten und damit auch die Rolladen (SELVE Iveo) neu aufzusetzen, wollte ich gerne mal wissen wie das aktuelle Vorgehen für Iveo ist.

Wenn ich das richtig verstanden habe, brauche ich ja eigentlich nur das Modul "70_SELVEGateway".

Dann fehlt mir allerdings bzw. ich habe es irgendwo übersehen, eine Punkt wo ich meine Rolläden konfiguriere bzw. sie per define anlege.

Über meine alte "70_SELVE.pm", die ja jeweils einen Rolladen repräsentiert, kann es nicht mehr funktionieren, da sich die Commands im Gateway geändert haben.

Vielleicht kannst du mir kurz Hilfestellung geben?

turo

@jostereo

Sorry für die verspätete Antwort, aber ich war ein paar Wochen in Urlaub und habe diesen in weitestgehender Netzabstinenz verbracht.

Dein 70_SELVE sollte mit meinem 70_SELVEGateway einfach so zusammenarbeiten können - die Konfiguration hat sich damit auch nicht geändert: Ein "SELVE" für jedes Iveo Rollo.

Ich habe bei mir auch mal versuchweise ein Iveo Rollo definiert ("define FAKEROLLO SELVE 1 1") und der Gateway sendet auch laut Log auch brav Befehle an das nicht vorhandene Rollo.

Falls es nicht klappt, melde Dich und ich schaue noch mal drauf!

Gruss,
Turo
3xRaspberry PI, Homematic, SELVE Rollos, 1-wire, Logitech Harmony, Alexa, Fussbodenheizung (ESP8266), Netatmo

Frank Palme

Hallo zusammen...Anfänger braucht dringend eure Hilfe.

ich kriege den USB Stick (Selve) nicht angelernt. Bekomme den Fehler....Unknown module /dev/ttyUSB0

Der Stick ist definitiv nicht defekt da er mit der Windows Software von Selve einwandfrei funktioniert. Alle Rolläden sind in dem Stick mit der Windows Software angelernt .

Kann mir jemand bitte noch mal genau schreiben was ich machen muss oder was ich falsch gemacht habe. Danke schon mal in vorraus...v.g Frank

turo

Hallo Frank,

normalerweise würde ich darauf tippen, dass der Stick bei Dir ein anderes Device geworden ist. Aber da passt die Fehlermeldung "unknown module" nicht ganz... Hast Du meine Module in das "FHEM" Verzeichnis bei Dir kopiert?

Gib doch mal ein paar mehr Infos! (Welches System? Wie sieht Dein define aus? Wie ist die komplette Fehlermeldung?)
Der Output "dmesg|grep USB" könnte auch hiflreich sein. (In Code Tags bitte.)

Gruss,
Turo
3xRaspberry PI, Homematic, SELVE Rollos, 1-wire, Logitech Harmony, Alexa, Fussbodenheizung (ESP8266), Netatmo

Frank Palme

Hallo Turo,
Beide Module sind im Fhem/Fhem Ordner kopiert. Mein System besteht aus einem Raspberry 3b+ mit RASPBIAN STRETCH LITE.
Hatte auch RASPBIAN STRETCH WITH DESKTOP drauf.....gleicher Fehler bei Fhem ....unbekanntes Modul
Wenn ich bei Fhem ..define 70_SELVEGateway /dev/ttyUSB0 ein gebe kommt der Fehler.....Unknown module /dev/ttyUSB0
Der Ordner /dev/ttyUSB0 .....ist vorhanden.

dmesg/grep USB

0.718075] dwc_otg 3f980000.usb: new USB bus registered, assigned bus number 1
[    0.727401] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    0.729715] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.739413] hub 1-0:1.0: USB hub found
[    0.793515] usbhid: USB HID core driver
[    1.171409] usb 1-1: new high-speed USB device number 2 using dwc_otg
[    1.411663] usb 1-1: New USB device found, idVendor=0424, idProduct=2514
[    1.413518] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    1.415915] hub 1-1:1.0: USB hub found
[    1.731424] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[    1.861712] usb 1-1.1: New USB device found, idVendor=0424, idProduct=2514
[    1.864141] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    1.867249] hub 1-1.1:1.0: USB hub found
[    1.971425] usb 1-1.3: new full-speed USB device number 4 using dwc_otg
[    2.150144] usb 1-1.3: New USB device found, idVendor=0403, idProduct=6015
[    2.152820] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    2.651441] usb 1-1.1.1: new high-speed USB device number 5 using dwc_otg
[    2.781834] usb 1-1.1.1: New USB device found, idVendor=0424, idProduct=7800
[    2.784822] usb 1-1.1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    4.284679] usbserial: USB Serial support registered for generic
[    4.315772] usbserial: USB Serial support registered for FTDI USB Serial Device
[    4.316057] ftdi_sio 1-1.3:1.0: FTDI USB Serial Device converter detected
[    4.317121] usb 1-1.3: FTDI USB Serial Device converter now attached to ttyUSB0

Hier noch Logfile
2018.09.26 22:17:15 0: Featurelevel: 5.8
2018.09.26 22:17:15 0: Server started with 12 defined entities (fhem.pl:17329/2018-09-12 perl:5.024001 os:linux user:fhem pid:441)
2018.09.26 23:25:24 1: Including fhem.cfg
2018.09.26 23:25:24 3: telnetPort: port 7072 opened
2018.09.26 23:25:25 3: WEB: port 8083 opened
2018.09.26 23:25:25 3: WEBphone: port 8084 opened
2018.09.26 23:25:25 3: WEBtablet: port 8085 opened
2018.09.26 23:25:25 2: eventTypes: loaded 5 events from ./log/eventTypes.txt
2018.09.26 23:25:25 1: Including ./log/fhem.save
2018.09.26 23:25:25 1: usb create starting
2018.09.26 23:25:25 3: Probing CUL device /dev/ttyAMA0
2018.09.26 23:25:26 3: Probing TCM_ESP3 device /dev/ttyAMA0
2018.09.26 23:25:26 3: Probing ZWDongle device /dev/ttyAMA0
2018.09.26 23:25:26 3: Probing FRM device /dev/ttyAMA0
2018.09.26 23:25:31 3: Probing TCM_ESP3 device /dev/ttyUSB0
2018.09.26 23:25:31 3: Probing TCM_ESP2 device /dev/ttyUSB0
2018.09.26 23:25:32 3: Probing FHZ device /dev/ttyUSB0
2018.09.26 23:25:32 3: Probing TRX device /dev/ttyUSB0
2018.09.26 23:25:33 3: Probing ZWDongle device /dev/ttyUSB0
2018.09.26 23:25:33 3: Probing FRM device /dev/ttyUSB0
2018.09.26 23:25:38 1: usb create end
2018.09.26 23:25:38 0: Featurelevel: 5.8
2018.09.26 23:25:38 0: Server started with 12 defined entities (fhem.pl:17329/2018-09-12 perl:5.024001 os:linux user:fhem pid:421)


Habe jetzt schon seeeeehr viel gelesen aber da ist irgendwie der Wurm drin... :-[ :-[ :-\V.g Frank

turo

Das define braucht noch einen Namen:

define FrankGW 70_SELVE ...

Von unterwegs,
Turo
3xRaspberry PI, Homematic, SELVE Rollos, 1-wire, Logitech Harmony, Alexa, Fussbodenheizung (ESP8266), Netatmo

Frank Palme

man man...daran lag es...einen Namen....super vielen vielen Dank Turo.

Eine Frage habe ich aber noch...bevor ich noch Stunden lese und dann sowieso nicht weiter komme :) :)
Wie mache ich meine angerlernte Antriebe (selve Windows Software) sichtbar?
ID anlegen ??? Wie???
V.g Frank