Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Rhasspy Offline Sprachsteuerung

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Rhasspy Offline Sprachsteuerung

    This topic has been deleted. Only users with topic management privileges can see it.
    • capitaenz
      capitaenz last edited by capitaenz

      Ich fasse jetzt hier die Arbeit der letzten Tage zusammen, damit weitere Leute von Snips zu Rhasspy wechseln können:
      Hier wie es bei mir mit einem RP Pi 3b+, einem Respeaker2 und einem externen Lautsprecher funktioniert hat:
      Danke an @joergeli und @tobetobe

      • Image Flashen mit Win32 DiskImager (Raspian Buster lite)

      • ssh und wpa_supplicant.conf auf SD-Karte anlegen

      • Per SSH (z.B. Putty) einloggen

      sudo apt update
      
      sudo apt full-upgrade
      
      sudo curl -sSL https://get.docker.com | sh
      
      sudo usermod -aG docker pi
      
      sudo reboot -n
      
      sudo docker pull rhasspy/rhasspy:2.5.0-pre
      

      Dies ist eine Zeile:

      sudo sudo docker run -d -p 12101:12101 --restart unless-stopped -v "$HOME/.config/rhasspy/profiles:/profiles" --device /dev/snd:/dev/snd rhasspy/rhasspy:2.5.0-pre --user-profiles /profiles --profile de
      
      sudo wget https://gist.githubusercontent.com/Psychokiller1888/a9826f92c5a3c5d03f34d182fda1ce4c/raw/cbb53252dd55dc4e9f5f6064a493f0981cf133fb/hlc_download.sh
      
      sudo chmod +x hlc_download.sh
      
      sudo ./hlc_download.sh
      
      • Fragen

      • What assistant engine are you using?
        2 (rhasspy)

      • What's the path to your assistant config file?
        /home/pi/.config/rhasspy/profiles/de/profile.json

      • What device do you wish to control with SLC?
        1 (respeaker2)

      • What pattern do you want to use?
        5 (kiboost)

      • Do you need to install / configure your respeaker2?
        1 (yes)

      • SPI Aktivieren

      sudo raspi-config
      

      ->5->P4->YES->EXIT
      ->7->A1->Expand Filesystem
      ->7->A3->16->OK

      sudo reboot -n
      
      • onboard Sound deaktivieren, nur bei respeaker2 mit Lautsprecher am "SPEAKER"
      sudo nano /boot/config.txt
      

      Turn dtparam=audio parameter to off:

      von:
      dtparam=audio=on
      auf:
      dtparam=audio=off
      

      STRG+X -> Y -> ENTER

      • Lautstärke
      sudo alsamixer
      

      Speichern funktioniert nicht:

      sudo alsactl store
      
      • MQTT
      sudo apt update
      
      sudo apt install -y mosquitto mosquitto-clients
      
      sudo systemctl enable mosquitto.service
      
      sudo systemctl start mosquitto
      
      • <IP-Rhasspy>:12101 -> Webinterface aufrufen

      • Rhasspy wie folgt einstellen:
        MQTT -> External
        Host -> IP Rhasspy
        Port -> 1883
        Audio Recording -> PyAudio
        Wake Word -> Snowboy (Apply Frontend nicht anwählen und Sensitivity auf 0.9)
        Speech to Text -> Kaldi (Dateien müssen später über das Webinterface nach einem Neustart von Rhasspy nachinstalliert werden)
        Intent Recognition -> Fsticuffs
        Text to Speech -> PicoTTS
        Audio Playing -> aplay
        Dialog Management -> Rhasspy
        Intent Handling -> ausgegraut
        Auf "Sentences" klicken (die Balken)

      • Reboot Rhasspy
        Anschließend die restlichen Dateien mit dem "Download" Knopf herunterladen (Kaldi)

      • Folgendes zum Test unter [ChangeLightState] eintragen:

      [Rolladen]
      
      rolladen_name =  (rolladen ) {name}
      
      rolladen_state = (hochfahren | runterfahren | stoppen ) {state}
      
      <rolladen_name> <rolladen_state>
      

      Abspeichern (Save Sentences) nicht vergessen und anschließend auf "Train" (oben rechts) drücken

      • Im ioBroker einen (weiteren) MQTT-Adapter hinzufügen.
        Diesen als "Client/subscriber" einrichten
        Unter "URL" die IP des Rhasspy eintragen und den Port 1883
        Unter Subscribe patters UND Prefix für alle Topics folgendes eintragen:
        hermes/intent/#, hermes/asr/startListening, hermes/nlu/intentNotRecognized
        Bekanntgeben eigene States beim Verbinden den Haken raus.

      Fertig!

      • Jetzt zum Test sagen:

      "snowboy" "rolladen hochfahren"

      Was fehlt:

      • Lautstärke dauerhaft abspeichern, auch nach Reboot
      • Sprachausgabe über MQTT oder über Blockly per HTTP
      • LEDs zum leuchten bringen
      tobetobe LichtAn 2 Replies Last reply Reply Quote 1
      • tobetobe
        tobetobe @joergeli last edited by

        @joergeli

        Hallo Jörg,

        stimmt. Ich habe mich dazu ziemlich verkürzt geäußert. Korrekt ist natürlich, dass Das Node-Red-Programm diesen Datenpunkt am Mosquitto-Broker ansteuert und der mqtt.1-Client dieses Topic dort nur abholt und als ioBroker Datenpunkt anzeigt.

        Aber wie gesagt, hat dieses Thema für mich momentan keine Priorität, solange es Dein Skript auch noch tut.

        Gruß
        Thomas

        1 Reply Last reply Reply Quote 0
        • tobetobe
          tobetobe @capitaenz last edited by

          @capitaenz

          Hallo Leif,

          na da hat sich ja deine Beharrlichkeit ausgezahlt. Den Rest schaffst du auch noch.

          1 Reply Last reply Reply Quote 0
          • capitaenz
            capitaenz last edited by

            @joergeli
            OK, sehe gerade die Rhasspy MQTT-API gibt gar keine Sprachausgabe her. Hast du vielleicht irgendwo erfahren ob sich dies in Zukunft ändern soll?

            joergeli 1 Reply Last reply Reply Quote 0
            • joergeli
              joergeli @capitaenz last edited by

              @capitaenz
              Bin z.Zt im Streß, ich antworte heute abend ausführlicher.
              Nur so viel: Ich hatte ja geschrieben, daß wir die Sprachausgabe über die HTTP-Api machen, weil wir es bis dato nicht über MQTT geschafft haben.
              Ich habe das auch in meinem o.a. Script implementiert.

              1 Reply Last reply Reply Quote 0
              • joergeli
                joergeli @capitaenz last edited by

                @capitaenz sagte in Rhasspy Offline Sprachsteuerung:

                Allerdings musste ich noch etwas probieren und von deiner Anleitung oben abweichen, denn ich musste unter MQTT nicht die IP des ioBroker, sondern die IP des Rhasspy eintragen.
                Und das ist es was mich verwirrt. Denn ich bin davon ausgegangen, dass Rhasspy MQTT von haus aus unterstützt, denn es muss ja irgendwie an ein anderes System angebunden werden. Da habe ich geglaubt, dass die Entwickler natürlich MQTT mit eingebaut haben.

                Hatte ich nicht geschrieben, daß die IP des MOSQUITTO, also letztendlich die des Rhasspys eingetragen werden muss?

                1.) Lautstärke dauerhaft abspeichern:
                Kann ich nichts zu sagen, da ich für die Sprachausgabe den ioBroker PAW-Adapter nutze, der die Antworten auf einem Android-Tablet ausgibt.
                Ausgabe über Lautsprecher hatte ich nur temporär über die 3,5mm Klinkenbuchse getestet.
                Evtl.kann @tobetobe mehr dazu sagen?

                2.) Sprachausgabe über MQTT
                Rhasspy hat einen internen MOSQUITTO, aber leider kann man - nach unseren Tests - darauf von außen (ioBroker) nicht zugreifen. Deshalb der Workaround mit dem zusätzlichen MOSQUITTO auf dem Rhasspy, auf den dann von ioBroker aus subscribed wird.
                Wie schon erwähnt, konnte man mit der vorigen Rhasspy-Version 2.4.19 noch auf den internen MOSQUITTO zugreifen, bzw. dort einen externen MQTT (IP-iobroker/Port-beliebig) eintragen, das funktioniert - aus welchen Gründen auch immer - nicht mehr mit der Rhasspy V2.5-pre. Das hatte ich auch in einem issue schon gemeldet.
                Evtl. wird das seitens Rhasspy noch gefixed?

                Du musst auch bedenken, daß Rhasspy nicht speziell für ioBroker gemacht ist, sondern primär für andere Systeme wie Home Assistant, Hass.io, und Node-RED.

                Hier noch mal mein (gekürztes) JavaScript, welches nur die Sprachausgabe via HTTP-API über Lautsprecher macht.
                Die Sprachbefehle werden aber weiterhin über die MQTT-API gesendet.
                (bei Blockly bin ich raus)

                In Rhasspy habe ich dazu für die Sprachausgabe "Text to Speech" --> PicoTTS --> Language: de-DE gewählt,
                was m.E. am natürlichsten klingt.

                //##########################################################################
                // Rhasspy-Voltron-intents (hier nur Rolladen)  via MQTT-Client empfangen und entspr.Datenpunkte setzen/schalten
                // Ausgabe ueber Lautsprecher
                //##########################################################################
                
                
                
                // Für Sprachausgabe auf via HTTP-API auf Rhasspy
                let http = require('http');
                
                let options = {
                    host: 'xxx.xxx.xxx.xxx', //Hier Rhasspy IP-Adresse eintragen
                    port: 12101,            //Rhasspy Port muss so bleiben (HTTP-Api)
                    path: "/api/text-to-speech",
                    method: 'POST',
                    headers: {
                        'User-Agent' : 'ioBroker',
                        'Content-Type': 'text/plain',
                       // 'Content-Length': data.length
                    }
                };
                
                //______________________________________________________________________________
                
                function httpPost(data) {
                    let req = http.request(options, function(res) {
                    //console.log("http Status: " + res.statusCode);
                    // Header (Rückmeldung vom Webserver)
                    //console.log('HEADERS: ' + JSON.stringify(res.headers), (res.statusCode != 200 ? "warn" : "info"));
                    });
                
                    // Fehler abfangen
                    req.on('error', function(e) { 
                        console.log('ERROR: ' + e.message,"warn");
                    });
                
                    // write data to request body
                    //console.log("Data to request body: " + data);
                    // (data ? req.write(data) : console.log("Daten: keine Daten vorhanden"));
                    req.write(data);
                
                    req.end();
                }
                
                //______________________________________________________________________________
                
                
                const rolladen   = 'mqtt.1.hermes.intent.Rolladen'     // Rolladen
                
                
                // Rolladen
                on({id: rolladen, change: "any"},function(obj) {
                    let empf_code = getState(rolladen).val ;
                    let empf_json = JSON.parse(empf_code);
                
                
                    let name = empf_json.slots[0].value.value;
                    //log ("name: " + name);
                    let state = empf_json.slots[1].value.value;
                    //log ("state: " + state);
                
                     //log ("name: " + name + "  state: " + state);
                    if (name == "rolladen" && state == "hochfahren"){
                        //setState ('hm-rpc.0.PEQ0505813.1.STATE', true); // <--Hier entspr. Aktor eintragen
                        let data = name  + ' werden hochgefahren';
                        httpPost(data);
                    }
                    else if(name == "rolladen" && state == "runterfahren"){
                        //setState ('hm-rpc.0.PEQ0505813.3.STATE', true); // <--Hier entspr. Aktor eintragen
                        let data = name + ' werden runtergefahren';
                        httpPost(data);
                }
                    else if(name == "rolladen" && state == "stoppen"){
                        //setState ('hm-rpc.0.PEQ0505813.2.STATE', true); // <--Hier entspr. Aktor eintragen
                        let data = name + " werden gestoppt ";
                        httpPost(data);
                }
                
                });
                //_____ Ende Rolladen-Auswertung _________________________________________
                
                
                
                //################################################################################################
                // WakeWord-Erkennung
                const wake   = 'mqtt.1.hermes.asr.startListening'      // Wakeword erkannt
                const unbekannt = 'mqtt.1.hermes.nlu.intentNotRecognized' // Datenpunkt Intent nicht erkannt
                
                on({id: wake, change: "any"},function(obj) {
                    wakeword();       
                });
                
                on({id: unbekannt, change: "any"},function(obj) {
                    nicht_erkannt();
                });
                
                
                function wakeword(){
                    let data = "ja?" ;
                    httpPost(data);
                }
                
                function nicht_erkannt(){ 
                    let data = "Entschuldigung, ich habe dich leider nicht verstanden";
                    httpPost(data);
                }
                
                // Ende WakeWord-ErkennungsScript
                //################################################################################################
                
                

                Das sollte so funktionieren:
                Du sagst "snowboy" --> Rhasspy antwortet über Lautsprecher "ja?"
                Du sagst sofort nach dem "ja?" --> "rolladen hochfahren" --> Rhasspy antwortet über Lautsprecher "rolladen werden hochgefahren".
                Teste mal, ob das bei Dir funktioniert.

                3.) LEDs zum leuchten bringen
                Versuch mal, anstatt "kiboost" den LED-Pattern "projectalice":

                sudo systemctl stop hermesledcontrol
                sudo nano /etc/systemd/system/hermesledcontrol.service --> hier anstatt kiboost del LED-pattern projectalice eintragen
                sudo systemctl daemon-reload
                sudo systemctl start hermesledcontrol

                Ich kann aber nicht garantieren, daß das mit Deinem Respeaker 2-Mic funktioniert, da ich es nur mit meinem Respeaker 4 testen kann.

                --
                Wie mir in Deinem obigen Screenshot aufgefallen ist, wurde anscheinend Kaldi nicht installiert (--> not compatible)?
                Falls dem so ist, muß der Docker-Container nochmals neu erstellt werden.
                Das beschreibe ich, falls es wirklich zutrifft.
                Nach unserer Erfahrung ist von den verschiedenen Optionen der Spracherkennung, Kaldi die zuverlässigste, bzw. genaueste.

                Gruß
                Jörg

                1 Reply Last reply Reply Quote 0
                • capitaenz
                  capitaenz last edited by capitaenz

                  Hat schon jemand versucht die Github Version zu installieren? Ich habe da drin leider nicht genug Routine. Habe mal den Docker von rhasspy/rhasspy installiert ( Last updated a day ago by rhasspy ) leider reagiert er weiterhin nicht auf das Wake Word. 👎

                  tobetobe 1 Reply Last reply Reply Quote 0
                  • MathiasJ
                    MathiasJ last edited by MathiasJ

                    hallo Leute,
                    Danke für die vielen Infos.
                    Aber bei mir bleiben noch ein paar Fragen offen:
                    Kann man den Docker auch unter Proxmox installieren?
                    Dann wäre meine "Cloud" im Netzwerkschrank im Keller.
                    Als Sateliten habe ich 4 Raspberies angedacht, die in verschiedenen Räumen verteilt werden sollen.
                    Der Raspberry PI3 würde als Satelit reichen?

                    Gruß,
                    Mathias

                    tobetobe Z 2 Replies Last reply Reply Quote 0
                    • tobetobe
                      tobetobe @MathiasJ last edited by

                      Hallo und willkommen in dieser Runde,

                      @MathiasJ said in Rhasspy Offline Sprachsteuerung:

                      Kann man den Docker auch unter Proxmox installieren?

                      Mit Proxmox habe ich persönlich leider keine Erfahrung, habe aber soeben mal das wesentliche hierzu schnell überflogen.Wenn ich das richtig verstanden habe, handelt es sich bei Proxmox um eine Linux basierte Virtualisierungsumgebung. Docker in Linux zu installieren, ist gar kein Problem. Auch habe ich Rhasspy, und damit Docker, schon in VMs, die auf Oracle Virtual Box basierten, ohne Probleme installieren können. Nach meiner Einschätzung, sollte das, was du vorhast, also auch machbar sein. Vielleicht gibt es einige Spezialitäten, die zu beachten sind. Versuch es einfach mal mit der Standardprozedur, wie sie @capitaenz oben beschrieben hat:

                      .

                      @capitaenz said in Rhasspy Offline Sprachsteuerung:

                      Ich fasse jetzt hier die Arbeit der letzten Tage zusammen, damit weitere Leute von Snips zu Rhasspy wechseln können:

                      @MathiasJ said in Rhasspy Offline Sprachsteuerung:

                      Der Raspberry PI3 würde als Satelit reichen?

                      Absolut, es genügt sogar ein Pi Zero für einen Satelliten. Wie schon oben erwähnt: Das Mikrofon ist das entscheidende Element.

                      Trau dich einfach mal ran, wir helfen gerne weiter.

                      Gruß
                      Thomas

                      1 Reply Last reply Reply Quote 0
                      • tobetobe
                        tobetobe @capitaenz last edited by

                        @capitaenz said in Rhasspy Offline Sprachsteuerung:

                        Hat schon jemand versucht die Github Version zu installieren?

                        Nein, ich sehe dazu auch keine Veranlassung. Der normale Pull mit dem dir bekannten Kommando genügt mMn vollkommen. Was versprichst du dir davon, ggf. eine Beta-Version von einer Beta-Version zu installieren?

                        Wenn es dir um die Lösung dieses Problems geht:

                        @capitaenz said in Rhasspy Offline Sprachsteuerung:

                        leider reagiert er weiterhin nicht auf das Wake Word.

                        dann wirst du die Lösung nicht durch die Installation der GitHub-Version finden. Das Problem muss in deiner Konfiguration liegen.

                        Hast du alles so, wie es @joergeli dir geschrieben hat, getestet? Wenn nicht, mach das erst einmal, bevor du neue Fässer aufmachst. Das ist nicht zielführend.

                        Wenn du uns hier deine Konfigurationen postest, und zwar einmal grafisch (die Einstellungen), und dann als Text (Kopie vom Profile), dann könnten wir mal drüberschauen, was da nicht stimmt. meistens sind es nur Kleinigkeiten.Das Profil findest du unter Home/Advanced

                        1ef781cc-9094-43a0-8479-dae7e9128580-grafik.png

                        1 Reply Last reply Reply Quote 0
                        • capitaenz
                          capitaenz last edited by capitaenz

                          @tobetobe
                          Ich erhoffe mir dadurch eine Fehlerfreie Version von Rhasspy installiert zu bekommen, denn der Fehler ist ja bekannt:

                          @joergeli said in Rhasspy Offline Sprachsteuerung:

                          Wie schon erwähnt, konnte man mit der vorigen Rhasspy-Version 2.4.19 noch auf den internen MOSQUITTO zugreifen, bzw. dort einen externen MQTT (IP-iobroker/Port-beliebig) eintragen, das funktioniert - aus welchen Gründen auch immer - nicht mehr mit der Rhasspy V2.5-pre. Das hatte ich auch in einem issue schon gemeldet.

                          tobetobe 1 Reply Last reply Reply Quote 0
                          • tobetobe
                            tobetobe @capitaenz last edited by

                            @capitaenz said in Rhasspy Offline Sprachsteuerung:

                            Ich erhoffe mir dadurch eine Fehlerfreie Version von Rhasspy installiert zu bekommen, denn der Fehler ist ja bekannt:

                            Für mich nicht nachvollziehbar. Wir haben dir ein einwandfrei funktionierendes System an die Hand gegeben. Mit dem könntest du ohne Probleme arbeiten. Jetzt unbedingt mit dem ioBroker MQTT Adapter arbeiten zu wollen, erscheint mir als reine Liebhaberei. Sachlich / funktional gibt es dafür keinen Anlass. Ich würde die weitere Entwicklung einfach abwarten. Synthesiam wird eine Lösung schon eines Tages präsentieren.

                            Und wie gesagt: Dass dein Wakeword nicht erkannt wird, hat mit dem gemeldeten Fehlverhalten wirklich gar nichts zu tun.

                            MathiasJ capitaenz 2 Replies Last reply Reply Quote 0
                            • MathiasJ
                              MathiasJ @tobetobe last edited by

                              @tobetobe
                              super, danke für die Hilfe!
                              Raspberry Zero w, noch besser.
                              Brauche dann mindestens 4 Stück davon 🙂
                              Als erstes lese ich mich bei Rhaspy und Proxmox ein, und komme später zurück.
                              Gruß,
                              Mathias

                              1 Reply Last reply Reply Quote 0
                              • Z
                                zahnheinrich @MathiasJ last edited by zahnheinrich

                                @MathiasJ
                                "Kann man den Docker auch unter Proxmox installieren?
                                Dann wäre meine "Cloud" im Netzwerkschrank im Keller."

                                Warum möchtest du eine Virtualisungsumgebung (Docker) unter eine Virtualisungsumgebung (Proxmox) installieren?

                                MathiasJ 1 Reply Last reply Reply Quote 0
                                • MathiasJ
                                  MathiasJ @zahnheinrich last edited by

                                  @zahnheinrich
                                  Weil unter Proxmox bereits freePBX, RaspberryMatic und IObroker laufen. Sonst müsste ich einen weiteren PC, sei es nur einen Raspberry bemühen.
                                  Das ist genau das, was ich verhindern will.

                                  Thomas Braun 1 Reply Last reply Reply Quote 0
                                  • Thomas Braun
                                    Thomas Braun Most Active @MathiasJ last edited by

                                    @MathiasJ Und warum installierst du den rasspy nicht in Proxmox?

                                    1 Reply Last reply Reply Quote 0
                                    • MathiasJ
                                      MathiasJ last edited by MathiasJ

                                      dazu muß ich in Proxmox wohl erst Docker installieren?

                                      https://community.rhasspy.org/t/rhasspy-voice-server-at-proxmox-possible/590

                                      ja, erst Docker, dann Rhaspy

                                      1 Reply Last reply Reply Quote 0
                                      • capitaenz
                                        capitaenz @tobetobe last edited by

                                        @tobetobe
                                        Wenn man nicht mit Skripten arbeiten möchte, dann benötigt man eine "saubere" Lösung für Blockly.
                                        Ich möchte mich jetzt aber nicht hier in einem Wortgefecht wiederfinden, danke für die Unterstützung.

                                        VG
                                        Leif

                                        tobetobe 1 Reply Last reply Reply Quote 0
                                        • MathiasJ
                                          MathiasJ last edited by

                                          das erste ist getan,,,,, Rhasspy läuft auf dem Proxmox 🙂
                                          Nur eine Verständnisfrage:
                                          Muß ich die Rhasspy-Sateliten auch wie den Server (dieses mal auf den Raspberries) im Docker installieren.
                                          Ich habe dazu leider nichts gefunden.
                                          Wie kommt man auf das kauderwelsch beim Training?
                                          Als Beispiel nehme ich das Garagenlicht:

                                          G AH RR AAH ZH AX N L IH CC T
                                          

                                          Gruß,
                                          Mathias

                                          tobetobe 1 Reply Last reply Reply Quote 0
                                          • tobetobe
                                            tobetobe @MathiasJ last edited by

                                            @MathiasJ
                                            Guten Morgen,
                                            das ist ja schon mal erfreulich. Zu deinen weiteren Fragen: Hier findest du ein Tutorial, wie ein Master-Satellite System zu installieren und zu konfigurieren ist:

                                            https://rhasspy.github.io/rhasspy-voltron/tutorials.html#getting-started-guide
                                            

                                            Und ja, auch hier Docker. Alternativ geht auch eine Python VENV. Aber warum bei Master und Satellite unterschiedliche Wege einschlagen. Ich empfehle dir Docker. Gleich der Zweite Punkt ganz oben führt dich zur Installationsanweisung. Wichtig: achte auf die unterschiedlichen Ports!!!

                                            Kauderwelsch beim Training: Gibt es nur beim Master. Die Vorschläge kommen automatisch vom System. Du kannst sie dir anhören. Wenn dir die Aussprache nicht gefällt, kannst du sie anpassen. Gelegentlich ist es besser, einen lang gesprochenen Vokal zu verkürzen, damit die Aussprache keinen amerikanischen Akzent hat. Und Achtung: Die Kiste spricht so, wie du es eingibst. Also: 5 als fuenf geschrieben spricht sich "fu-enf", und fünf ist fünf. Auch so kannst du also bestimmte Worte an deine Aussprache anpassen.

                                            Good Luck. Und bei Fragen einfach fragen.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            833
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            30
                                            403
                                            74354
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo