Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Off Topic
  4. Rhasspy Offline Sprachsteuerung

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Rhasspy Offline Sprachsteuerung

Geplant Angeheftet Gesperrt Verschoben Off Topic
403 Beiträge 30 Kommentatoren 100.5k Aufrufe 47 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • joergeliJ joergeli

    Hallo Thomas,

    eins vorweg:
    Laß das mal mit den Spoilern, der Code wird dann irgendwie zerstückelt, besser kpl. als Code posten.

    Ich habe die "Stückelei" mal zusammengesetzt:

    // Skript zur Sprach-Ausgabe über TTS an Rhasspy
    //_________________________________________________________
    
    let http = require('http');
    let options = {
    host: '192.168.13.157', //Rhasspy IP-Adresse
    port: 12101, //Rhasspy Port
    path: "/api/text-to-speech",
    method: 'POST',
    headers: {
    'User-Agent' : 'ioBroker',
    'Content-Type': 'text/plain',
    }
    };
    //______________________________________________________________________________
    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.end();
    }
    //______________________________________________________________________________
    
    //WakeWord-/Befehls-Erkennung
    const wake = 'mqtt.0.rhasspy.de.transition.SnowboyWakeListener' // Datenpunkt aendert sich von listening auf loaded, wenn wakeword erkannt wurde
    const befehl = 'mqtt.0.rhasspy.de.transition.WebrtcvadCommandListener' // Datenpunkt aendert sich von listening auf loaded, wenn befehl erkannt erkannt wurde
    const ansage = 'Ja?' // Ansage, wenn wakeword erkannt wurde. Hinweis: - Ansagetext mögl. kurz, damit er nicht als Befehl erkannt wird!
    const empf_ok = "OK" // Dieser Text wird gesprochen, wenn befehl erkannt wurde
    
    on({id: wake, change: "any"},function(obj) {
    let empf_code = getState(wake).val ;
    if (empf_code== "loaded"){ wakeword(); }
    });
    
    on({id: befehl, change: "any"},function(obj) {
    let empf_code = getState(befehl).val ;
    if (empf_code== "loaded"){ befehl_empf(); }
    });
    
    function wakeword(){ httpPost(ansage); }
    
    function befehl_empf(){ httpPost(empf_ok); }
    //______________________________________________________________________________
    
    function formatTwoDigits(n) {
    return n < 10 ? '0' + n : n;
    }
    
    function wochentag(i){
    var tage = ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag'];
    var tag = (typeof(i) == 'object') ? i.getDay() : i ;
    return tage[tag];
    }
    //__________________________________________________
    
    
    //#######################################################################
    //Dieser Abschnitt wird m.E. nur einmalig!!!  beim Starten des Skriptes ausgeführt
    //#######################################################################
    var intentResult = $('mqtt.0.rhasspy.intent.GetTime');
    var intentArray = [];
    for(var i = 0; i < intentResult.length; i++)
    {
    log(intentResult[i]);
    intentArray.push(intentResult[i]);
    }
    //#######################################################################
    
    
    //#######################################################################
    // on({id: intentArray, change: "any"} wird niemals getriggert !!!
    //#######################################################################
    on({id: intentArray, change: "any"}, function (obj) {
    log(obj.newState.val);
    let intentObject = JSON.parse(obj.newState.val);
    if(intentObject.hasOwnProperty('state'))
    {
    var state = intentObject.state;
        if(state === "time"){
            log("nach Zeit gefragt");
            var now = new Date();
            var hours = formatTwoDigits(now.getHours());
            var minutes = formatTwoDigits(now.getMinutes());
            var seconds = formatTwoDigits(now.getSeconds());
            let TimeString = "Es ist jetzt  " + hours + ":" + minutes + ":" + seconds;
            log(TimeString);
            let data = TimeString;
            httpPost(data)
        };
    
    
        if(state === "date"){
            log("nach Datum gefragt");
            var datum = new Date();
            var tag = datum.getDay();
            var wotag = wochentag(tag);
            log(wotag);
            var now = new Date();
            var dd = now.getDate();
            var dd_string =  String(dd);
            var tagi =""
    
            if  (dd_string == "1")  { tagi = "ers";}   
            else if (dd_string == "3")  { tagi = "drit";}
            else { tagi = dd_string ;}
    
            var mm = now.getMonth()+1;
            var monat ="";
    
            if  (mm == 1)  { monat = "Januar";}   
            else if (mm == 2)  { monat = "Februar";} 
            else if (mm == 3)  { monat = "März";} 
            else if (mm == 4)  { monat = "April";} 
            else if (mm == 5)  { monat = "Mai";} 
            else if (mm == 6)  { monat = "Juni";} 
            else if (mm == 7)  { monat = "Juli";} 
            else if (mm == 8)  { monat = "August";} 
            else if (mm == 9)  { monat = "September";} 
            else if (mm == 10) { monat = "Oktober";} 
            else if (mm == 11) { monat = "November";} 
            else if (mm == 12) { monat = "Dezember";} 
     
            var yyyy = now.getFullYear();
    
            var DateString = 'Heute ist ' + wotag + ' der ' + tagi + '. '  + monat + ' ' + yyyy; 
            log(DateString);
            let data = DateString;
            httpPost(data)}};             
    
    });
    
    

    Ich kann das Problem bei mir leider nicht nachvollziehen, da ich für meine verschiedenen Intents (Temperatur, Lampen, Zeit, etc.) jeweils einen eigenen Datenpunkt verwende - diesen Datenpunkt prüfe ich dann auf Änderung und triggere dann entspr. die Ausgabe, bzw. Sprachansage.

    So wie ich das sehe, werden Deine Intents in ein Array geschrieben?
    Dieses Array willst Du dann auf Änderung prüfen und entspr. Ansagen generieren?

    Etwas ist mir aber in Deinem Skript aufgefallen:
    Ich glaube, die Variable var intentResult = $('mqtt.0.rhasspy.intent.GetTime');, bzw. das intentArray wird nur einmalig bei Scriptstart abgefragt, bzw. gefüllt.
    Somit wird auch on({id: intentArray, change: "any"}..... niemals bei Arrayänderung getriggert, d.h. es können keine Sprachausgaben erfolgen.
    Ich habe die Stelle im Script mal mit //######################## markiert.

    Ich würde testweise mal versuchen, diesen Abschnitt in die function befehl_empf() zu verlagern.
    Dann müsste theoretisch jedes Mal, nachdem ein Befehl empfangen wurde, das Array gefüllt werden.
    Anschließend könnte dann auf die Änderung des Arrays getriggert werden und mit den entspr. if-Abfragen, die entspr. Sprachansagen ausgegeben werden.

    Ich kenne mich zu wenig in JS aus, um zu beurteilen, ob überhaupt mit einer Array-Änderung getriggert werden kann.
    Zur Not müsste man sich ein "Hilfsobjekt", bzw. "Hilfs-State" erstellen, wie z.B. "javascript.0.Arrayaenderung" und auf Änderung desselben triggern.
    Mit anderen Worten: Wenn sich das Array ändert, wird ebenfalls mit z.B. setState ('javascript.0.Arrayaenderung', true); gesetzt.
    Mit dieser Änderung des Datenpunktes Arrayaenderung kann dann getriggert werden.

    Ich glaube übrigens nicht, daß das Problem mit globalen/lokalen Variablen zusammenhängt.

    Ich hoffe, mein Geschwafel hilft Dir trotzdem weiter.

    Gruß
    Jörg

    tobetobeT Offline
    tobetobeT Offline
    tobetobe
    schrieb am zuletzt editiert von
    #127

    @joergeli

    Guten Morgen Jörg,

    tut mir leid, dass ich dir mit dem Spoiler unnötigen Aufwand verursacht habe. Beim letzten Mal dachte ich, mir wäre ein Fehler beim Hineinkopieren unterlaufen. Darauf habe ich diesmal besonders geachtet. Im Editor sieht das dann auch immer richtig gut aus, solange man "Submit" nicht auslöst. Großes Versprechen: Mache ich nie wieder!

    Zurück zum Thema: Das Skript selbst habe ich von @Tictactoo übernommen und setze es zum Auslesen aller MQTT-states ein. Wie gesagt, funktioniert es tadellos. Die onIDs werden immer sauber getriggert, was ja auch grundsätzlich bei GetTime der Fall ist. Wie und warum das mit den Arrays funktioniert, weiß ich ehrlich gesagt nicht.

    @joergeli said in Rhasspy Offline Sprachsteuerung:

    Ich würde testweise mal versuchen, diesen Abschnitt in die function befehl_empf() zu verlagern.

    Deinen Tipp werde ich mal befolgen und ausprobieren, ggf mit Hilfsobjekten, falls erforderlich

    @joergeli said in Rhasspy Offline Sprachsteuerung:

    Ich hoffe, mein Geschwafel hilft Dir trotzdem weiter.

    Ich halte deine Ausführungen nie für Geschwafel. Im Gegenteil: Ich schätze deine Meinung ganz außerordentlich. Vielen herzlichen Dank für deine Hilfe.

    Gruß
    Thomas

    Beste Grüße
    tobetobe

    1 Antwort Letzte Antwort
    0
    • joergeliJ joergeli

      Hallo Thomas,

      eins vorweg:
      Laß das mal mit den Spoilern, der Code wird dann irgendwie zerstückelt, besser kpl. als Code posten.

      Ich habe die "Stückelei" mal zusammengesetzt:

      // Skript zur Sprach-Ausgabe über TTS an Rhasspy
      //_________________________________________________________
      
      let http = require('http');
      let options = {
      host: '192.168.13.157', //Rhasspy IP-Adresse
      port: 12101, //Rhasspy Port
      path: "/api/text-to-speech",
      method: 'POST',
      headers: {
      'User-Agent' : 'ioBroker',
      'Content-Type': 'text/plain',
      }
      };
      //______________________________________________________________________________
      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.end();
      }
      //______________________________________________________________________________
      
      //WakeWord-/Befehls-Erkennung
      const wake = 'mqtt.0.rhasspy.de.transition.SnowboyWakeListener' // Datenpunkt aendert sich von listening auf loaded, wenn wakeword erkannt wurde
      const befehl = 'mqtt.0.rhasspy.de.transition.WebrtcvadCommandListener' // Datenpunkt aendert sich von listening auf loaded, wenn befehl erkannt erkannt wurde
      const ansage = 'Ja?' // Ansage, wenn wakeword erkannt wurde. Hinweis: - Ansagetext mögl. kurz, damit er nicht als Befehl erkannt wird!
      const empf_ok = "OK" // Dieser Text wird gesprochen, wenn befehl erkannt wurde
      
      on({id: wake, change: "any"},function(obj) {
      let empf_code = getState(wake).val ;
      if (empf_code== "loaded"){ wakeword(); }
      });
      
      on({id: befehl, change: "any"},function(obj) {
      let empf_code = getState(befehl).val ;
      if (empf_code== "loaded"){ befehl_empf(); }
      });
      
      function wakeword(){ httpPost(ansage); }
      
      function befehl_empf(){ httpPost(empf_ok); }
      //______________________________________________________________________________
      
      function formatTwoDigits(n) {
      return n < 10 ? '0' + n : n;
      }
      
      function wochentag(i){
      var tage = ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag'];
      var tag = (typeof(i) == 'object') ? i.getDay() : i ;
      return tage[tag];
      }
      //__________________________________________________
      
      
      //#######################################################################
      //Dieser Abschnitt wird m.E. nur einmalig!!!  beim Starten des Skriptes ausgeführt
      //#######################################################################
      var intentResult = $('mqtt.0.rhasspy.intent.GetTime');
      var intentArray = [];
      for(var i = 0; i < intentResult.length; i++)
      {
      log(intentResult[i]);
      intentArray.push(intentResult[i]);
      }
      //#######################################################################
      
      
      //#######################################################################
      // on({id: intentArray, change: "any"} wird niemals getriggert !!!
      //#######################################################################
      on({id: intentArray, change: "any"}, function (obj) {
      log(obj.newState.val);
      let intentObject = JSON.parse(obj.newState.val);
      if(intentObject.hasOwnProperty('state'))
      {
      var state = intentObject.state;
          if(state === "time"){
              log("nach Zeit gefragt");
              var now = new Date();
              var hours = formatTwoDigits(now.getHours());
              var minutes = formatTwoDigits(now.getMinutes());
              var seconds = formatTwoDigits(now.getSeconds());
              let TimeString = "Es ist jetzt  " + hours + ":" + minutes + ":" + seconds;
              log(TimeString);
              let data = TimeString;
              httpPost(data)
          };
      
      
          if(state === "date"){
              log("nach Datum gefragt");
              var datum = new Date();
              var tag = datum.getDay();
              var wotag = wochentag(tag);
              log(wotag);
              var now = new Date();
              var dd = now.getDate();
              var dd_string =  String(dd);
              var tagi =""
      
              if  (dd_string == "1")  { tagi = "ers";}   
              else if (dd_string == "3")  { tagi = "drit";}
              else { tagi = dd_string ;}
      
              var mm = now.getMonth()+1;
              var monat ="";
      
              if  (mm == 1)  { monat = "Januar";}   
              else if (mm == 2)  { monat = "Februar";} 
              else if (mm == 3)  { monat = "März";} 
              else if (mm == 4)  { monat = "April";} 
              else if (mm == 5)  { monat = "Mai";} 
              else if (mm == 6)  { monat = "Juni";} 
              else if (mm == 7)  { monat = "Juli";} 
              else if (mm == 8)  { monat = "August";} 
              else if (mm == 9)  { monat = "September";} 
              else if (mm == 10) { monat = "Oktober";} 
              else if (mm == 11) { monat = "November";} 
              else if (mm == 12) { monat = "Dezember";} 
       
              var yyyy = now.getFullYear();
      
              var DateString = 'Heute ist ' + wotag + ' der ' + tagi + '. '  + monat + ' ' + yyyy; 
              log(DateString);
              let data = DateString;
              httpPost(data)}};             
      
      });
      
      

      Ich kann das Problem bei mir leider nicht nachvollziehen, da ich für meine verschiedenen Intents (Temperatur, Lampen, Zeit, etc.) jeweils einen eigenen Datenpunkt verwende - diesen Datenpunkt prüfe ich dann auf Änderung und triggere dann entspr. die Ausgabe, bzw. Sprachansage.

      So wie ich das sehe, werden Deine Intents in ein Array geschrieben?
      Dieses Array willst Du dann auf Änderung prüfen und entspr. Ansagen generieren?

      Etwas ist mir aber in Deinem Skript aufgefallen:
      Ich glaube, die Variable var intentResult = $('mqtt.0.rhasspy.intent.GetTime');, bzw. das intentArray wird nur einmalig bei Scriptstart abgefragt, bzw. gefüllt.
      Somit wird auch on({id: intentArray, change: "any"}..... niemals bei Arrayänderung getriggert, d.h. es können keine Sprachausgaben erfolgen.
      Ich habe die Stelle im Script mal mit //######################## markiert.

      Ich würde testweise mal versuchen, diesen Abschnitt in die function befehl_empf() zu verlagern.
      Dann müsste theoretisch jedes Mal, nachdem ein Befehl empfangen wurde, das Array gefüllt werden.
      Anschließend könnte dann auf die Änderung des Arrays getriggert werden und mit den entspr. if-Abfragen, die entspr. Sprachansagen ausgegeben werden.

      Ich kenne mich zu wenig in JS aus, um zu beurteilen, ob überhaupt mit einer Array-Änderung getriggert werden kann.
      Zur Not müsste man sich ein "Hilfsobjekt", bzw. "Hilfs-State" erstellen, wie z.B. "javascript.0.Arrayaenderung" und auf Änderung desselben triggern.
      Mit anderen Worten: Wenn sich das Array ändert, wird ebenfalls mit z.B. setState ('javascript.0.Arrayaenderung', true); gesetzt.
      Mit dieser Änderung des Datenpunktes Arrayaenderung kann dann getriggert werden.

      Ich glaube übrigens nicht, daß das Problem mit globalen/lokalen Variablen zusammenhängt.

      Ich hoffe, mein Geschwafel hilft Dir trotzdem weiter.

      Gruß
      Jörg

      tobetobeT Offline
      tobetobeT Offline
      tobetobe
      schrieb am zuletzt editiert von
      #128

      @joergeli
      Hallo Jörg,

      wie ich sehe, hast du dich weiterhin mit Rhasspy Version 2.5 befasst. Mal abgesehen von deinem spezifischen Problem: Ist diese Version aus deiner Sicht schon alltagstauglich oder generell noch zu fehlerbehaftet? Abhängig von deiner Empfehlung würde ich dann entweder auch migrieren oder ggf noch warten.

      Einen schönen Sonntag noch
      Thomas

      Beste Grüße
      tobetobe

      1 Antwort Letzte Antwort
      0
      • joergeliJ Online
        joergeliJ Online
        joergeli
        schrieb am zuletzt editiert von
        #129

        Hallo Thomas,

        für mich ist die V 2.5-pre nicht lauffähig, so lange sie nicht mit dem ioBroker MQTT-Adapter und dem Nicht-Standard-Port 1891 funktioniert.
        Wenn Du vielleicht meine Beiträge im Rhasspy-Forum gelesen hast, funktionieren weder WakeWord (snowboyumdl) noch Wake-Up-Button, wenn ein externer, Nicht-Standard-MQTT-Port in Rhasspy aktiviert wird.
        Mit der V 2.4.19 funktioniert das einwandfrei.

        Übrigens: Kaldi installiert sich bloß mit dem englischen Profil.
        Bei deutschem Profil kommt: Not compatible.

        Von einer Migration Deinerseits würde ich momentan abraten.
        Wenn, dann würde ich höchstens eine Parallel-Installation, oder noch besser, eine autarke Installation auf einem anderen Raspi probieren.

        Wenn Du magst, kannst Du dann ja auch mal probieren, ob es bei Dir dann auch das Problem mit einem Nicht-Standard-MQTT-Port gibt, bzw. mit Port 1883 funktioniert.

        Im Rhasspy-Forum nutzen wohl alle nur den Standard-Port 1883.
        Wenn das Problem nicht gelöst wird, werde ich bei der V 2.4.19 bleiben.

        Nebenbei: Bist Du mit Deinem Script weiter gekommen?

        Gruß
        Jörg

        tobetobeT 1 Antwort Letzte Antwort
        0
        • joergeliJ joergeli

          Hallo Thomas,

          für mich ist die V 2.5-pre nicht lauffähig, so lange sie nicht mit dem ioBroker MQTT-Adapter und dem Nicht-Standard-Port 1891 funktioniert.
          Wenn Du vielleicht meine Beiträge im Rhasspy-Forum gelesen hast, funktionieren weder WakeWord (snowboyumdl) noch Wake-Up-Button, wenn ein externer, Nicht-Standard-MQTT-Port in Rhasspy aktiviert wird.
          Mit der V 2.4.19 funktioniert das einwandfrei.

          Übrigens: Kaldi installiert sich bloß mit dem englischen Profil.
          Bei deutschem Profil kommt: Not compatible.

          Von einer Migration Deinerseits würde ich momentan abraten.
          Wenn, dann würde ich höchstens eine Parallel-Installation, oder noch besser, eine autarke Installation auf einem anderen Raspi probieren.

          Wenn Du magst, kannst Du dann ja auch mal probieren, ob es bei Dir dann auch das Problem mit einem Nicht-Standard-MQTT-Port gibt, bzw. mit Port 1883 funktioniert.

          Im Rhasspy-Forum nutzen wohl alle nur den Standard-Port 1883.
          Wenn das Problem nicht gelöst wird, werde ich bei der V 2.4.19 bleiben.

          Nebenbei: Bist Du mit Deinem Script weiter gekommen?

          Gruß
          Jörg

          tobetobeT Offline
          tobetobeT Offline
          tobetobe
          schrieb am zuletzt editiert von
          #130

          @joergeli

          Hallo Jörg,

          das ist ja mal ne klare Ansage. Ich lasse mir etwas einfallen, wie ich die Migration hinbekommen kann. Ich habe ja eine Master/Satellite-Konfiguration. Den Master könnte ich auf einer virtuellen Linux-Maschine installieren und für den Satelliten habe ich noch einen alten PI3 und eine USB-Kamera mit Mikrofon. MGTT läuft bei mir als ioBroker Adapter. Der Port lässt sich dort einstellen. So könnte ich versuchen, dein Problem nachzustellen.

          Ein absolutes Muss ist natürlich, dass Kaldi im deutschen Profil unterstützt wird. Aber auch das kann ich mal für dich testen. Ich entsinne mich, dass du die Fehlermeldung "Not compatible" in einer früheren Version auch bereits geschildert hattest. Vielleicht finde ich so also auch heraus, ob das ein individuelles Problem deiner Installation ist, oder ob es sich um einen generellen Mangel der 2.5 handelt.

          Hört sich so an, wie wenn auch die nächste Woche nicht langweilig würde...

          @joergeli said in Rhasspy Offline Sprachsteuerung:

          Nebenbei: Bist Du mit Deinem Script weiter gekommen?

          Nein, das habe ich zunächst mal an die Seite geschoben. Mein aktueller Workaround ist ein zweites Skript, in dem nur die Abfragen für Datum und Zeit gehandelt werden. Hier muss ich dann bis eine Lösunge gefunden ist, auf die Ansage Ja/OK verzichten. Hauptsache, das Ergebnis selbst wird angesagt. In meinem Hauptskript alle anderen Intents mit Ansage Ja/OK.

          Für diesen Weg habe ich mich entschieden, weil ich die Zeit lieber in das design eines Gehäuses stecken wollte. Mit meine ersten Schritten mit FreeCAD bin ich soweit ganz zufrieden. Nun stoße ich jedoch auf einige Hindernisse, von denen ich noch nicht weiß, ob sie zwischen meinen Ohren oder in der Software liegen. Version 0.17 ist ja auch noch keine richtige Release. Die fangen ja üblicherweise erst mit 1.x an. Und einiges scheint mir durchaus noch buggy zu sein.

          Gruß
          Thomas

          Beste Grüße
          tobetobe

          joergeliJ 2 Antworten Letzte Antwort
          0
          • tobetobeT tobetobe

            @joergeli

            Hallo Jörg,

            das ist ja mal ne klare Ansage. Ich lasse mir etwas einfallen, wie ich die Migration hinbekommen kann. Ich habe ja eine Master/Satellite-Konfiguration. Den Master könnte ich auf einer virtuellen Linux-Maschine installieren und für den Satelliten habe ich noch einen alten PI3 und eine USB-Kamera mit Mikrofon. MGTT läuft bei mir als ioBroker Adapter. Der Port lässt sich dort einstellen. So könnte ich versuchen, dein Problem nachzustellen.

            Ein absolutes Muss ist natürlich, dass Kaldi im deutschen Profil unterstützt wird. Aber auch das kann ich mal für dich testen. Ich entsinne mich, dass du die Fehlermeldung "Not compatible" in einer früheren Version auch bereits geschildert hattest. Vielleicht finde ich so also auch heraus, ob das ein individuelles Problem deiner Installation ist, oder ob es sich um einen generellen Mangel der 2.5 handelt.

            Hört sich so an, wie wenn auch die nächste Woche nicht langweilig würde...

            @joergeli said in Rhasspy Offline Sprachsteuerung:

            Nebenbei: Bist Du mit Deinem Script weiter gekommen?

            Nein, das habe ich zunächst mal an die Seite geschoben. Mein aktueller Workaround ist ein zweites Skript, in dem nur die Abfragen für Datum und Zeit gehandelt werden. Hier muss ich dann bis eine Lösunge gefunden ist, auf die Ansage Ja/OK verzichten. Hauptsache, das Ergebnis selbst wird angesagt. In meinem Hauptskript alle anderen Intents mit Ansage Ja/OK.

            Für diesen Weg habe ich mich entschieden, weil ich die Zeit lieber in das design eines Gehäuses stecken wollte. Mit meine ersten Schritten mit FreeCAD bin ich soweit ganz zufrieden. Nun stoße ich jedoch auf einige Hindernisse, von denen ich noch nicht weiß, ob sie zwischen meinen Ohren oder in der Software liegen. Version 0.17 ist ja auch noch keine richtige Release. Die fangen ja üblicherweise erst mit 1.x an. Und einiges scheint mir durchaus noch buggy zu sein.

            Gruß
            Thomas

            joergeliJ Online
            joergeliJ Online
            joergeli
            schrieb am zuletzt editiert von joergeli
            #131

            @tobetobe
            Hallo Thomas,
            nur das wir uns nicht falsch verstehen:
            Im ioBroker-Log sehe ich schon, das Rhasspy V 2.5-pre sich auf Topics im MQTT-Broker subscribed, nur reagiert Rhasspy danach weder auf WakeWord, noch auf Wake-Up-Button - mit anderen Worten: Er hört einfach nicht mehr.

            Stelle ich auf den internen MQTT-Port zurück, funktioniert wieder alles, aber natürlich kommen dann keine Intents mehr in ioBroker an.

            Kaldi:
            Ja, Du hast Recht, ich hatte auch in der alten Rhasspy-Version Probleme mit Kaldi.
            Dort habe ich Kaldi dann manuell installiert und irgendwie hingefummelt, daß es mit Rhasspy zusammenspielt.

            Andererseits habe ich bei jeder meiner 2.5er Installationen zuerst den Docker-Container gestoppt/gelöscht (docker stop <container-id>, docker rm <container-id>) und danach auch noch das Image gelöscht (docker rmi <image-id>).
            Also nicht nur docker pull xyz.
            Somit sollte der Raspi bzgl. Rhasspy dann vor jeder Neuinstallation jungfräulich gewesen sein.
            Bei erneuter Installation via Docker, konnte man dann auch sehen, daß er sich alle Dateien neu heruntergeladen hat.

            Wie gesagt, mit englischem Profil installiert sich Kaldi "out of the box" und mit deutschem Profil würde ich es wahrscheinlich wieder "hingefummelt" bekommen.
            Wenn sich Kaldi bei Dir auch nicht mit deutschem Profil installiert, weise doch bitte im Rhasspy-Forum darauf hin.
            Ich möchte da z. Zt. nicht noch eine Baustelle aufmachen ( gerade gesehen: Du hast dort ja schon nachgefragt )

            Übrigens: Das Kopieren der sentences.ini, bzw. custom_words.txt aus dem alten Profil in das neue Profil funktioniert.
            Es wird u.U. angemeckert, das die Pronounciation (Aussprache) einiger Worte nicht erkannt wird, daß kann man aber per Button-Klick bestätigen und sich evtl. später um nicht korrekte Aussprachen kümmern.

            Allgemein:
            Ich sehe momentan - bis auf die geänderte WEB-GUI - keine großen Unterschiede der 2.5-pre gegenüber der V 2.4.19, kann aber nicht beurteilen, was sich alles "unter der Haube" geändert/verbessert hat.

            @tobetobe sagte in Rhasspy Offline Sprachsteuerung:

            Nein, das habe ich zunächst mal an die Seite geschoben. Mein aktueller Workaround ist ein zweites Skript, in dem nur die Abfragen für Datum und Zeit gehandelt werden. Hier muss ich dann bis eine Lösunge gefunden ist, auf die Ansage Ja/OK verzichten. Hauptsache, das Ergebnis selbst wird angesagt. In meinem Hauptskript alle anderen Intents mit Ansage Ja/OK.

            Hmmm, das liest sich für mich so, als ob nur Datum/Zeit Probleme machen, sprich: wenn innerhalb des Scriptes weitere JS-Subroutinen abgearbeitet werden.
            Bei Deinen anderen Intents greifst Du ja direkt auf die Rückmeldungen von Rhasspy zu, ohne erst manuelle JS-Ansagen zu generieren?

            Nebenbei: Ich lasse bei mir anstatt "OK" --> "Moment bitte" sagen, da es ja einen Moment dauert, bis Rhasspy antwortet.
            Somit weiß der geneigte "Fragesteller", daß Rhasspy noch beschäftigt ist.

            FreeCad:
            @tobetobe sagte in Rhasspy Offline Sprachsteuerung:

            Version 0.17 ist ja auch noch keine richtige Release

            Nun ja, FreeCAD ist aber doch schon recht lange "auf dem Markt".
            Ich habe bei mir die FreeCad V 0.18.
            Dort konstruiere ich am Liebsten in der Part-Engine.
            Ich ziehe mir dort Quader, Zylinder, etc. in die Arbeitsfläche und bemaße diese dann.
            Wenn ich z.B. einen L-Winkel haben möchte, nehme ich 2 Quader, bemaße sie und drehe dann einen der Quader um 90 ° .
            Dann einen Quader in den anderen schieben, anschl. beide Quader markieren und verschmelzen (vereinige mehrere Formen).
            Der umgekehrte Weg, wie z.B. ein rundes Loch in einen Quader "bohren" funktioniert genauso:
            Quader und Zylinder auf die Arbeitsfläche ziehen, bemaßen, dann ggf. den Zylinder drehen/kippen und in den Quader schieben, dann beide Formen (Zylinder und Quader) markieren und Zylinder vom Quader subtrahieren (schneidet zwei Formen).
            So kann ich mir dann nach "Origami-Art" beliebige Körper zusammensetzen.
            Für mich geht das einfacher/schneller, als mit der Sketcher-Eingine.

            1 Antwort Letzte Antwort
            0
            • System 9S Offline
              System 9S Offline
              System 9
              schrieb am zuletzt editiert von
              #132

              Hallo,
              mal eine frage zwischen durch, ich bin selber auf der suche nach einer offline sprachsteuerung.
              iobroker läuft bei mir auf einem Ubuntu System.
              Mein ziel wäre es 10 Räume mit mic und lautsprecher auszustatten (vieleicht über 10 usb Soundkarten).
              Wäre das mit Rhasspy realisierbar, kann man hier mehrere räume einrichten ?

              joergeliJ tobetobeT 2 Antworten Letzte Antwort
              0
              • System 9S System 9

                Hallo,
                mal eine frage zwischen durch, ich bin selber auf der suche nach einer offline sprachsteuerung.
                iobroker läuft bei mir auf einem Ubuntu System.
                Mein ziel wäre es 10 Räume mit mic und lautsprecher auszustatten (vieleicht über 10 usb Soundkarten).
                Wäre das mit Rhasspy realisierbar, kann man hier mehrere räume einrichten ?

                joergeliJ Online
                joergeliJ Online
                joergeli
                schrieb am zuletzt editiert von
                #133

                @System-9
                Hi,
                da kennt sich bestimmt Thomas besser aus.
                Soweit ich das beurteilen kann, sollte es mit einem Master Rhasspy und 9 Satelliten ( evtl. reichen da Raspi Zero aus) funktionieren.
                Wobei dann jeder Satellit ein Micro und Lautsprecher haben muss.
                Sprachausgabe könnte über USB-Soundkarte funktionieren.
                Wie gesagt, warte mal ab, ob Thomas da mehr zu sagen kann, oder google mal nach "Rhasspy Community" und schau im dortigen Forum, ob Du da fündig wirst.

                1 Antwort Letzte Antwort
                0
                • System 9S System 9

                  Hallo,
                  mal eine frage zwischen durch, ich bin selber auf der suche nach einer offline sprachsteuerung.
                  iobroker läuft bei mir auf einem Ubuntu System.
                  Mein ziel wäre es 10 Räume mit mic und lautsprecher auszustatten (vieleicht über 10 usb Soundkarten).
                  Wäre das mit Rhasspy realisierbar, kann man hier mehrere räume einrichten ?

                  tobetobeT Offline
                  tobetobeT Offline
                  tobetobe
                  schrieb am zuletzt editiert von
                  #134

                  @System-9
                  Hallo,
                  seit wenigen Tagen gibt es ja nun eine neue Pre-Release 2.5. Ich habe sie selbst noch nicht installiert, aber mich mit den verfübaren Beschreibungen bereits intensiv auseinandergesetzt. Grundsätzlich ist Rhasspy ja heute bereits fähig, über einen zentralen Master mehrere periphere Satelliten zu versorgen. Mit Version 2.5 wird diese Fähigkeit nochmals weiter ausgebaut, und wie ich es bisher sehen konnte, auch optimiert. Insofern würde ich deine Frage mit einem klaren JA beantworten.

                  Du sprichst von einem Ubuntu System für deinen ioBroker. Ubuntu ist absolut OK. Die wesentliche Frage ist natürlich, ob deine Hardware, auf der Ubuntu läuft, leistungsfähig genug ist, ioBroker und Rhasspy Master für bis zu 10 Satelliten zu unterstützen.

                  Ich selbst mache das auch so: Odroid H2 mit 16 GB RAM als gemeinsamer Server für ioBroker und Rhasspy Master. Das läuft tadellos und ich habe auch noch reichlich Reserven. Wenn du allerdings Ubuntu auf einem Raspi 3 oder 4 laufen hast, würde ich dir eher davon abraten, beide Systeme (ioBroker und Rhasspy) auf dieses eine Stück Hardware zu packen. Führe dir immer vor Augen, dass ioBroker stabil laufen muss, und nicht durch ein nettes Gimmick gefährdet werden sollte.

                  Dies noch als zusätzliche Hinweise. Aber wie gesagt: Ja, ich halte Rhasspy für dein Vorhaben für eine sehr gut geeignete Plattform.

                  Bevor du anfängst Hardware zu kaufen: Überlege dir genau, was die Satelliten in Punkto Spracheingabe und Audio-Ausgabe leisten sollen. Auch dazu können wir dir hier glaube ich schon ganz gut Hilfestellung geben.

                  Bei Fragen: Fragen!

                  Gruß
                  Thomas

                  Beste Grüße
                  tobetobe

                  System 9S 1 Antwort Letzte Antwort
                  0
                  • tobetobeT tobetobe

                    @joergeli

                    Hallo Jörg,

                    das ist ja mal ne klare Ansage. Ich lasse mir etwas einfallen, wie ich die Migration hinbekommen kann. Ich habe ja eine Master/Satellite-Konfiguration. Den Master könnte ich auf einer virtuellen Linux-Maschine installieren und für den Satelliten habe ich noch einen alten PI3 und eine USB-Kamera mit Mikrofon. MGTT läuft bei mir als ioBroker Adapter. Der Port lässt sich dort einstellen. So könnte ich versuchen, dein Problem nachzustellen.

                    Ein absolutes Muss ist natürlich, dass Kaldi im deutschen Profil unterstützt wird. Aber auch das kann ich mal für dich testen. Ich entsinne mich, dass du die Fehlermeldung "Not compatible" in einer früheren Version auch bereits geschildert hattest. Vielleicht finde ich so also auch heraus, ob das ein individuelles Problem deiner Installation ist, oder ob es sich um einen generellen Mangel der 2.5 handelt.

                    Hört sich so an, wie wenn auch die nächste Woche nicht langweilig würde...

                    @joergeli said in Rhasspy Offline Sprachsteuerung:

                    Nebenbei: Bist Du mit Deinem Script weiter gekommen?

                    Nein, das habe ich zunächst mal an die Seite geschoben. Mein aktueller Workaround ist ein zweites Skript, in dem nur die Abfragen für Datum und Zeit gehandelt werden. Hier muss ich dann bis eine Lösunge gefunden ist, auf die Ansage Ja/OK verzichten. Hauptsache, das Ergebnis selbst wird angesagt. In meinem Hauptskript alle anderen Intents mit Ansage Ja/OK.

                    Für diesen Weg habe ich mich entschieden, weil ich die Zeit lieber in das design eines Gehäuses stecken wollte. Mit meine ersten Schritten mit FreeCAD bin ich soweit ganz zufrieden. Nun stoße ich jedoch auf einige Hindernisse, von denen ich noch nicht weiß, ob sie zwischen meinen Ohren oder in der Software liegen. Version 0.17 ist ja auch noch keine richtige Release. Die fangen ja üblicherweise erst mit 1.x an. Und einiges scheint mir durchaus noch buggy zu sein.

                    Gruß
                    Thomas

                    joergeliJ Online
                    joergeliJ Online
                    joergeli
                    schrieb am zuletzt editiert von joergeli
                    #135

                    @tobetobe sagte in Rhasspy Offline Sprachsteuerung:

                    Der Port lässt sich dort einstellen. So könnte ich versuchen, dein Problem nachzustellen.

                    Ich bin anscheinend nicht allein mit dem MQTT-Problem:
                    Rhasspy-Voltron/issues

                    Nachtrag 24.03.2020:
                    @synesthesiam hat es jetzt als BUG deklariert.

                    tobetobeT 1 Antwort Letzte Antwort
                    0
                    • joergeliJ joergeli

                      @tobetobe sagte in Rhasspy Offline Sprachsteuerung:

                      Der Port lässt sich dort einstellen. So könnte ich versuchen, dein Problem nachzustellen.

                      Ich bin anscheinend nicht allein mit dem MQTT-Problem:
                      Rhasspy-Voltron/issues

                      Nachtrag 24.03.2020:
                      @synesthesiam hat es jetzt als BUG deklariert.

                      tobetobeT Offline
                      tobetobeT Offline
                      tobetobe
                      schrieb am zuletzt editiert von
                      #136

                      @joergeli
                      Hallo Jörg,
                      ja ich habe das Thema auch verfolgt. Auch darin, dass Synthesiam auf deinen Post noch nicht geantwortet hat, sehe ich eine Bestätigung, dass hier tatsächlich noch ein Fehlverhalten vorliegt.

                      Noch befinde ich mich ja im theoretischen Bereich zur 2.5. Ich habe mir diese Anleitung

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

                      bereits mehrfach angeschaut. Ohne parallel zu testen, ist zwar vieles verständlich, aber nicht nachvollziehbar. Und so frage ich mich, ob die Hinweise zu einem externen MQTT-Broker nicht eine Bedeutung auch für das von dir geschilderte Problem haben könnten. Morgen muss ich mich um einige berufliche Angelegenheiten kümmern (und meine Frau wurde ebenfalls verdonnert, im Home Office zu arbeiten). Von daher wird es wahrscheinlich nicht so schnell gehen, bis ich zum Testen der 2.5 komme. Steht für mich aber jetzt auf Prio 1.

                      Gruß und Gute Nacht
                      Thomas

                      Beste Grüße
                      tobetobe

                      joergeliJ 2 Antworten Letzte Antwort
                      0
                      • tobetobeT tobetobe

                        @joergeli
                        Hallo Jörg,
                        ja ich habe das Thema auch verfolgt. Auch darin, dass Synthesiam auf deinen Post noch nicht geantwortet hat, sehe ich eine Bestätigung, dass hier tatsächlich noch ein Fehlverhalten vorliegt.

                        Noch befinde ich mich ja im theoretischen Bereich zur 2.5. Ich habe mir diese Anleitung

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

                        bereits mehrfach angeschaut. Ohne parallel zu testen, ist zwar vieles verständlich, aber nicht nachvollziehbar. Und so frage ich mich, ob die Hinweise zu einem externen MQTT-Broker nicht eine Bedeutung auch für das von dir geschilderte Problem haben könnten. Morgen muss ich mich um einige berufliche Angelegenheiten kümmern (und meine Frau wurde ebenfalls verdonnert, im Home Office zu arbeiten). Von daher wird es wahrscheinlich nicht so schnell gehen, bis ich zum Testen der 2.5 komme. Steht für mich aber jetzt auf Prio 1.

                        Gruß und Gute Nacht
                        Thomas

                        joergeliJ Online
                        joergeliJ Online
                        joergeli
                        schrieb am zuletzt editiert von
                        #137

                        @tobetobe
                        Hallo Thomas,
                        nur kein Stress :blush:
                        Ich habe nur langsam an mir selbst gezweifelt, da im Forum immer nur unisono zu lesen war, daß es bei anderen (mit dem externen MQTT-broker funktioniert (allerdings immer mit dem Standard-Port 1883).

                        Mach Deine Tests aber bitte nicht nur wegen mir, nicht daß Deine bisherige Installation über den Jordan geht!

                        Kaldi:
                        Das ist auch wieder so eine Sache:
                        Im Forum heißt es, Kaldi funktioniert unter V2.5-pre mit deutschem Profil.

                        Kann ich aber nur eingeschränkt bestätigen:
                        Ich habe gerade eben die V 2.5 nochmals kpl. mit englischem Profil installiert --> Kaldi auswählbar.
                        Anschließend habe ich den "englischen Container" gestoppt und das deutsche Profil installiert.
                        Jetzt ist Kaldi auch im deutschen Profil aktivierbar und die entspr. Kaldi-Dateien werden heruntergeladen.

                        Zu diesem Umstand, also erst englisches Profil installieren, anschl. deutsches Profil, meine ich im Forum auch schon bei V2.4.18/V2.4.19 gelesen zu haben.

                        Ich bin nur froh, daß ich einen zweiten Raspi zum Testen habe.
                        Den ersten mit der V2.4.19 fasse ich nach Möglichkeit gar nicht mehr an, bzw. nur mit Samthandschuhen, damit ich ihn mir nicht zerschieße.

                        Gruß und bis demnächst
                        Jörg

                        1 Antwort Letzte Antwort
                        0
                        • tobetobeT tobetobe

                          @System-9
                          Hallo,
                          seit wenigen Tagen gibt es ja nun eine neue Pre-Release 2.5. Ich habe sie selbst noch nicht installiert, aber mich mit den verfübaren Beschreibungen bereits intensiv auseinandergesetzt. Grundsätzlich ist Rhasspy ja heute bereits fähig, über einen zentralen Master mehrere periphere Satelliten zu versorgen. Mit Version 2.5 wird diese Fähigkeit nochmals weiter ausgebaut, und wie ich es bisher sehen konnte, auch optimiert. Insofern würde ich deine Frage mit einem klaren JA beantworten.

                          Du sprichst von einem Ubuntu System für deinen ioBroker. Ubuntu ist absolut OK. Die wesentliche Frage ist natürlich, ob deine Hardware, auf der Ubuntu läuft, leistungsfähig genug ist, ioBroker und Rhasspy Master für bis zu 10 Satelliten zu unterstützen.

                          Ich selbst mache das auch so: Odroid H2 mit 16 GB RAM als gemeinsamer Server für ioBroker und Rhasspy Master. Das läuft tadellos und ich habe auch noch reichlich Reserven. Wenn du allerdings Ubuntu auf einem Raspi 3 oder 4 laufen hast, würde ich dir eher davon abraten, beide Systeme (ioBroker und Rhasspy) auf dieses eine Stück Hardware zu packen. Führe dir immer vor Augen, dass ioBroker stabil laufen muss, und nicht durch ein nettes Gimmick gefährdet werden sollte.

                          Dies noch als zusätzliche Hinweise. Aber wie gesagt: Ja, ich halte Rhasspy für dein Vorhaben für eine sehr gut geeignete Plattform.

                          Bevor du anfängst Hardware zu kaufen: Überlege dir genau, was die Satelliten in Punkto Spracheingabe und Audio-Ausgabe leisten sollen. Auch dazu können wir dir hier glaube ich schon ganz gut Hilfestellung geben.

                          Bei Fragen: Fragen!

                          Gruß
                          Thomas

                          System 9S Offline
                          System 9S Offline
                          System 9
                          schrieb am zuletzt editiert von
                          #138

                          @tobetobe
                          Vielen Dank für die Antwort.
                          Um den master mache ich mir keine sorgen, läuft auf virtuell auf einem Server (24core 100gb Ram).
                          was würdest du als Hardware für die Satelliten empfehlen. Ich habe hier schon an Richtmikrofone gedacht, da die dinger in der Decke verschwinden sollen, mein Problem bis jetzt war, das ich auch deckenlautsprecher benötige und diese dann einen kleinen Verstärker.
                          Und als Herausforderung, solllen die lautsprecher natürlich dann über iobroker noch spotify abspielen können :dizzy_face:

                          tobetobeT 1 Antwort Letzte Antwort
                          0
                          • System 9S System 9

                            @tobetobe
                            Vielen Dank für die Antwort.
                            Um den master mache ich mir keine sorgen, läuft auf virtuell auf einem Server (24core 100gb Ram).
                            was würdest du als Hardware für die Satelliten empfehlen. Ich habe hier schon an Richtmikrofone gedacht, da die dinger in der Decke verschwinden sollen, mein Problem bis jetzt war, das ich auch deckenlautsprecher benötige und diese dann einen kleinen Verstärker.
                            Und als Herausforderung, solllen die lautsprecher natürlich dann über iobroker noch spotify abspielen können :dizzy_face:

                            tobetobeT Offline
                            tobetobeT Offline
                            tobetobe
                            schrieb am zuletzt editiert von
                            #139

                            @System-9
                            Guten Morgen

                            @System-9 said in Rhasspy Offline Sprachsteuerung:

                            Um den master mache ich mir keine sorgen, läuft auf virtuell auf einem Server (24core 100gb Ram).

                            Das ist zwar etwas knapp, dürfte aber notfalls gehen:grin:

                            Nun aber im Ernst. Ich greife mal einige Stichworte von dir auf.

                            1. Richtmikrofone. Da muss ich dich natürlich erst einmal fragen, was du darunter verstehst. Echte Richtmikrofone weisen üblicherweise einen sehr schmalen Empfangswinkel auf. Außerhalb dieses Winkels sinkt die Empfindlichkeit rapide ab. Das ist im Zusammenhang mit Spracherkennung eigentlich genau das, was man nicht will.

                            Im Allgemeinen - und da sind die Profis wie Alexa etc sicher die besten Beispiele, haben sich nicht Richtmikrofone, sondern Mikrofon-Arrays durchgesetzt, die dank spezieller Eigenschaften "rundum" empfangen, aber dennoch für größere Distanzen (mehrere Meter) geeignet sind.

                            Die am meisten verwendeten Arrays stammen von ReSpeaker oder von Matrix.

                            1. Unterbringung in der Decke: Dies spricht für eine geringe Baugröße, steht aber zugleich im Widerspruch zu deinem Wunsch, Musik über Lautsprecher abspielen zu wollen. Beides gleichzeitig geht nicht ohne entsprechenden Raum zu spendieren, und zwar für Mikrofon, Prozessor, HiFi-Verstärker, Lautsprecher (ggf mehrere?, dann mit Frequenzweiche), Stromversorgung

                            Ich hoffe, du bist dir darüber im Klaren. Bzw. hier musst du dich entscheiden.

                            a) wenn es wirklich ganz klein ausfallen soll, dann ohne großen Audio-Teil. Hierfür gibt es zwei Möglichkeiten: Entweder die "einfachen" Mikrofon Arrays mit einem externen Prozessor. Hier reicht wohl schon ein Pi Zero (habe ich selbst noch nicht getestet) oder ein Pi3/4 mit 1 bis 2 GByte RAM. Oder man nimmt die Core Varianten der Mikrofone, die bereits einen Linux-Kern beinhalten und ohne weiteren Prozessor auskommen. Beide Mikrofon Varianten (mit und ohne Core) gibt es von beiden Herstellern.
                            b) wenn es der maximale Funktionsumfang sein soll: Dann das volle Programm wie unter 2 beschrieben, als Prozessor Pi4 mit 2 bis 4GByte RAM

                            Maßgeblich müsste deine Vorstellung zu den Lautsprechern und zur "Power" den Platzbedarf bestimmen. Mikrofon und Prozessor sind im Verhältnis nur Kleinkram. Persönlich könnte ich mir auch zu b) durchaus vorstellen, das alles in einem Deckenraum unterzubringen. Eines solltest du dann aber noch wissen: Selbstverständlich gibt es für dein Vorhaben kein Standardgehäuse. Da müsstest du dir auch selbst etwas bauen...

                            Und eines solltest du dir auch noch überlegen: Wenn du volle Möhre Musik hörst, die aus Lautsprechern kommt, die sich unmittelbar neben dem Mikrofon befinden, wie willst du dann noch einen neuen Sprachbefehl fehlerfrei erkennen lassen?

                            Was ich damit sagen will: Erst drüber nachdenken, was du wirklich willst, und dann die Ärmel hochkrempeln, ist besser, als einfach loslegen, Geld ausgeben und dann frustriert aufgeben, weil die eigene Vorstellung die Möglichkeiten überschreitet.

                            Soweit in Kürze.

                            Gruß
                            Thomas

                            Beste Grüße
                            tobetobe

                            System 9S 1 Antwort Letzte Antwort
                            0
                            • tobetobeT tobetobe

                              @System-9
                              Guten Morgen

                              @System-9 said in Rhasspy Offline Sprachsteuerung:

                              Um den master mache ich mir keine sorgen, läuft auf virtuell auf einem Server (24core 100gb Ram).

                              Das ist zwar etwas knapp, dürfte aber notfalls gehen:grin:

                              Nun aber im Ernst. Ich greife mal einige Stichworte von dir auf.

                              1. Richtmikrofone. Da muss ich dich natürlich erst einmal fragen, was du darunter verstehst. Echte Richtmikrofone weisen üblicherweise einen sehr schmalen Empfangswinkel auf. Außerhalb dieses Winkels sinkt die Empfindlichkeit rapide ab. Das ist im Zusammenhang mit Spracherkennung eigentlich genau das, was man nicht will.

                              Im Allgemeinen - und da sind die Profis wie Alexa etc sicher die besten Beispiele, haben sich nicht Richtmikrofone, sondern Mikrofon-Arrays durchgesetzt, die dank spezieller Eigenschaften "rundum" empfangen, aber dennoch für größere Distanzen (mehrere Meter) geeignet sind.

                              Die am meisten verwendeten Arrays stammen von ReSpeaker oder von Matrix.

                              1. Unterbringung in der Decke: Dies spricht für eine geringe Baugröße, steht aber zugleich im Widerspruch zu deinem Wunsch, Musik über Lautsprecher abspielen zu wollen. Beides gleichzeitig geht nicht ohne entsprechenden Raum zu spendieren, und zwar für Mikrofon, Prozessor, HiFi-Verstärker, Lautsprecher (ggf mehrere?, dann mit Frequenzweiche), Stromversorgung

                              Ich hoffe, du bist dir darüber im Klaren. Bzw. hier musst du dich entscheiden.

                              a) wenn es wirklich ganz klein ausfallen soll, dann ohne großen Audio-Teil. Hierfür gibt es zwei Möglichkeiten: Entweder die "einfachen" Mikrofon Arrays mit einem externen Prozessor. Hier reicht wohl schon ein Pi Zero (habe ich selbst noch nicht getestet) oder ein Pi3/4 mit 1 bis 2 GByte RAM. Oder man nimmt die Core Varianten der Mikrofone, die bereits einen Linux-Kern beinhalten und ohne weiteren Prozessor auskommen. Beide Mikrofon Varianten (mit und ohne Core) gibt es von beiden Herstellern.
                              b) wenn es der maximale Funktionsumfang sein soll: Dann das volle Programm wie unter 2 beschrieben, als Prozessor Pi4 mit 2 bis 4GByte RAM

                              Maßgeblich müsste deine Vorstellung zu den Lautsprechern und zur "Power" den Platzbedarf bestimmen. Mikrofon und Prozessor sind im Verhältnis nur Kleinkram. Persönlich könnte ich mir auch zu b) durchaus vorstellen, das alles in einem Deckenraum unterzubringen. Eines solltest du dann aber noch wissen: Selbstverständlich gibt es für dein Vorhaben kein Standardgehäuse. Da müsstest du dir auch selbst etwas bauen...

                              Und eines solltest du dir auch noch überlegen: Wenn du volle Möhre Musik hörst, die aus Lautsprechern kommt, die sich unmittelbar neben dem Mikrofon befinden, wie willst du dann noch einen neuen Sprachbefehl fehlerfrei erkennen lassen?

                              Was ich damit sagen will: Erst drüber nachdenken, was du wirklich willst, und dann die Ärmel hochkrempeln, ist besser, als einfach loslegen, Geld ausgeben und dann frustriert aufgeben, weil die eigene Vorstellung die Möglichkeiten überschreitet.

                              Soweit in Kürze.

                              Gruß
                              Thomas

                              System 9S Offline
                              System 9S Offline
                              System 9
                              schrieb am zuletzt editiert von
                              #140

                              @tobetobe
                              Zum Thema Platz, da gibt es jetzt auch noch keine Probleme, da dies gerade im bau ist, und die ganze Decke abgehangen ist (10cm) und noch offen ist, hier ist nur die Frage welche kabel da rein kommen, aber so wie ich das sehe werde ich auf die Variante mit dem Mikrofon-Array gehen. ->

                              Richtmikrofon hab ich mir erst bestellt, konnte ich selber noch nicht testen (bin selber am tüfftelt was am besten ist), aber wenn das so ist, mit dem empfangswinkel, hat sich das schon erledigt.

                              Aus den Deckenlautsprechern (gerne in einer anderen Ecke des Raumes) soll nur "normal" musik laufen, für alles andere gibt es die HiFi Anlage.

                              Das mit Musik und Sprachbefehl -> hier werd ich wohl in den Saurenapfel beißen müssen, wenn Musik gespielt wird, die Sprachbefehle nicht funktionieren -> Möglichkeit über ein Taster/Panel die Musik zu deaktivieren.

                              tobetobeT 1 Antwort Letzte Antwort
                              0
                              • System 9S System 9

                                @tobetobe
                                Zum Thema Platz, da gibt es jetzt auch noch keine Probleme, da dies gerade im bau ist, und die ganze Decke abgehangen ist (10cm) und noch offen ist, hier ist nur die Frage welche kabel da rein kommen, aber so wie ich das sehe werde ich auf die Variante mit dem Mikrofon-Array gehen. ->

                                Richtmikrofon hab ich mir erst bestellt, konnte ich selber noch nicht testen (bin selber am tüfftelt was am besten ist), aber wenn das so ist, mit dem empfangswinkel, hat sich das schon erledigt.

                                Aus den Deckenlautsprechern (gerne in einer anderen Ecke des Raumes) soll nur "normal" musik laufen, für alles andere gibt es die HiFi Anlage.

                                Das mit Musik und Sprachbefehl -> hier werd ich wohl in den Saurenapfel beißen müssen, wenn Musik gespielt wird, die Sprachbefehle nicht funktionieren -> Möglichkeit über ein Taster/Panel die Musik zu deaktivieren.

                                tobetobeT Offline
                                tobetobeT Offline
                                tobetobe
                                schrieb am zuletzt editiert von
                                #141

                                @System-9
                                Das ist ja prima, dass du noch so viele Freiheitsgrade hast. Dann würde ich dir zur Verkabelung in der abgehängten Decke folgendes empfehlen:

                                1. Am Ort des Mikrofons: 1 - 2 Steckdosen für 230V und ich würde LAN vorsehen, damit du vom WLAN unabhängig bist
                                2. Zwischen Lautprecher und Mikrofon: Lautsprecherkabel

                                Ob, oder besser wie gut, Sprachbefehle erkannt werden, kann man jetzt noch nicht so sagen. Du solltest wissen, das dies maßgeblich vom sogenannten Signal/Stör-Abstand abhängt, der wiederum von den räumlichen Distanzen und Lautstärkepegeln bestimmt wird. Also: Wie laut kommt die Musik am Mikrofon an und wie laut die Sprache. Befindet sich der Mensch nahe beim Mikro und die Lautsprecher weiter weg, wird es günstiger, umgekehrt ungünstiger. Das gleiche gilt für die Lautstärke: Je Lauter die Musik am Ort des Mikros im Verhältnis der Lautstärke der Sprache am Ort des Mikros, um so ungünstiger, je leiser die Musik, umso günstiger.

                                Von daher: Mikro vielleicht am besten über dem Tisch / über der Sitzgruppe und die Lautsprecher entsprechend abgesetzt. Meistens geht man da ja Richtung Wand.

                                Noch eins: Du sprachst in Summe von ca. 10 Mikros, die du verteilen möchtest. Wenn du nicht sicherstellen kannst, dass du überall gutes WLAN hast, leg LAN-Kabel hin.

                                Ich hatte bei mir leider nicht die Möglichkeit, da schon alles fertig war, und bedaure fast täglich die fehlenden Anschlüsse.

                                Gruß
                                Thomas

                                Beste Grüße
                                tobetobe

                                1 Antwort Letzte Antwort
                                0
                                • tobetobeT tobetobe

                                  @joergeli
                                  Hallo Jörg,
                                  ja ich habe das Thema auch verfolgt. Auch darin, dass Synthesiam auf deinen Post noch nicht geantwortet hat, sehe ich eine Bestätigung, dass hier tatsächlich noch ein Fehlverhalten vorliegt.

                                  Noch befinde ich mich ja im theoretischen Bereich zur 2.5. Ich habe mir diese Anleitung

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

                                  bereits mehrfach angeschaut. Ohne parallel zu testen, ist zwar vieles verständlich, aber nicht nachvollziehbar. Und so frage ich mich, ob die Hinweise zu einem externen MQTT-Broker nicht eine Bedeutung auch für das von dir geschilderte Problem haben könnten. Morgen muss ich mich um einige berufliche Angelegenheiten kümmern (und meine Frau wurde ebenfalls verdonnert, im Home Office zu arbeiten). Von daher wird es wahrscheinlich nicht so schnell gehen, bis ich zum Testen der 2.5 komme. Steht für mich aber jetzt auf Prio 1.

                                  Gruß und Gute Nacht
                                  Thomas

                                  joergeliJ Online
                                  joergeliJ Online
                                  joergeli
                                  schrieb am zuletzt editiert von
                                  #142

                                  @tobetobe
                                  Hallo Thomas,

                                  Zu Deiner Information:
                                  @synesthesiam hat das MQTT-Problem jetzt als BUG deklariert:
                                  https://github.com/rhasspy/rhasspy-voltron/issues/10

                                  Ich habe gerade eben noch mal eine frische Rhasspy V 2.5-pre-Installation durchgeführt:
                                  1.) Alles bisherige, was Rhasspy betrifft, gelöscht (docker container en/de, docker image, en-profile, de-profile).
                                  2.) Rhasspy mit engl. Profil installiert

                                  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 en
                                  

                                  GUI gestartet und als STT "Kaldi" gewählt --> fehlende Kaldi-Dateien werden heruntergeladen.
                                  --> Rhasspy reagiert auf WakeWord "snowboy" und intent wird erkannt --> soweit alles gut.

                                  3.) Docker-container mit engl. Profil gestoppt.
                                  4.) Rhasspy mit deutschem Profil installiert:

                                  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
                                  

                                  GUI nochmals gestartet und im deutschen Profil als STT ebenfalls "Kaldi" gewählt --> fehlende Kaldi-Dateien werden heruntergeladen.
                                  --> Rhasspy reagiert auf WakeWord "snowboy" und intent wird erkannt --> soweit alles gut.

                                  Soweit ist momentan - bis auf das Problem mit dem externen MQTT-Broker - alles OK.

                                  Gruß
                                  Jörg

                                  tobetobeT 1 Antwort Letzte Antwort
                                  0
                                  • joergeliJ joergeli

                                    @tobetobe
                                    Hallo Thomas,

                                    Zu Deiner Information:
                                    @synesthesiam hat das MQTT-Problem jetzt als BUG deklariert:
                                    https://github.com/rhasspy/rhasspy-voltron/issues/10

                                    Ich habe gerade eben noch mal eine frische Rhasspy V 2.5-pre-Installation durchgeführt:
                                    1.) Alles bisherige, was Rhasspy betrifft, gelöscht (docker container en/de, docker image, en-profile, de-profile).
                                    2.) Rhasspy mit engl. Profil installiert

                                    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 en
                                    

                                    GUI gestartet und als STT "Kaldi" gewählt --> fehlende Kaldi-Dateien werden heruntergeladen.
                                    --> Rhasspy reagiert auf WakeWord "snowboy" und intent wird erkannt --> soweit alles gut.

                                    3.) Docker-container mit engl. Profil gestoppt.
                                    4.) Rhasspy mit deutschem Profil installiert:

                                    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
                                    

                                    GUI nochmals gestartet und im deutschen Profil als STT ebenfalls "Kaldi" gewählt --> fehlende Kaldi-Dateien werden heruntergeladen.
                                    --> Rhasspy reagiert auf WakeWord "snowboy" und intent wird erkannt --> soweit alles gut.

                                    Soweit ist momentan - bis auf das Problem mit dem externen MQTT-Broker - alles OK.

                                    Gruß
                                    Jörg

                                    tobetobeT Offline
                                    tobetobeT Offline
                                    tobetobe
                                    schrieb am zuletzt editiert von
                                    #143

                                    @joergeli

                                    Hallo Jörg,

                                    vielen Dank für das Update. Die Einstufung deines Problems als Bug, hört sich nach größerem Zeitbedarf an. Schade.

                                    Ich habe gestern ebenfalls mal zwei Installationen aufgesetzt, eine in einer Virtuellen Maschine (mein Master) und einen Satellliten auf einem alten Pi3. Beides lief absolut problemlos durch und auch Kaldi war sofort, bzw. nach dem erforderlichen Download, verfügbar. Ich installiere übrigens immer sofort das deutsche Profil und gehe nicht über den Umweg, erst das englische Profil zu installieren. Damit habe ich bislang noch nie Schwierigkeiten gehabt.

                                    Momentan hänge ich eher daran, die neue Version noch zu konfigurieren. Ich finde es etwas verwirrend, dass nicht alle Einstellungen über das Menü links erreicht werden, sondern man dann für die Details oben über die grafischen Element, die den Installationszustand anzeigen, gehen muss.

                                    Und dann hängst bei mir noch an einem Mikrofon. Ich habe zwar noch eine USB-Kamera mit Mikrofon, habe diese aber am Pi nocht nicht zum Laufen bekommen.

                                    Und wenn mir die neue Release dann wieder zu nervig ist, befasse ich mich noch hiermit (nicht fertiger Bearbeitungsstand):

                                    ff59c24f-b53e-4b3d-a2ec-77747f894327-grafik.png

                                    Dank deinen Tipps, bin ich dann doch recht flott voran gekommen. Auch habe ich festgestellt, dass man Verbindungen wieder löschen kann, ohne dass die Grundelemente verloren gehen. Und dass es beim Ausschneiden auf die Reihenfolge bei der Auswahl der Elemente ankommt. Also: Geht voran. Vielen Dank nochmals.

                                    Gruß
                                    Thomas

                                    Beste Grüße
                                    tobetobe

                                    joergeliJ 1 Antwort Letzte Antwort
                                    0
                                    • tobetobeT tobetobe

                                      @joergeli

                                      Hallo Jörg,

                                      vielen Dank für das Update. Die Einstufung deines Problems als Bug, hört sich nach größerem Zeitbedarf an. Schade.

                                      Ich habe gestern ebenfalls mal zwei Installationen aufgesetzt, eine in einer Virtuellen Maschine (mein Master) und einen Satellliten auf einem alten Pi3. Beides lief absolut problemlos durch und auch Kaldi war sofort, bzw. nach dem erforderlichen Download, verfügbar. Ich installiere übrigens immer sofort das deutsche Profil und gehe nicht über den Umweg, erst das englische Profil zu installieren. Damit habe ich bislang noch nie Schwierigkeiten gehabt.

                                      Momentan hänge ich eher daran, die neue Version noch zu konfigurieren. Ich finde es etwas verwirrend, dass nicht alle Einstellungen über das Menü links erreicht werden, sondern man dann für die Details oben über die grafischen Element, die den Installationszustand anzeigen, gehen muss.

                                      Und dann hängst bei mir noch an einem Mikrofon. Ich habe zwar noch eine USB-Kamera mit Mikrofon, habe diese aber am Pi nocht nicht zum Laufen bekommen.

                                      Und wenn mir die neue Release dann wieder zu nervig ist, befasse ich mich noch hiermit (nicht fertiger Bearbeitungsstand):

                                      ff59c24f-b53e-4b3d-a2ec-77747f894327-grafik.png

                                      Dank deinen Tipps, bin ich dann doch recht flott voran gekommen. Auch habe ich festgestellt, dass man Verbindungen wieder löschen kann, ohne dass die Grundelemente verloren gehen. Und dass es beim Ausschneiden auf die Reihenfolge bei der Auswahl der Elemente ankommt. Also: Geht voran. Vielen Dank nochmals.

                                      Gruß
                                      Thomas

                                      joergeliJ Online
                                      joergeliJ Online
                                      joergeli
                                      schrieb am zuletzt editiert von
                                      #144

                                      @tobetobe
                                      Hallo Thomas,
                                      obwohl das nichts mit ioBroker/Rhasspy zu tun hat, noch ein paar Tipps bzgl. FreeCad, bzw. 3D-Druck von mir:

                                      Ich habe anfangs auch versucht, viele zusätzliche optische Gimmicks und Schnörkel an meine Konstruktionen zu basteln.
                                      Das hat aber Nachteile:
                                      Zum einen verlängert es die Druckdauer immens und zum anderen, werden u.U. sog. Stützstrukturen erforderlich, die nur während des Druckens notwendig sind und später manuell weggebrochen werden müssen.

                                      Ich versuche das mit den Stützstrukturen mal anhand Deiner Konstruktion zu erklären ( die gewölbten Lamellen an der linken Wandung):
                                      Der 3D-Drucker druckt ja Schicht für Schicht von unten nach oben, somit kann er bei sog. Überhängen, d.h. Strukturen, die keinen direkten Druckbettkontakt haben, nicht einfach in die Luft drucken.
                                      (Die würden dann z.B. "runterfließen", wie bei Salvador Dalis Uhrengemälde)
                                      Deshalb müssen bei solchen Überhängen zusätzliche Stützstrukturen generiert werden, s. Bild
                                      gehaeuse-thomas.png
                                      Ich habe im Bild mal versucht, die Überhänge zu identifizieren, bzw. die Stellen, an denen Stützstrukturen notwendig werden.
                                      Die Stützstrukturen können vom Druckprogramm, dem sog. Slicer (ich verwende Cura) zwar automatisch generiert werden, es wird aber nach dem Druck u.U. schwierig, die nun überflüssigen Stützstrukturen zu entfernen (mit Seitenschneider rausprökeln).
                                      Man könnte an Deinen Lamellen die Stützstrukturen vermeiden, in dem man beim Druck das Gehäuse um 90° im Uhrzeigersinn dreht, daß also die rechte Seitenwand unten zu liegen kommt, dann werden die Lamellen senkrecht gedruckt, es entstehen dort also keine Überhänge mehr.
                                      Besser ist es aber, schon bei der Konstruktion so wenig wie möglich Überhänge zu erzeugen.
                                      Natürlich kann man Stützstrukturen nicht immer vermeiden, aber weniger ist hier mehr.

                                      Hier noch ein Screenshot von Cura, dem 3D-Druckprogramm, wo bei einem meiner Entwürfe eine 45°-Schräge abgestützt werden musste:
                                      stuetzstruktur.jpg

                                      Das soll jetzt keinesfalls eine Belehrung meinerseits sein, ich möchte nur meine Erfahrungen teilen.
                                      Was habe ich schon geflucht, wenn nach 8 Std. Druckdauer ein missglückter "Pimpel" in den obersten Schichten den ganzen Ausdruck unbrauchbar gemacht hat.

                                      Gruß
                                      Jörg

                                      tobetobeT 1 Antwort Letzte Antwort
                                      0
                                      • joergeliJ joergeli

                                        @tobetobe
                                        Hallo Thomas,
                                        obwohl das nichts mit ioBroker/Rhasspy zu tun hat, noch ein paar Tipps bzgl. FreeCad, bzw. 3D-Druck von mir:

                                        Ich habe anfangs auch versucht, viele zusätzliche optische Gimmicks und Schnörkel an meine Konstruktionen zu basteln.
                                        Das hat aber Nachteile:
                                        Zum einen verlängert es die Druckdauer immens und zum anderen, werden u.U. sog. Stützstrukturen erforderlich, die nur während des Druckens notwendig sind und später manuell weggebrochen werden müssen.

                                        Ich versuche das mit den Stützstrukturen mal anhand Deiner Konstruktion zu erklären ( die gewölbten Lamellen an der linken Wandung):
                                        Der 3D-Drucker druckt ja Schicht für Schicht von unten nach oben, somit kann er bei sog. Überhängen, d.h. Strukturen, die keinen direkten Druckbettkontakt haben, nicht einfach in die Luft drucken.
                                        (Die würden dann z.B. "runterfließen", wie bei Salvador Dalis Uhrengemälde)
                                        Deshalb müssen bei solchen Überhängen zusätzliche Stützstrukturen generiert werden, s. Bild
                                        gehaeuse-thomas.png
                                        Ich habe im Bild mal versucht, die Überhänge zu identifizieren, bzw. die Stellen, an denen Stützstrukturen notwendig werden.
                                        Die Stützstrukturen können vom Druckprogramm, dem sog. Slicer (ich verwende Cura) zwar automatisch generiert werden, es wird aber nach dem Druck u.U. schwierig, die nun überflüssigen Stützstrukturen zu entfernen (mit Seitenschneider rausprökeln).
                                        Man könnte an Deinen Lamellen die Stützstrukturen vermeiden, in dem man beim Druck das Gehäuse um 90° im Uhrzeigersinn dreht, daß also die rechte Seitenwand unten zu liegen kommt, dann werden die Lamellen senkrecht gedruckt, es entstehen dort also keine Überhänge mehr.
                                        Besser ist es aber, schon bei der Konstruktion so wenig wie möglich Überhänge zu erzeugen.
                                        Natürlich kann man Stützstrukturen nicht immer vermeiden, aber weniger ist hier mehr.

                                        Hier noch ein Screenshot von Cura, dem 3D-Druckprogramm, wo bei einem meiner Entwürfe eine 45°-Schräge abgestützt werden musste:
                                        stuetzstruktur.jpg

                                        Das soll jetzt keinesfalls eine Belehrung meinerseits sein, ich möchte nur meine Erfahrungen teilen.
                                        Was habe ich schon geflucht, wenn nach 8 Std. Druckdauer ein missglückter "Pimpel" in den obersten Schichten den ganzen Ausdruck unbrauchbar gemacht hat.

                                        Gruß
                                        Jörg

                                        tobetobeT Offline
                                        tobetobeT Offline
                                        tobetobe
                                        schrieb am zuletzt editiert von
                                        #145

                                        @joergeli
                                        Hallo Jörg,
                                        ich fluche auch gerade. Na ja, wieder was gelernt. Eine Hoffnung habe ich noch: Ich habe mich entschieden, zunächst mal keinen eigenen Drucker zu kaufen, sondern den Druck in Auftrag zu geben. Nun weiß ich dank deiner Hilfe wenigstens, welche Frage ich stellen muss.

                                        Zu Übungszwecken mache ich mein Gehäuse jetzt einfach mal fertig. Vielleicht trenne ich die Seitenteile auch einfach ab und lasse sie senkrecht drucken. Dann klebe ich sie halt ein. An den anderen Stellen kann ich mit den Stützen glaube ich leben.

                                        Ja, herzlichen Dank mal wieder und noch einen schönen Abend
                                        Thomas

                                        Beste Grüße
                                        tobetobe

                                        joergeliJ 1 Antwort Letzte Antwort
                                        0
                                        • tobetobeT tobetobe

                                          @joergeli
                                          Hallo Jörg,
                                          ich fluche auch gerade. Na ja, wieder was gelernt. Eine Hoffnung habe ich noch: Ich habe mich entschieden, zunächst mal keinen eigenen Drucker zu kaufen, sondern den Druck in Auftrag zu geben. Nun weiß ich dank deiner Hilfe wenigstens, welche Frage ich stellen muss.

                                          Zu Übungszwecken mache ich mein Gehäuse jetzt einfach mal fertig. Vielleicht trenne ich die Seitenteile auch einfach ab und lasse sie senkrecht drucken. Dann klebe ich sie halt ein. An den anderen Stellen kann ich mit den Stützen glaube ich leben.

                                          Ja, herzlichen Dank mal wieder und noch einen schönen Abend
                                          Thomas

                                          joergeliJ Online
                                          joergeliJ Online
                                          joergeli
                                          schrieb am zuletzt editiert von
                                          #146

                                          @tobetobe
                                          Hallo Thomas,
                                          ich würde mir das mit in Auftrag geben noch mal überlegen.
                                          Lt. einem Bekannten werden da recht ordentliche Preise verlangt.
                                          Er hat mal ein Raspi-Gehäuse mit integrierter Pi-Cam Noir (mit Infrarotausleuchtung) drucken lassen, da waren dann 65,-€ fällig.

                                          Wenn Du Dir einen Mittelklasse-3D-Drucker im Bereich von ca. 300,-€ zulegst, hast Du die Anschaffungskosten bald raus.
                                          Verbrauchsmaterial (Filament) kostet ca. 20,-€ pro 1kg-Rolle und das reicht für div. Gehäuse und sonstiges.

                                          Meine Frau meinte auch erst, was ich mit so einem Spielzeug will, aber als ich ihr dann ein paar Teile (Zubehör-Halter für Dyson-Staubsauger, Zahnpastatuben-Ausdreher, etc.) gedruckt habe, war der Drucker sofort akzeptiert ;-)

                                          Ich selbst habe mir schon div. Gehäuse fur Raspi, ESP8266, NanoCUL-Stick, oder auch Staubsauger-Adapter für Bosch-Bandschleifer gedruckt.
                                          Die Einsatzmöglichkeiten sind also sehr vielfältig.

                                          Gruß
                                          Jörg

                                          tobetobeT 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          885

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe