Somfy / RTS Funkprotokoll und Geräte

#21

Danke für deine 5 Minuten googlen, @pmayer. Das mit dem USB habe ich natürlich auch gesehn, darum mein Poste, da ich am Handy war - dumme Angewohnheit bei Responsce-Pages :wink: - habe ich mich hier wohl etwas zu kurz gefasst.
Eigentlich wolte ich fragen, ob es möglich ist, also dir bekannt, ob und wie ich der Node vorgaukeln kann, mit SPI anstelle USB zu kommunizieren.

Hast natürlich recht, dazu kommt das Problem mit 868 vs 433.42 MHz.

Hab bei mir in der Bastelkiste noch JeeNodes USB V3 von jeelabs.org (www.jeelabs.org/ju3) gefunden, und probiere jetzt mal damit, ob ich was lauschen/senden kann, bevor ich mich dann an Node-red mache.

1 Like
#22

Du müsstest eben alles was in der culFW für Somfy implementiert ist auf dem Pi per SPI implementieren, damit das funktioniert. Ich glaube nicht, dass das auf die Schnelle geht. Sathya hat dazu ja schon was gesagt: geplant, aber leider keine Prio…

#23

Danke @pmayer ja, ich glaube ich muss hier aufgeben und warten, bis es @sathya implementiert hat. Ich versteh leider zu wenig von der Materie. Ich biete mich dafür gerne als Betatester an.

1 Like
#24

So, heute endlich ein Schrittchen weiter:

Ich habe danke folgenden Blogs einen Wemos D1 zusammen mit einem 433.92 Mhz Transmitter als Fernbedienung nutzen können. Die Reichweite trotz nicht optimaler Frequenz (RTS hätte 433.42 Mhz) langt mit 5 Metern gutzum Testen.

Arduino: https://github.com/Nickduino
ESP8266: https://4x5mg.inphoto.co.il/2018/06/10/controlling-somfy-blinds-with-esp8266/
Somfy RTS: https://pushstack.wordpress.com/somfy-rts-protocol/

Der Code für den ESP8266 ist leider nicht veröffentlicht, ich konnte ihn jedoch einfach nachbauen. Nickduino verwendet direktes Porthandling für AVR, das muss für den ESP angepasst werden. Ebenso der Nutzen des EEPROMS für den Rollingcode, hier hatte ich jedoch noch keinen Erfolg.

Benötigt werden eine ID für die Fernbedienung, ein fortlaufender Rollingcode und dann gibt es die folgenden Befehle:

#define HAUT 0x2   <---- Motor auf
#define STOP 0x1   <---- Motor Stop/My Position
#define BAS 0x4      <---- Motor ab
#define PROG 0x8   <---- Fernbedienung anlernen

Angelernt wird die Fernbedienung, in dem auf einer bestehenden Fernbedienung die Programmiertaste gedrückt wird, die Jalousien fahren kurz hoch runter, dann wird der Befehl 0x8 gesendet. Wenn die Jalousien nun ebenfalls mit hoch runter reagieren, ist gut.

Ich könnte mir das auch für mqtt vorstellen: die Fernbedienungs ID als Topic und die Befehle als Payload. Der Rollingcode bleibt in einer Datenbank oder file und wird automatisch generiert.

Sorry, für die unprofesionelle Ausdrucksweise, bei Interesse oder Unklarheit einfach nachfragen.

2 Likes
Homegear Backup / Raspberry Pi bootet nicht mehr
#25

So, es ist vollbracht! Dank oben erwähnter Quellen, dem komplett Neuaufsetzen meines Homegear Raspberry PI und der Geduld und Hilfe von @pmayer kann ich meine Somfy RTS Storen (Jalousien) via Node-red steuern💪

Ich verwende MQTT, wwlches auf einem ESP-01 als Client verarbeitet wird und dann via 433 MHz an die Somfy Storen gesendet wird.

Dabwi wird auch das EEPROM des ESP-01 miteinbezogen.

