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

trabantp60

@ Turo:
Vielen Dank für Deine Mühe und Zeit!
Ist ja nicht selbstverständlich...

turo

#91
Hallo,

hier noch eine aktualisierte Version des 70_SELVEGateway.pm Moduls. Ich habe bei mir beobachtet, dass gelegentlich einzelne Rollos nicht gefahren sind (so einmal die Woche...). Die Analyse zeigte, dass in diesen Fällen das Gateway kommentarlos nicht reagiert hat. Jetzt werden Befehle automatisch bis zu 2x wiederholt, wenn sie nicht innerhalb von 2s vom Gateway bestätigt werden.

Damit (und mit den letzten Änderungen des Zusammenfassens von Befehlen) sollte das Modul jetzt "krisenfest" sein.

Ich denke, ich werde mit den Modulen dann auch von der Wunschliste in einen anderen Bereich des Forums umziehen - dann kann ich dort wie allgemein üblich auch die aktuelle Version im 1. Post pflegen.

Als sonstige Änderungen habe ich noch periodische Abfragen eingebaut: Das Gateway wird jetzt alle 660 Sekunden vollständig abgefragt.

Einige Bitmasken in den Internals habe ich in Listen von IDs umgebaut. Das ist das Format, was auch bei der Eingabe verwendet werden muss und ist vermutlich für den Großteil der Menschheit besser lesbar.

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

trabantp60

Hallo Turo,

eine Fehlermeldung kann ich noch beitragen:

2019.01.26 21:49:08 5: SELVEGateway: Received data: <?xml version="1.0"? encoding="UTF-8">
<methodResponse>
   <array>
      <string>selve.GW.command.device</string>
      <int>1</int>
   </array>
</methodResponse>


2019.01.26 21:49:08 5: SELVEGateway: FOUND Method Response or Call
2019.01.26 21:49:08 3: SELVEGateway: ERROR: discarding unreadable input: "
<?xml version="1.0"? encoding="UTF-8">"
2019.01.26 21:49:08 5: SELVEGateway: $VAR1 = {
          'array' => {
                     'int' => '1',
                     'string' => 'selve.GW.command.device'
                   }
        };

2019.01.26 21:49:08 4: SELVEGateway: received message: selve.GW.command.device
2019.01.26 21:49:08 4: SELVEGateway: selve.GW.command.device returned 1
2019.01.26 21:49:08 5: SELVEGateway: Received data: <?xml version="1.0"? encoding="UTF-8">
<methodCall>
<methodName>selve.GW.command.result</methodName>
   <array>
      <int>1</int>
      <int>1</int>
      <int>1</int>
      <base64>BAAAAAAAAAA=</base64>
      <base64>AAAAAAAAAAA=</base64>
   </array>
</methodCall>


2019.01.26 21:49:08 5: SELVEGateway: FOUND Method Response or Call
2019.01.26 21:49:08 3: SELVEGateway: ERROR: discarding unreadable input: "
<?xml version="1.0"? encoding="UTF-8">"
2019.01.26 21:49:08 5: SELVEGateway: $VAR1 = {
          'array' => {
                     'base64' => [
                                 'BAAAAAAAAAA=',
                                 'AAAAAAAAAAA='
                               ],
                     'int' => [
                              '1',
                              '1',
                              '1'
                            ]
                   },
          'methodName' => 'selve.GW.command.result'
        };

Ich kann den Fehler nicht interpretieren, nur als Input in die Diskussion zurückgeben.

turo

Zitat von: trabantp60 am 27 Januar 2019, 22:16:26
Hallo Turo,

eine Fehlermeldung kann ich noch beitragen:

2019.01.26 21:49:08 5: SELVEGateway: Received data: <?xml version="1.0"? encoding="UTF-8">
...
Dein Gateway spricht seltsam: Das sollte eigentlich <?xml version="1.0" encoding="UTF-8"?> heißen.

