ELRO Flamingo FA20RF mit SIGNALduino - git-developer/fhem-examples GitHub Wiki
ELRO Flamingo FA20RF mit SIGNALduino
Dieser Artikel beschreibt die Einbindung des Rauchmelders ELRO Flamingo FA20RF über das Modul SIGNALduino in FHEM. Voraussetzung ist eine aktuelle FHEM-Installation mit dem Modul SIGNALduino.
FHEM-Device für SIGNALduino anlegen
Der Arduino ist an einem Windows-Rechner an der seriellen Schnittstelle COM13
angeschlossen. Um später beim Auslösen der Rauchmelder Log-Ausgaben zu erhalten, muss das Attribut verbose
mindestens auf den Wert 4 gesetzt werden.
define sduino SIGNALduino COM13@57600
attr sduino verbose 4
Arduino mit dem Sketch flashen
Arduino Nano
Im einfachsten Fall hat man einen Arduino Nano zur Hand, dann kann man aus FHEM heraus die mitgelieferte Datei FHEM/firmware/SIGNALduino_nano328.hex
gemäß Wiki flashen.
Arduino Pro Mini 3,3V/8MHz
Ich habe einen Arduino Pro Mini mit 3,3V/8MHz. Die Datei SIGNALduino_promini328.hex
funktioniert damit nicht, weil sie für die 5V/16MHz-Variante gebaut wurde. Deshalb habe ich Version 3.1 heruntergeladen. Die darin verwendete Bibliothek SimpleFIFO fehlt leider und muss deshalb von Hand ins Verzeichnis lib
heruntergeladen werden. Jetzt kann SIGNALduino gebaut und geflasht werden.
Rauchmelder auslösen
Zunächst wird der Rauchmelder gemäß Anleitung durch zweimaliges Drücken auf LEARN in den Master-Modus versetzt. Die LED leuchtet dann dauerhaft grün. Dann muss man den TEST-Button ein paar Sekunden gedrückt halten. Im FHEM-Log erscheint u.a.
2015.11.15 15:52:23 4: SIGNALduino/msg READ: MS;P0=8068;P1=-936;P2=772;P3=-1387;P4=-2757;P5=-12232;D=250123242424242424242424232323242324242324242423232323;CP=2;SP=5;
2015.11.15 15:52:23 4: Found matched Protocol id 20 -> livolo
2015.11.15 15:52:23 4: Found matched Protocol id 13 -> 21RF
2015.11.15 15:52:23 4: SIGNALduino_unknown incomming msg: u13#803A478
2015.11.15 15:52:23 4: SIGNALduino_unknown rawData: 803A478
2015.11.15 15:52:23 4: SIGNALduino_unknown Protocol: 13
2015.11.15 15:52:23 4: SIGNALduino_unknown converted to bits: 1000000000111010010001111000
2015.11.15 15:52:23 4: SIGNALduino_unknown found RF21 protocol. model=#, devicecode=03A47, freq=8
Was sagt mir das? SIGNALduino hat eine Nachricht empfangen und das RF21-Protokoll entdeckt. Es gibt in meiner FHEM-Installation kein Modul, das sich dafür zuständig fühlt, deshalb übernimmt SIGNALduino_unknown
.
FHEM-Device anlegen
Ich kann jetzt entweder ein eigenes FHEM-Modul für meine Rauchmelder schreiben - aufwändig. Oder ich greife wie von Sidey beschrieben auf das vorhandene Modul DOIF zurück:
define rauchmelder_1 DOIF ([sduino:&DMSG] =~ "u13#803A47") ()
attr rauchmelder_1 do always
attr rauchmelder_1 cmdState alarm
Bedeutung: jedesmal, wenn das Gerät sduino
sein internes Reading DMSG
mit dem Wert u13#803A47
belegt, erhält das Gerät rauchmelder
den state alarm
.
Der letzte Schritt ist nur notwendig, wenn es noch kein passendes FHEM-Modul zum eingebundenen Gerät gibt. Bei einem Druck auf die Fernbedienung meiner Baumarkt-Funksteckdosen zum Beispiel werden passende IT-Devices automatisch angelegt.
Links
- Ursprung dieses Artikels: Protokoll-Analyse: Rauchmelder Flamingo FA20RF (KD101)
- SIGNALduino im FHEM-Wiki