2 Likes
#26

Super!

Hast du den Code und die Beschaltung irgendwo auf Github? Könnte anbieten dafür eine Platine inkl. ESP12-S zu bauen.
Oder gibt es schon Hardware die das kann?

#27

Ich bin mehr so der Spaghetricodeprogrammierer, da schäme ich mich, das irgendwo zu veröffentlichen. Hab ddn Code grösstenteils ja auch zusammenkopiert. Kenn mich da mit dem Urheberrecht zuwenig aus. Ich maile es dir gerne mal und dann können wir ja schauen.

#28

2 Likes
#29

Wenn du es zusammenkopiert hast, war es zu 90% von Github und stand unter GPL/LGPL oder MIT - ist also kein Problem, so lange du im Idealfall den Urheber nennst.
Einen guten Überblick darüber erhältst du hier: https://choosealicense.com/licenses/

Da brauchst du dir wirklich gar keine Sorgen zu machen. Hier hab ich beispielsweise ein work-in-progress auch auf Github: https://github.com/codmpm/esp-ccs811-bme280-mqtt
Für Github gibt es auch genug Boilerplates, wo man sich eine Grundstruktur für das Repo abgucken kann: https://github.com/afonsopacifer/open-source-boilerplate (z.B.)

The worst code is my own from 6 weeks ago.

Mir fällt gerade ein, dass ich hier auch was mit 433 gemacht hatte: https://github.com/codmpm/esp-mqtt-doorbell-receiver - und wenn ich mir den Code heute angucken, schüttele ich auch mit dem Kopf :wink:

1 Like
#30

Weiß gerade nicht, ob es lohnt eigenen Hardware dafür zu bauen. So was ähnliches gibt es schon.

Schön find ichs nicht aber es ist im groben das drauf, was ich auch eingesetzt hätte…

#31

Das müsste gehen und der Preis ist ja unschlagbar. Mein Wunsch/Ziel wäre es zwar die SOMFI Jalousien direkt aus Node-red via Homegear anzusteuern - ohne Umweg über WiFi und MQTT.

#32

Nuja, du brauchst ein Funkmodul mit dem du auf irgend einem Weg reden must. Ich find den weg ansich ganz gut, weil mqtt genau dafür gemacht ist.
Außerdem hast du so die Möglichkeit das “Funkmodul” in die Nähe deiner Rollos zu packen, da die Frequenz ja nicht ganz stimmt. Und lieber eine dedizierte “Bridge” als alles zentral am Pi “angebastelt”.

Wie sieht es eigentlich damit aus? Hast du was gefunden, wie man genau auf diese Frequenz kommen kann?

#33

Noch eine kleine Anmerkung: RTS wird meine ich von der CUL-Firmware unterstützt. Nur zum neueren Protokoll (hab gerade den Namen vergessen) fehlen so viele Informationen, dass es sich nicht implementieren lässt.

#34

Ich werde mir so einen CUL bauen, sobald ich dazu kommen, sonst jann ich die CC1100 irgendwie nicht gebrauchen. Was mir aber noch nicht klar ist, wie könnte ich denn RTS via CUL von Homegear oder Node-red aus ansprechen?

#35

Über Node-RED weiß ich es nicht genau, vermutlich gibt es dort aber auch einen serial-Node. In Node-BLUE würdest du den serial-Node verwenden. Das eingehende Paket würde ich anschließend über PHP in einem function-Node auswerten.

1 Like
#36

Super Projekt…
Kannst Du mir den Code schicken - das ist genau das was ich suche

Danke

#37

Wäre super, wenn ich den Code auch bekommen könnte: jens.wetzl@me.com
Habe auch versucht den Arduino-Code für ESP zu übersetzen aber es funktioniert bisher nicht :frowning:

#38

Ich hab auch schon etliches versucht - irgendwie kriege ich es nicht hin.
Wer kann mir helfen den Code zu bekommen ??
wendt-christian@t-online.de
Christian