Ist aber nicht tragisch: Das Modul kann nur mit dem Header in dieser Form nichts anfangen und meckert ihn daher an. Ignoriert wird er sowieso und dient keinem weiteren Zweck. Ich ändere es mal so ab, dass auch Deine Variante ohne Murren akzeptiert wird.

Was ist die Firmwareversion Deines Gateways (steht mit dem neuesten Modul automatisch im Internal gwFirmwareVersion - bei mir steht da 36.6.4.2)? Ein Update gibt es bei SELVE unter https://www.selve.de/de/service/software-updates/service-entwicklungstool-commeo-usb-rf-gateway/.

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

trabantp60

#94
Ich bin bereits bei Firmwarestand 17.04.05.01 - Juhu!
(und das Updatefeld ist ausgegraut in der Windowssoftware, also ich kann das FW-File gar nicht flashen)

Habe heute bei SELVE auch noch einmal wegen der SW-Anpassung zum Anfahren der Endlagen mittels Tasterdruck am hartverdrahteten Taster  nachgefragt. Bin damit aber eher auf wenig Verständnis gestoßen, da sie nicht auf jeden Kundenwunsch eigehen können.
Ich hätte mich halt gefreut, wenn wenigstens die Prüfung des Aufwandes möglich gewesen wäre, das auch ohne FHEM zu realisieren.


... und in FHEM steht da beim Gateway "gwFirmwareVersion 35.4.5.1"

csoelch

Guten Abend,

ich hätte da mal zwei Anliegen:

1)
Gibt es die Möglichkeit bzw. ein Beispiel, wie man in Homekit den Schalter bzw. Blind integriert mit den 5 bekannten Stufen up down stop Pos1 Pos2 ? Derzeit habe ich zwar ein dummy erzeugt und über Homebridgemapping in Homekit integriert, hier geht aber derzeit nur up oder down.

2)
Die fhem.cfg meldet beim speichern "unknown userattr". Dies liegt vermutlich an folgendem userattr "room_map structexclude".
Sobald ich dieses aus der fhem.cfg lösche und speichere, ist der Fehler verschwunden. Nachdem aber Shutdown Restart durchgeführt wurde, wird dieses Attribut wieder automatisch gesetzt. In den einzelnen definierten Rollos, wenn man dort dieses Attribut auswählt und versucht neu zu setzen, kommt die gleiche Fehlermeldung. Wo liegt das Problem? Kann man das userattr auch global setzen? Habs versucht, aber ohne Erfolg (vielleicht auch einfach falsch eingetragen weil im Attribut ja das Leerzeichen zwischen map und structexclude ist).

Wäre für etwas Hilfe sehr dankbar.

Übrigens, den Punkt 2) habe ich ebenfalls schon als separaten Beitrag im Forum angefragt, bisher aber noch keine genaue Lösung erhalten.


jostereo

@Turo

Nach ewig langer Zeit wollte ich mich auch noch mal bezüglich der Iveo Steuerung melden.

Ich nutze noch das "alte" Selve Modul für die Iveo Antriebe, aber die neueste Version des Gateway-Moduls hier aus dem Thread.

Ganz unten gibt es noch einen Fehler das die Funktionselve.GW.iveo.commandResult nicht mehr implementiert ist.
Ist das richtig?

Dann müsste ich den Selve Iveo Teil nochmal anpassen.

Hier ein LOG vom Fahren eines Antriebes. (Sowohl Antrieb als auch Gateway auf Verbose 5)

