[Anleitung] Sonoff RF + Funkschalter in HomeKit

  • Hallo liebe Community,


    wie vllt einige von euch wissen stand ich vor dem Problem das wenn ich die Funk Deckenleuchte via Funklichtschalter umgeschaltet habe, das der Zustand in HomeKit nicht erkannt wurde.


    Deswegen habe ich nach einer günstigen Methode gesucht wie man dies aber doch realisieren kann.


    Und ich bin fündig geworden. Und die Lösung würde ich gerne mit euch teilen.


    Das alles wird gebraucht (werde am Ende eine Linksammlung hierzu einfügen):

    • 1. Mosquitto Plugin
    • 2. homebridge-mqtt-switch-tasmota
    • 3. Sonoff RF
    • 4. Funkschalter 433MHz
    • 5. FTDI Adapter + Mini USB Kabel
    • 6. Stiftleiste + female/female Kabel
    • 7. Lötwerkzeug


    Als erstes installiert ihr Mosquitto auf eurem Raspberry Pi via:


    Code
    sudo apt-get install -y mosquitto mosquitto-clients


    und fügt anschließend die Ip Adresse eures Raspberry Pi (wo homebridge läuft) in die config von Mosquitto. Dies macht ihr wie folgt:


    Code
    sudo nano /etc/mosquitto/conf.d/mosquitto.conf


    Ausführen und folgendes einfügen:


    Code
    bind_adress 111.111.111.111


    (Die IP Adresse mit der vom Raspi wo Homebridge läuft ersetzen!)


    Danach STRG + O zum speichern und STRG + X zum schließen.


    MQTT autostart beim Booten


    Code
    sudo update-rc.d mosquitto remove
    sudo git clone https://github.com/Dan-in-CA/mosquitto_unit_file.git
    sudo cp mosquitto_unit_file/mosquitto.service /etc/systemd/system/mosquitto.service
    sudo systemctl enable mosquitto.service
    sudo reboot
    check if mosquitto is running
    sudo mosquitto -v




    Weiter gehts mit dem Homebridge Plugin. Damit alles auch in Apples Home App erscheint müssen wir folgendes Plugin installieren:


    Code
    sudo npm install -g homebridge-mqtt-switch


    Anschließend die config.json öffnen und folgendes in Bereich „accessories“ hinzufügen:




    • Name of this Accessory: Ist der Name was später in Homekit erscheint


    • MQTT-BROKER-ADRESS: ist die IP Adresse die ihr in die Config Datei von Mosquitto hinzugefügt habt!


    Alles andere lasst ihr so wie es ist und speichert die config.json ab.


    Nach einem Neustart der Homebridge sollte bereits eine Switch in der Apple Home App zu sehen sein, jedoch ohne Funktion.


    Damit wir jetzt unseren Sonoff ansprechen können, müssen wir diesen löten und im Anschkuss flashen.


    Im Web gibt es bereits sehr viele Anleitungen. Ich habe da meiner Meinung nach die besten mal rausgepickt.


    Zum löten habe ich folgende Anleitung verwendet:


    https://youtu.be/Ps6u22oT2HA


    !!!Hier müsst ihr aber folgendes beachten!!!

    Ab 2:05min müssen 2 Punkte miteinander verlötet werden, diese beiden am besten so mit einander verbinden/löten, das wir die Verbindung, nachdem wir fertig sind mit flashen, wieder entfernen können! Denn solange diese beiden Punkte mit einander verlötet/verbunden sind, funktioniert das RF Funk Modul nicht mehr!



    So, weiter gehts. Nach dem wir alles fertig gelötet haben ist es an der Zeit zu flashen. Beim flashen bin ich nicht nach den Jungs von CreativeX gegangen, sondern im Web für mich eine passendere Lösung gefunden.


    Folgende Anleitung zum flashen habe ich benutzt:


    https://www.alefo.de/wiki/anle…:sonoff_mit_alexa_steuern


    Nachdem ihr erfolgreich geflasht habt, geht ihr auf die Seite eures Routers und sucht bei bestehenden Verbindungen nach Sonoff. Und kopiert die IP Adresse!


    Diese fügt ihr in eurem Browser ein, nun sollte die Webseite von eurem Sonoff Gerät erscheinen.


    Hier müssen wir noch ein paar kleine Einstellungen vornehmen. Undzwar:


    1. Geht ihr auf Configuration
    2. Jetzt auf Configure MQTT
    3. Hier geben wir bei Host die IP Adresse die wir auch in die config Datei von Mosquitto eingegeben haben!
    4. Port 1883 lassen
    5. User und Passwort sollten leer sein
    6. Save und wieder zurück
    7. Jetzt auf Configure Module
    8. Hier wählen wir bei Modul Type > Sonoff RF
    9. Save


    Als letztes müssen wir noch den Funkschalter mit unserem Sonoff RF pairen. Dafür einfach 2x hintereinander den Knopf auf Sonoff drücken und anschließen den Funk Lichtschalter betätigen und betätigt lassen bis die LED sich ändert. Fertig.


    Jetzt müsstet ihr in der Lage sein via Funkschalter den Sonoff zu bedienen natürlich mit Zustandserkennung in Homekit.


    Falls es noch Fragen geben sollte könnt ihr Sie ruhig hier stellen.


    Lg


    Einkaufsliste:


    - Sonoff RF (https://bit.ly/3qax1KZ)


    - Funklichtschalter 433MHz (zB https://www.amazon.de/Smartwar…=srch&tag=hktips-forum-21)


    - FTDI Adapter FT232RL USB zu TTL Serial für 3,3V und 5V für Arduino PRO Mini TE203 Christians Technikshop

    https://www.amazon.de/dp/B0178…FCP7E?tag=hktips-forum-21


    - Aukru 40pcs x 20cm female-female jumper Kabel dupont wire Steckbrücken Drahtbrücken für Arduino Raspberry pi Breadboard (weiblichen zu weiblichen) https://www.amazon.de/dp/B00OL…S4W5H?tag=hktips-forum-21


    Aussel 20 Stück 2.54mm Breakaway Platine 40Pin Stecker und Buchsenleiste für Arduino Shield (PIN-2 20PCS) https://www.amazon.de/dp/B01M6…Y27JT?tag=hktips-forum-21

    Einmal editiert, zuletzt von SeydX () aus folgendem Grund: *MQTT autostart

  • Vielen Dank :)


    Als Ergänzung wie man MQTT beim Booten startet habe ich folgendes gefunden


    Code
    sudo update-rc.d mosquitto remove
    sudo git clone https://github.com/Dan-in-CA/mosquitto_unit_file.git
    sudo cp mosquitto_unit_file/mosquitto.service /etc/systemd/system/mosquitto.service
    sudo systemctl enable mosquitto.service
    sudo reboot
    
    check if mosquitto is running
    sudo mosquitto -v


    Lg

  • Hallo,


    Ich überlege mir auch ein paar Geräte von Sonoff in meiner Homebridge einzubinden.

    Den Anfang soll ein Steckdose machen. Der Sonoff s20.

    Bin jetzt schon längere Zeit auf der Suche nach einer Anleitung und jetzt auf diesen Beitrag gestoßen.


    Ich frag mich jetzt ob das Mosquitto Plugin auf dem Raspberry laufen darf

    wo auch Homebridge drauf läuft? Und ob das Plugin unbedingt nötig ist weil ich ja nicht den Schaltzustand der Lampe

    Angezeigt haben will. Also wenn die Lampe via Lichtschalter geschaltet wird.

    Bei ner Schaltbaren Steckdose hätte ich dieses Problem ja nicht.

    Oder habe ich da was Falsch verstanden?

  • Danke für die super Anleitung!

    Obwohl ich mich erst seit einer Woche mit dem Thema Homebridge befasse, nur ein wenig Ahnung vom Programmieren habe, hat mir die Anleitung sehr gut geholfen die Temperatur eines Sonoff TH16 im Homekit zur Anzeige zu bringen. Ich habe aber ein Problem mit dem Autostart von Mosquitto, der will einfach nach dem Booten des Raspberrys nicht laufen. Gebe ich dann hinterher "sudo mosquitto -v" ein, läuft alles wunderbar.

    Kann es vielleicht daran liegen, dass seit dem Erstellen der Anleitung es bereits ein Update des mosquitto.service gab und dort nun etwas anders läuft?

    Oder gibt es beim Booten des PIs einfach Probleme weil Homebridge und Mosquitto zusammen auf einem Raspberry laufen? Kann ich in diesem Fall den Autostart von Mosquitto verzögern?

    Schon mal Danke im Vorraus.

  • Hallo,


    es freut mich zu hören wenn ich helfen konnte :)


    eine einfache Möglichkeit Mosquitto beim Boot zu starten ist auch folgende:


    Code
    sudo nano /etc/rc.local


    und VOR "exit 0" folgendes eingeben:


    Code
    /usr/sbin/mosquitto


    mit STRG + O speichern und mit STRG + C schließen


    jetzt sollte mosquitto nach einem Neustart starten :)


    lg

  • Code
    Hallo, um Mosquito automatisch laufen zu lassen, muss ich eine neue Installation machen? Zur gleichen Zeit muss ich mit dem Befehl: sudo mosquitto -v laufen, aber nach dem Neustart wird es nicht selbst ausgeführt. Aber wenn ich einen Befehl verwende, um in / usr / sbin / mosquitto zu schreiben, funktioniert es nicht. Muss ich eine Neuinstallation durchführen?
    
    Danke
  • Super Anleitung, Danke!


    Ich habe mir die RF bridge jetzt auch bestellt. Betreibe meine Hombridge aktuell noch mit einem 433mhz Sender wie auch Empfänger. Da die Homebridge aber bei mir im Serverraum steht ist die Reichweite relativ gering trotz 12V auf dem Sender. Deswegen wollte ich das nun jetzt mal mit der RF Bridge versuchen, welche ich dann zentral ins Haus stelle.

    Die RF Bridge ist ja auch in der Lage RF Signale zu empfangen, wie wird in Tasmota zb ein Fensterkontak angelernt? Und wie sieht die Ausgabe dann über MQTT aus bzw gibt es überhaupt eine?


    Danke

  • Hi

    Bei der Installieren bekomme ich eine Fehlermeldung.


    pi@raspberrypi:~ $ sudo apt-get install -y mosquitto mosquitto-clients

    Paketlisten werden gelesen... Fertig

    Abhängigkeitsbaum wird aufgebaut.

    Statusinformationen werden eingelesen.... Fertig

    mosquitto ist schon die neueste Version (1.4.10-3+deb9u1).

    mosquitto-clients ist schon die neueste Version (1.4.10-3+deb9u1).

    0 aktualisiert, 0 neu installiert, 0 zu entfernen und 134 nicht aktualisiert.

    1 nicht vollständig installiert oder entfernt.

    Nach dieser Operation werden 0 B Plattenplatz zusätzlich benutzt.

    mosquitto (1.4.10-3+deb9u1) wird eingerichtet ...

    Job for mosquitto.service failed because the control process exited with error code.

    See "systemctl status mosquitto.service" and "journalctl -xe" for details.

    invoke-rc.d: initscript mosquitto, action "start" failed.

    ? mosquitto.service - Mosquitto MQTT Broker daemon

    Loaded: loaded (/etc/systemd/system/mosquitto.service; enabled; vendor preset: enabled)

    Active: activating (auto-restart) (Result: exit-code) since Mon 2018-04-02 11:56:38 CEST; 48ms ago

    Process: 3638 ExecStart=/usr/local/sbin/mosquitto -c /usr/local/etc/mosquitto/mosquitto.conf -d (code=exited, status=203/EXEC)


    Apr 02 11:56:38 raspberrypi systemd[1]: mosquitto.service: Unit entered failed state.

    Apr 02 11:56:38 raspberrypi systemd[1]: mosquitto.service: Failed with result 'exit-code'.

    dpkg: Fehler beim Bearbeiten des Paketes mosquitto (--configure):

    Unterprozess installiertes post-installation-Skript gab den Fehlerwert 1 zurück

    Fehler traten auf beim Bearbeiten von:

    mosquitto

    E: Sub-process /usr/bin/dpkg returned an error code (1)

  • SUPER ANLEITUNG! BESSER kann man es nicht machen. Kann ich irgendwo einstellen, daß die Daten nur alle 10 Minuten an den Server gesendet werden? Die Daten sollen auch nur alle X Minuten abgerufen werden.

    Mein Gerät steht im Kinderzimmer und ich möchte nicht, daß jede Minute Daten gesendet werden.

  • Hallo zusammen,


    zur Info:

    ich möchte sonoff s20 Steckdosen mit mqtt und homebridge steuern.

    beim mqtt broker gibt es irgendwie probleme.


    mein mqtt broker ist folgendem Verzeichnis:

    Code
    /usr/sbin/mosquitto



    mein mosquitto.service sieht so aus:



    meine mosquitto.config sieht so aus:



    wenn ich den mqtt broker starte, kommt folgendes in der Konsole:

    kann mir jemand helfen, das ich den mqtt broker zum laufen bringe?


    Danke euch.

  • Code
    Mai 06 21:46:44 hbridge1 mosquitto[1850]: Error found at /etc/mosquitto/conf.d/mosquitto.conf:7. 
    Mai 06 21:46:44 hbridge1 mosquitto[1850]: Error found at /etc/mosquitto/mosquitto.conf:13.

    Du hast 2 Config-Files, eine davon solltest du löschen.