2019.01.30 13:34:36 5: SET-CMD: selve.GW.iveo.commandManual:1 ; AgAAAAAAAAA=
2019.01.30 13:34:36 5: SPLITARRAY: 2
2019.01.30 13:34:36 5: COMMAND-TYPE: manual
2019.01.30 13:34:36 5: SELVEGateway: GW_WRITE called: selve.GW.iveo.commandManual
2019.01.30 13:34:36 5: SELVEGateway: SendGWCommand CALLED: selve.GW.iveo.commandManual
2019.01.30 13:34:36 3: SELVEGateway: Queuing command: selve.GW.iveo.commandManual, selve.GW.iveo.commandManual AgAAAAAAAAA= 1
2019.01.30 13:34:36 4: SELVEGateway: Running command: selve.GW.iveo.commandManual, selve.GW.iveo.commandManual AgAAAAAAAAA= 1
2019.01.30 13:34:36 5: SELVEGateway: SendCommand CALLED: <methodCall><methodName>selve.GW.iveo.commandManual</methodName><array><base64>AgAAAAAAAAA=</base64><int>1</int></array></methodCall>
2019.01.30 13:34:36 5: SW: 3c6d6574686f6443616c6c3e3c6d6574686f644e616d653e73656c76652e47572e6976656f2e636f6d6d616e644d616e75616c3c2f6d6574686f644e616d653e3c61727261793e3c6261736536343e41674141414141414141413d3c2f6261736536343e3c696e743e313c2f696e743e3c2f61727261793e3c2f6d6574686f6443616c6c3e
2019.01.30 13:34:36 5: SELVEGateway: Received data: <?xml version="1.0"? encoding="UTF-8">
<met
2019.01.30 13:34:36 5: SELVEGateway: Received data: hodResponse>
<array>
<string>selve.GW.iveo.commandManual</string>
<int>1</int>
</array>
</methodResponse>


2019.01.30 13:34:36 5: SELVEGateway: FOUND Method Response or Call
2019.01.30 13:34:36 2: SELVEGateway: ERROR: discarding unreadable input: "
<?xml version="1.0"? encoding="UTF-8">"
2019.01.30 13:34:36 5: SELVEGateway: $VAR1 = {
          'array' => {
                     'string' => 'selve.GW.iveo.commandManual',
                     'int' => '1'
                   }
        };

2019.01.30 13:34:36 4: SELVEGateway: received message: selve.GW.iveo.commandManual
2019.01.30 13:34:36 2: SELVEGateway: unknown or unimplemented function: selve.GW.iveo.commandManual
2019.01.30 13:34:36 5: SELVEGateway: Received data: <?xml v
2019.01.30 13:34:36 5: SELVEGateway: Received data: ersion="1.0"? encoding="UTF-8">
<methodCall>
<methodName>selve.GW.iveo.commandResult</methodName>
<array>
<int>1</int>
<base64>AgAAAAAAAAA=</base64>
<int>0</int>
</array>
</methodCall>


2019.01.30 13:34:36 5: SELVEGateway: FOUND Method Response or Call
2019.01.30 13:34:36 2: SELVEGateway: ERROR: discarding unreadable input: "
<?xml version="1.0"? encoding="UTF-8">"
2019.01.30 13:34:36 5: SELVEGateway: $VAR1 = {
          'methodName' => 'selve.GW.iveo.commandResult',
          'array' => {
                     'int' => [
                              '1',
                              '0'
                            ],
                     'base64' => 'AgAAAAAAAAA='
                   }
        };

2019.01.30 13:34:36 4: SELVEGateway: received message: selve.GW.iveo.commandResult
2019.01.30 13:34:36 2: SELVEGateway: unknown or unimplemented function: selve.GW.iveo.commandResult


Hier nochmal mit Gateway auf Verbose 5:
2019.01.30 13:36:55 5: SELVEGateway: GW_WRITE called: selve.GW.iveo.commandManual
2019.01.30 13:36:55 5: SELVEGateway: SendGWCommand CALLED: selve.GW.iveo.commandManual
2019.01.30 13:36:55 3: SELVEGateway: Queuing command: selve.GW.iveo.commandManual, selve.GW.iveo.commandManual AgAAAAAAAAA= 3
2019.01.30 13:36:55 4: SELVEGateway: Running command: selve.GW.iveo.commandManual, selve.GW.iveo.commandManual AgAAAAAAAAA= 3
2019.01.30 13:36:55 5: SELVEGateway: SendCommand CALLED: <methodCall><methodName>selve.GW.iveo.commandManual</methodName><array><base64>AgAAAAAAAAA=</base64><int>3</int></array></methodCall>
2019.01.30 13:36:55 5: SW: 3c6d6574686f6443616c6c3e3c6d6574686f644e616d653e73656c76652e47572e6976656f2e636f6d6d616e644d616e75616c3c2f6d6574686f644e616d653e3c61727261793e3c6261736536343e41674141414141414141413d3c2f6261736536343e3c696e743e333c2f696e743e3c2f61727261793e3c2f6d6574686f6443616c6c3e
2019.01.30 13:36:55 5: SELVEGateway: Received data: <?xml version="1.0"? encoding="UTF-8">
<methodResponse>
<array>
<string>selve.GW.iveo.commandManual</string>
<int>1</int>
</array>
</methodResponse>


2019.01.30 13:36:55 5: SELVEGateway: FOUND Method Response or Call
2019.01.30 13:36:55 2: SELVEGateway: ERROR: discarding unreadable input: "
<?xml version="1.0"? encoding="UTF-8">"
2019.01.30 13:36:55 5: SELVEGateway: $VAR1 = {
          'array' => {
                     'int' => '1',
                     'string' => 'selve.GW.iveo.commandManual'
                   }
        };

2019.01.30 13:36:55 4: SELVEGateway: received message: selve.GW.iveo.commandManual
2019.01.30 13:36:55 2: SELVEGateway: unknown or unimplemented function: selve.GW.iveo.commandManual
2019.01.30 13:36:55 5: SELVEGateway: Received data: <?xml v
2019.01.30 13:36:55 5: SELVEGateway: Received data: ersion="1.0"? encoding="UTF-8">
<metho
2019.01.30 13:36:55 5: SELVEGateway: Received data: dCall>
<methodName>selve.GW.iveo.commandResult</methodName>
<array>
<int>3</int>
<base64>AgAAAAAAAAA=</base64>
<int>0</int>
</array>
</methodCall>


2019.01.30 13:36:55 5: SELVEGateway: FOUND Method Response or Call
2019.01.30 13:36:55 2: SELVEGateway: ERROR: discarding unreadable input: "
<?xml version="1.0"? encoding="UTF-8">"
2019.01.30 13:36:55 5: SELVEGateway: $VAR1 = {
          'array' => {
                     'base64' => 'AgAAAAAAAAA=',
                     'int' => [
                              '3',
                              '0'
                            ]
                   },
          'methodName' => 'selve.GW.iveo.commandResult'
        };

2019.01.30 13:36:55 4: SELVEGateway: received message: selve.GW.iveo.commandResult
2019.01.30 13:36:55 2: SELVEGateway: unknown or unimplemented function: selve.GW.iveo.commandResult



Mein Gateway hat die Version:

gwFirmwareVersion: 34.17.35.1


Bezüglich des hier schon gemeldeten XML Header Fehlers.

Danke und Gruß,

jostereo

trabantp60

nach Rücksprache mit 3 Mitarbeitern von SELVE nun der (zufriedenstellende) folgende Endstand:

der XML-Header wurde mit der FW vom 12.02.18 (18.02.12.01) korrigiert und es werden nun auch bei mir keine Fehlermeldungen mehr angezeigt.
(Die FW ist allerdings nicht auf der Website verfügbar, aber (nach Freigabe) durch SELVE über einen Downloadlink zu einem FTP-Server downloadbar)

Der sehr freundliche Mitarbeiter Nr.3 von SELVE löste dann auch Aufgabe mit der Bedienung durch den Taster (hardwareseitig) ohne FHEM:
Die SEL-Plus RC Aktoren können im Konfigurationsmodus für autorisiertes Fachpersonal (Anleitung in der Bedienungsanleitung des Aktors Punkt 5.2.7) mit einem WallSend oder Multisend (leider nicht mit der Gateway-Software, vielleicht mit FHEM???) vom Totmannbetrieb in den Signalbetrieb umkonfiguriert werden. Danach fährt der Aktor mit 1s auf down in die untere Endlage, 1s auf up in die obere Endlage, Doppelklick auf down in Pos1 und Doppelklick auf up in Pos2.

PERFEKT!!!

...vielleicht hilts ja jemandem

turo

Zitat von: trabantp60 am 30 Januar 2019, 18:04:23
... (leider nicht mit der Gateway-Software, vielleicht mit FHEM???) ...
Da muss ich Euch leider enttäuschen: Es gibt Funktionen wie das Setzen von speziellen Einstellungen im Motor, die nicht über das Gateway ausgelöst werden können. Die Spezifikation enthält keine Befehle dafür. (Das schliesst natürlich nicht aus, dass es spezielle undokumentierte Befehle gibt, aber das werden wir wohl nie erfahren...)

Aber der Hinweis, bei speziellen Problemen mal die Anleitung intensiv zu konsultieren, ist was wert. Ich habe auch bei mir bei einem Motor die Hinderniserkennung ausgeschaltet, weil der Panzer dort zu ungleichmäßig läuft und immer ruckelt, was die Hinderniserkennung auslöst. (Keine Angst: Das ist ein nicht erreichbares Fenster, da wird keiner verletzt...)

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

turo

#99
@jostereo

Die Antworten auf die iveo Kommandos wurden im Modul noch nicht berücksichtigt. Ich habe das mal schnell eingebaut, kann es nur nicht testen.

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

jostereo

Zitat von: turo am 30 Januar 2019, 21:48:54
@jostereo

Die Antworten auf die iveo Kommandos wurden im Modul noch nicht berücksichtigt. Ich habe das mal schnell eingebaut, kann es nur nicht testen.

Gruss,
Turo

Super danke, die Log Meldungen sind verschwunden.

Also sieht das für Iveo auch wieder sauber aus.

SELVE-Elektronik-Entwicklung

Die Firmware für den SELVE XML USB-RF Gateway wurde auf Softwarestand 18.06.04.02 geändert.

Diese Firmware kann auf der SELVE Homepage als zip-Datei im Service Bereich heruntergeladen werden. Dort wurde u.a. der Fehler mit
dem Firmware Header und der Zwischenposition bei Iveo Aktoren behoben.

Zusätzlich wurde die Möglichkeit geschaffen, auch die Selve Sensoren mit dem XML-USB Gateway zu verwalten.
Selve GmbH & Co.KG
Hardware-Entwicklung
58513 Lüdenscheid

Deinjo

Hallo zusammen,

wollte hier mal nachfragen...
Hat von Euch auch jemand Probleme mit "Unknown attr userattr"? Es scheint einen Zusammenhang mit dem Selve-Modul zu geben.

Details siehe: https://forum.fhem.de/index.php/topic,96665.0.html

Danke
Deinjo
rPi3, Jessie, FHEM 5.7
CUL, Homematic, WeMos, FritzDect, TableUI,...

turo

Zwei sind schon mal mehr als einer...

Aber "room_map" kommt im Code der SELVE Module nicht einmal vor.

Eure Fehlermeldungen sind noch etwas vage: Könnt Ihr das vielleicht noch etwas aufbereiten? (So nach: Aktion, erwartetes Verhalten und beobachtes Verhalten). Und mal einen Auszug der wesentlichen Teile aus fhem.cfg und dem list der Devices. (Code Tags!)

Und keinesfalls die Worte "scheint", "anscheinend" oder Derivate davon verwenden.

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

dirk@laurenz.ws

Hallo liebe Community,

nach dem lesen des Threads frage ich mich, welches jetzt die aktuellen Module sind, bzw. die richtige Kombination.
Des weiteren habe ich das RF  Gateway am Windows PC mit allen Rolläden schon programmiert. Kann ich das einfach übernehmen?

Gruß

Dirk