Weiter zum Inhalt
  • Home
  • Aktuell
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Praktische Anwendungen (Showcase)
  4. Hannah — Open Source Smart-Home-Sprachassistentin

NEWS

  • Neue Adresse: die ioBroker-Webseite liegt jetzt auf iobroker.com
    BluefoxB
    Bluefox
    3
    1
    182

  • Die neue ioBroker Webseite ist online!
    BluefoxB
    Bluefox
    11
    1
    203

  • Information zum Kontoabgleich und zur Namensänderung
    BluefoxB
    Bluefox
    11
    1
    524

Hannah — Open Source Smart-Home-Sprachassistentin

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
216 Beiträge 24 Kommentatoren 14.3k Aufrufe 35 Beobachtet
  • Ä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.
  • L Leonie

    @manne01 danke, wie immer richtig viel Substanz dabei. Ich geh der Reihe nach durch, fasse aber ein paar Punkte zusammen, wo's passt.

    RAG/Internet- & E-Mail-Integration + Auth:

    @manne01 sagte:

    Ich habe auch noch über weitere Integrationen übers angebundene LLM nachgedacht, etwa die Anbindung eines lokalen RAG-Systems

    Aktuell nicht geplant, aber ich seh da einen Weg über das Skill-System, das ich sowieso vorhabe (gRPC-Skill-Server, Alexa-artiges Invocation-Routing): Wenn irgendwer Lust hat, einen Skill für z.B. Google Mail zu bauen — spricht von meiner Seite nichts dagegen. So ein Skill bräuchte dann wahrscheinlich seine eigene Userbase, die man über linkedAccount entweder mit dem Hannah-User oder direkt mit dem jeweiligen Account (Google o.ä.) verknüpft. Ist aber bisher nur ein Gedankenexperiment, nichts Konkretes.

    Das LLM bekommt grundsätzlich schon mitgeteilt, mit welchem User es gerade spricht — insofern wäre eine Rechtebasis dafür schon da. Ob man dem LLM generell einen Internetzugriff geben will (technisch sicher machbar als Core-seitiges Tool) ist für mich aber nochmal eine andere, offene Frage — nicht ob's geht, sondern ob ich das will.

    Latenz-Vergleichstests:

    @manne01 sagte:

    Es wäre spannend da mal vergleichende Tests

    Guter Punkt, notiere ich mir — passt eigentlich ganz gut zu einem Health/Metrics-Vorhaben, das ich sowieso schon länger vor mir herschiebe. Konkrete Zahlen kann ich dir noch nicht liefern.

    "Alle" schaltet zu viel ab (dein Radio/Musik-Beispiel):

    @manne01 sagte:

    19:49:48 [INFO] hannah.grpc_server: [grpc] SubmitText von telegram:8753330120 (user=2) — 'Schalte das Radio im RaumX aus'

    19:49:48 [INFO] hannah.main: [textcmd] Text: 'Schalte das Radio im RaumX aus' → Intent: TurnOff | Raum: RaumX | Gerät: None | Wert: None | SpeakerUser: 2

    19:49:48 [INFO] hannah.iobroker: execute: TurnOff, 4 Gerät(e) gefunden, state='on', value=Falses ist tatsächlich ein Bug, danke für den Log — hab ich aufgenommen. Kurz zur Klarstellung: dass "Radio" nicht erkannt wurde, ist erwartbar, dein Gerät heißt ja "Musik". Der eigentliche Fehler ist, dass Hannah bei einem Nichttreffer trotzdem alles im Raum ausschaltet, statt "kenne ich nicht" zu sagen. Ist gemeldet und wird gefixt.

    Fensterkontakt mit gekippt/offen/zu:

    @manne01 sagte:

    Ein Fenstersensor wird noch nicht korrekt verarbeitet, vermutlich weil er auch noch "gekippt" kann?

    Da hab ich mir die Ursache genau angeschaut: deine Kontakt-Rolle ist bei Homematic einfach zu generisch ("state"), als dass Hannah das automatisch erkennen könnte — dafür gibt's aber schon einen Override-Mechanismus in ioBroker (common.custom), den du auf diesem State setzen kannst. Das war für dich nur nicht auffindbar, deshalb bessere ich an der Stelle die Doku in der Settings-UI nach.

    Und zu "gekippt" grundsätzlich: Das will ich Hannah bewusst nicht extra beibringen. Sicherheitsrelevant ist für mich nur offen-vs-zu, und ein gekipptes Fenster ist in der Hinsicht einfach offen. Sobald der Override sauber steht, meldet Hannah dir "offen" auch bei gekippt — technisch sogar ohne dass ich dafür Code ändern muss.

    Farblampen / Saturation:

    @manne01 sagte:

    SATURATION scheint mir nicht vorhanden

    Hab ich aufgenommen, aber noch offen ob ich's umsetze — ich nutze Saturation/Hue an meinen eigenen Lampen selbst nicht, rechne stattdessen direkt in Hex um. Falls es kommt, dann rein zusätzlich, ohne dass sich für bestehende Lampen was ändert.

    Settings-UI/canonicalKey-Verständnis:

    Nehme ich mir vor — Erklärtext zu den Keys und wann/wie der Override greift, mit deinem Fensterkontakt als Beispiel.

    Zahlen/Sonderzeichen in Gerätenamen:

    Freut mich, dass der Bindestrich-Trick bei dir funktioniert wie gedacht.

    VoiceID-Rollout:

    Danke fürs Feedback!

    Telegram-manuelle-Verknüpfung:

    Ok, mal schauen ob/wie ich das umsetze. Ist jedenfalls bei mir im Plan aufgenommen.

    Satelliten-Reichweite:

    @manne01 sagte:

    Zu den Satelliten: Welche "Reichweite" hat denn so ein Satellit

    Bei mir sind die Räume so 20–40m² groß, jeweils ein Satellit pro Raum, Akustik ist gut. Liege ich oben im Bett in der Südost-Ecke, hört mich der Satellit im Erdgeschoss in der Nordwest-Ecke — mit einem Treppenhaus dazwischen. Stehe ich im Wohnzimmer, kann ich mit dem Satelliten in der Küche reden. Beides so 20–50m Distanz. Die Antwort vom Satelliten hängt natürlich von den verbauten Lautsprechern ab. Ich habe welche im "fliegenden" Aufbau, mit billigen Lautsprechern, die sind relativ leise, ich habe aber auch welche mit dem finalen Design (Dayton Audio RS75-4), da ist die Akustik um vieles besser.

    Cross-Room-Gruppen ("alle Rollläden im EG") + "alle"/"beide" bei Rückfragen:

    @manne01 sagte:

    Alle Rolläden im Erdgeschoss"?

    @manne01 sagte:

    ber wenn ich beim Kommando schon "alle" drin habe fühlt sich diese Nachfrage natürlich komisch an

    Beides hängt für mich zusammen — ich hab eine Idee für automatische virtuelle Gruppen-Geräte pro Raum/Kategorie in der Pipeline, die genau das lösen würde: "alle Rollläden" würde dann auf ein echtes Gerät matchen, und die Links/Rechts-Rückfrage bräuchte den Sonderfall gar nicht mehr. Noch nicht umgesetzt, aber eingeplant. Etagen zu "bauen", steht auch auf meinem Plan, aber noch nicht schriftlich. Ein passendes Design habe ich auch noch nicht im Kopf.

    Wort-Dedup / Funktion im Gerätenamen:

    @manne01 sagte:

    Ist es richtig, dass die Wörter im Kommando dedupliziert werden wenn es um Steuerung/Matching geht?

    Kein echtes "Dedup" — Raum, Funktion/Kategorie und Gerät werden komplett unabhängig voneinander gegen denselben Satz gematcht, jeder sucht sein eigenes Vokabular, ohne dass die anderen Treffer "verbraucht" werden. Dein Setup mit "Rolladen"-freien Gerätenamen funktioniert deshalb.

    Zur Ansage ("Seite wurde geschlossen" klingt komisch): Hannah sagt immer den rohen Gerätenamen an, nicht Funktion+Gerät. Willst du "Rolladen Seite" in den Ansagen hören, müsste das Gerät in ioBroker tatsächlich so heißen — das macht das Matching dann aber strenger: es braucht "Rolladen Seite" als zusammenhängende Wortfolge im Kommando, während ein reiner "Seite"-Name flexibler matcht (Reihenfolge/Position im Satz egal). Echter Trade-off, keine Bug-Frage.

    Aliase (Musik↔Radio, Rolladen↔Jalousie):

    @manne01 sagte:

    Gerät namens "Musik"

    Da bin ich zurückhaltend — eine offene Synonymliste will ich Hannah nicht beibringen, das wird schnell unwartbar. Ein Teil davon dürfte sich aber sowieso über die Gruppen-Geräte von oben erledigen. Bei dir wurde vermutlich der ganze Raum geschaltet, weil Hannah kein Gerät gefunden. Das müsste ein gelöster Bug sein, so das Hannah lieber nachfragt mit "Tut mir leid, das Gerät habe ich nicht gefunden, welches meinst du?", ich kann das aber gerne nochmal prüfen und ich weiß natürlich nicht welche Version du hast.

    iobroker-Command-Object-Logging:

    @manne01 sagte:

    Noch eine Beobachtung: Wenn ich Hannah einfach per iobroker-Command-Object frage

    Auch ein Bug, danke — eingehende Anfragen sollen da genauso geloggt werden wie bei Telegram/Satellit. Gemeldet.

    Versions-Logging:

    @manne01 sagte:

    Offen gesagt in Docker

    Das kommt nun darauf an wie du dein Compose-file geschrieben hast. Pinst du auf fixe Versionen? dann ist es einfach. Ansonsten müsste man das über die image digest nachschauen. Ich kann das gerne für dich übernehmen, aber du musst mir dafür deine verwendeten Digests geben.

    @manne01 sagte:

    Tut mir leid, ist etwas viel geworden. Bis hoffentlich bald wieder!

    Ach, muss dir überhaupt nicht leid tun! Ehrlich gesagt sind mir solche gesammelten Rundumschläge deutlich lieber als wenn dasselbe Thema in zehn Salami-Beiträgen häppchenweise reintropft - so hab ich alles auf einmal im Kopf und kann in Ruhe durchgehen. Also: gerne öfter so ausführlich!
    Bis demnächst!

    @Walter.O. sagte:

    ich habe da mal (wieder) eine Frage, diesmal zu Telegram

    Hallo Walter, kein Problem, frag ruhig — dafür ist das Forum ja da!

    Bei "(deprecated) Veraltet" muss ich leider erstmal passen, ohne mehr zu wissen. Könntest du mir zwei Dinge schicken, damit ich dir gezielt helfen kann?

    • Einen Screenshot von der Stelle in der WebUI, wo diese Meldung auftaucht (am besten mit der ganzen Seite drumrum) — dann seh ich genau, worauf sich "veraltet" bezieht.

    • Ein paar Infos zu deiner Domain: bei wem hast du sie registriert, und zeigt sie aktuell überhaupt schon irgendwohin (auf eine IP-Adresse, einen DynDNS-Dienst, o.ä.)?

    Mit den beiden Sachen kann ich dir dann eine Anleitung schreiben, die auch wirklich zu deiner Situation passt — sonst rate ich womöglich am eigentlichen Problem vorbei.

    Liebe Grüße

    Walter.O.W
    Walter.O.W
    Walter.O.
    schrieb zuletzt editiert von Walter.O.
    #200

    @Leonie sagte:

    @Walter.O. sagte:

    ich habe da mal (wieder) eine Frage, diesmal zu Telegram

    Hallo Walter, kein Problem, frag ruhig — dafür ist das Forum ja da!

    Bei "(deprecated) Veraltet" muss ich leider erstmal passen, ohne mehr zu wissen. Könntest du mir zwei Dinge schicken, damit ich dir gezielt helfen kann?

    • Einen Screenshot von der Stelle in der WebUI, wo diese Meldung auftaucht (am besten mit der ganzen Seite drumrum) — dann seh ich genau, worauf sich "veraltet" bezieht

    hannah-UI.jpg

    Hier beim Klick auf Verbinden Telegram.

    Telegram.jpg
    Ergebniss:
    URLals Text:

    https://oauth.telegram.org/auth?bot_id=+++meine ID+++&origin=https%3A%2F%2F192.168.178.122%3A5000&request_access=write&return_to=https%3A%2F%2F192.168.178.122%3A5000%2Fme
    
    • Ein paar Infos zu deiner Domain: bei wem hast du sie registriert, und zeigt sie aktuell überhaupt schon irgendwohin (auf eine IP-Adresse, einen DynDNS-Dienst, o.ä.)?

    Ich habe mir eine Duck DNS zum test eingerichtet: http://home-wollemen.duckdns.org
    Diese ist in der FritzBox eingetragen aber sonst noch nichts gamacht auch keine Freigaben.

    Mit den beiden Sachen kann ich dir dann eine Anleitung schreiben, die auch wirklich zu deiner Situation passt — sonst rate ich womöglich am eigentlichen Problem vorbei.

    Liebe Grüße

    OliverIOO 1 Antwort Letzte Antwort
    0
    • L
      L
      Leonie
      schrieb zuletzt editiert von
      #201

      Danke dir, ich sehe warum. Gib mir bitte ein wenig Zeit, dann antworte ich dir passend

      1 Antwort Letzte Antwort
      0
      • Walter.O.W Walter.O.

        @Leonie sagte:

        @Walter.O. sagte:

        ich habe da mal (wieder) eine Frage, diesmal zu Telegram

        Hallo Walter, kein Problem, frag ruhig — dafür ist das Forum ja da!

        Bei "(deprecated) Veraltet" muss ich leider erstmal passen, ohne mehr zu wissen. Könntest du mir zwei Dinge schicken, damit ich dir gezielt helfen kann?

        • Einen Screenshot von der Stelle in der WebUI, wo diese Meldung auftaucht (am besten mit der ganzen Seite drumrum) — dann seh ich genau, worauf sich "veraltet" bezieht

        hannah-UI.jpg

        Hier beim Klick auf Verbinden Telegram.

        Telegram.jpg
        Ergebniss:
        URLals Text:

        https://oauth.telegram.org/auth?bot_id=+++meine ID+++&origin=https%3A%2F%2F192.168.178.122%3A5000&request_access=write&return_to=https%3A%2F%2F192.168.178.122%3A5000%2Fme
        
        • Ein paar Infos zu deiner Domain: bei wem hast du sie registriert, und zeigt sie aktuell überhaupt schon irgendwohin (auf eine IP-Adresse, einen DynDNS-Dienst, o.ä.)?

        Ich habe mir eine Duck DNS zum test eingerichtet: http://home-wollemen.duckdns.org
        Diese ist in der FritzBox eingetragen aber sonst noch nichts gamacht auch keine Freigaben.

        Mit den beiden Sachen kann ich dir dann eine Anleitung schreiben, die auch wirklich zu deiner Situation passt — sonst rate ich womöglich am eigentlichen Problem vorbei.

        Liebe Grüße

        OliverIOO
        OliverIOO
        OliverIO
        schrieb zuletzt editiert von
        #202

        @Walter.O.

        Titelzeile im Screenshot auch schwärzen?

        Meine Adapter und Widgets
        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
        Links im Profil

        Walter.O.W 1 Antwort Letzte Antwort
        0
        • OliverIOO OliverIO

          @Walter.O.

          Titelzeile im Screenshot auch schwärzen?

          Walter.O.W
          Walter.O.W
          Walter.O.
          schrieb zuletzt editiert von
          #203

          OliverIO Was meinst du?
          Das ist der Telegram Bot Token

          OliverIOO 1 Antwort Letzte Antwort
          0
          • Walter.O.W
            Walter.O.W
            Walter.O.
            schrieb zuletzt editiert von Walter.O.
            #204

            So, ich denke mal ich habe auch noch ein Problem mit Datenbanken.
            Gelesen habe ich das eine msqlite sowie eine Mysql da sein muss?
            Da liegt wiedermal ein Problem bei mir, sqlite habe ich aber leider keinen erfahrung damit wie diese Funktioniert.
            Wie komme ich am die Einstellungen, sprich username und passwort.
            Vor längerer zeit habe ich mal mit Mysql gearbeitet das ging aber über eine Weboberfläche.

            Noch etwas, welche .yaml dateien müssen eigentlich angelegt und Bearbeitet werden.
            Habe in deiner neuen Anleitung gelesen das da mehrere sind?

            1 Antwort Letzte Antwort
            0
            • Walter.O.W Walter.O.

              OliverIO Was meinst du?
              Das ist der Telegram Bot Token

              OliverIOO
              OliverIOO
              OliverIO
              schrieb zuletzt editiert von OliverIO
              #205

              @Walter.O. sagte:

              OliverIO Was meinst du?
              Das ist der Telegram Bot Token

              Du hast zwar die Eingabezeile geschwärzt, aber in der Titelzeile des Fensters kann man ihn noch komplett lesen

              Ich würde es ungern zur Verdeutlichung hier noch mal posten wollen

              Meine Adapter und Widgets
              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
              Links im Profil

              Walter.O.W 1 Antwort Letzte Antwort
              0
              • OliverIOO OliverIO

                @Walter.O. sagte:

                OliverIO Was meinst du?
                Das ist der Telegram Bot Token

                Du hast zwar die Eingabezeile geschwärzt, aber in der Titelzeile des Fensters kann man ihn noch komplett lesen

                Ich würde es ungern zur Verdeutlichung hier noch mal posten wollen

                Walter.O.W
                Walter.O.W
                Walter.O.
                schrieb zuletzt editiert von
                #206

                @OliverIO sagte:

                @Walter.O. sagte:

                OliverIO Was meinst du?
                Das ist der Telegram Bot Token

                Du hast zwar die Eingabezeile geschwärzt, aber in der Titelzeile des Fensters kann man ihn noch komplett lesen

                Ich würde es ungern zur Verdeutlichung hier noch mal posten wollen

                Au man.... Danke habs geändert.

                1 Antwort Letzte Antwort
                0
                • L
                  L
                  Leonie
                  schrieb zuletzt editiert von
                  #207

                  Hallo Walter,

                  vielen Dank fürs Testen und die Screenshots, jetzt ist klar, wo der Fehler herkommt.

                  Du rufst die WebUI aktuell über die IP-Adresse deines Servers auf (192.168.178.122). Telegram lässt den "Verbinden"-Login aber nur zu, wenn die Adresse eine richtige Domain ist, die beim Bot (über den @BotFather) hinterlegt wurde — eine reine IP-Adresse funktioniert bei Telegram grundsätzlich nicht.

                  Deine DuckDNS-Testdomain (home-wollemen.duckdns.org) ist schon der richtige Ansatz. Bevor wir da weitermachen, brauchen wir noch zwei Infos von dir:

                  Rufst du die WebUI per http:// oder https:// auf? (Für den Telegram-Login ist HTTPS zwingend nötig.)
                  Von welchem Gerät/System aus rufst du die WebUI im Browser auf (Windows-PC, Linux, etc.)?
                  Ich schreibe gerade eine Schritt-für-Schritt-Anleitung fürs neue Hannah-Handbuch (Domain/HTTPS/Telegram-Bot-Einrichtung) — sobald die steht, verlinke ich sie hier.

                  Zu deinen anderen Fragen:

                  SQLite: darum kümmert sich Hannah komplett selbst, da musst du nichts einrichten oder verwalten.
                  MySQL brauchst du nur, wenn du das optionale Activity-Log (Protokoll aller Sprachbefehle) nutzen willst. Ohne Activity-Log kannst du MySQL komplett ignorieren.
                  Config-Dateien: bevor ich dir sagen, welche du noch brauchst, wäre es hilfreich, kurz zu sehen, was bei dir überhaupt läuft. Kannst du mir die Ausgabe von diesen drei Befehlen schicken?

                  ls /opt/hannah
                  systemctl list-units | grep hannah
                  ls /etc/hannah*/
                  

                  Danke dir, dann können wir zielgerichtet weitermachen!

                  Liebe Grüße

                  1 Antwort Letzte Antwort
                  0
                  • L
                    L
                    Leonie
                    schrieb zuletzt editiert von
                    #208

                    Hey, nochmal ich

                    @walter.o. aber eigentlich auch alle anderen, die die WebUI per systemd laufen haben, diese bitte einmal neu installieren:

                    curl -fsSL https://github.com/NurPech/hannah-webui/raw/refs/heads/main/deploy/install.sh | sudo bash
                    

                    Danach kann die WebUI selbst auch HTTPS.

                    Dann noch das in die Datei /etc/hannah-webui/config.yaml schreiben:

                    tls:
                      enabled: true
                    

                    Zur Erinnerung, die ganze Datei sieht dann in etwa so aus:

                    tls:
                      enabled: true
                    
                    # Wo der WebUI-Flask-Server selbst lauscht
                    host: "127.0.0.1"
                    port: 5000
                    
                    # Signiert die Flask-Session-Cookie — muss über alle gunicorn-Worker und Neustarts
                    # hinweg stabil sein, sonst werden Nutzer zufällig ausgeloggt. Generieren mit:
                    #   python3 -c "import secrets; print(secrets.token_hex(32))"
                    secret_key: "IHR_SECRET_KEY"
                    
                    # Telegram Login Widget (Account-Verknüpfung in /me) — Bot-Token via @BotFather,
                    # Domain muss dort per /setdomain auf diese WebUI-Instanz freigeschaltet sein.
                    telegram_bot_token: ""
                    telegram_bot_username: ""
                    
                    # Hannah Core, per gRPC
                    grpc:
                      host: "127.0.0.1"
                      port: 50051
                    

                    Dann noch die webui neustarten mit

                    sudo systemctl restart hannah-webui
                    

                    und die WebUI spricht TLS mit Zertifikat.

                    Inhaltlich gehe ich dann auf deine Probleme ein wenn du meine neuen Fragen beantwortet hast :)

                    Liebe Grüße

                    1 Antwort Letzte Antwort
                    0
                    • M
                      M
                      McBeath
                      schrieb zuletzt editiert von McBeath
                      #209

                      @leonie
                      Tolle Arbeit!! Habe bis #80 alles gelesen und nur 40% verstanden. 😂
                      Ich ja bin total begeistert, suche schon länger nach einem reinen offline Assistenten.

                      Ich bin leider nicht so firm und möchte auch nicht alle von der Arbeit abhalten (Support und Fehlersuche). ;)
                      Da ich es etwas müssig finde alle Infos (latest) im thread zu suchen, wird es eine finale Zusammenfassung geben?

                      Sprich eine ausführliche Anleitung bezüglich Installation. (In meinem Fall im Docker auf einer Syno wie @manne01 )
                      #63 Hier finder man eine Docker Compose (final?)
                      #79 Hier ist der verwist auf den Hardware Link.

                      Wenn ich das soweit richtig versanden habe...?
                      1. Komplett offline nur mit des ESP Hardware.
                      2. Mit Telegram nur mit Internet.

                      Was ist denn die Mindestanforderung um das ganze zu testen?

                      1. Installation im Docker mit der Compose von #63
                      2. Installation des Hannah Adapter (beta) im IoBroker
                      3. Einrichtung Hardware oder Telegram.

                      Liebe Grüße

                      1 Antwort Letzte Antwort
                      0
                      • L
                        L
                        Leonie
                        schrieb zuletzt editiert von
                        #210

                        @mcbeath
                        Schön, dass du her gefunden hast und danke für dein Lob!

                        Du hast das richtig verstanden.

                        Komplett offline geht es nur mit den ESPs, korrekt. Dazu gibt es in den letzten Tagen eine relativ aktive Diskussion. Grundlegend gibt es für die Beschaffung der ESPs ein shared project bei PCBWay. Falls du es nicht weiß, PCBWay ist ein Platinenfertiger in China. Das Projekt findest du dort: zu PCBWay
                        Da muss ich dazu sagen, das aufgrund der aktuellen Marktsituation, damit meine ich vor allem aktuelle politische Verflechtungen und digitale Entwicklungen weltweit, die Preise dynamisch und nicht gerade angenehm sind. Das ist mir vollkommen bewusst, aber das zu ändern liegt nicht in meiner Hand.
                        Generell gilt dabei, je höher die Stückmenge ist, desto günstiger der Einzelpreis.
                        Da ich aber verstehen kann das nicht unbedingt jeder nun direkt 5 oder mehr Platinen (ESPs) bestellen will, möchte ich auf eine Alternative hinweisen:
                        Es gibt hier im Thread Interessenten an einer Sammelbestellung, das mag ich auch grundsätzlich unterstützten, werde mich aber, aus den in Post #199 genannten Gründen, nicht daran beteiligen.

                        Die Anbindung an Telegram kann gewissermaßen einen Satelliten ersetzen, ist aber mit diesem eigentlich nicht vergleichbar. Korrekt ist das der natürlich über die Telegram-Cloud läuft und somit vom Internet abhängig ist. Dazu werden noch ein paar Vorraussetzungen benötigt die ich nicht ändern kann.

                        Unterschiede zwischen ESP und Telegram ist bspw. das meine Platinen auch Umweltwerte wie Temperatur, Luftfeuchtigkeit und Luftqualität messen. Außerdem unterstüzen sie auch Bluetooth-Dongle und können so als Präsenzmelder dienen. Darüber hinaus ist die Hardware vorbereit für einen mmWave Präsenzsensor, was die Erkennung nochmal verbessert. An der Stelle muss ich aber dazu sagen, dass die Firmware den noch nicht unterstüzt.

                        Für deine Installation via Docker, mag ich dir das neue Handbuch ans Herz legen: https://hannah-docs.leonie.network/manual/installation/

                        Da steht auch was zum Adapter:
                        https://hannah-docs.leonie.network/components/iobroker-adapter/installation/

                        Generell versuche ich dort sämtliche Themen abzudecken, so steht da mittlerweile schon ziemlich viel und ich habe versucht alles "nutzernah" abzubilden. Klick dich gerne mal durch und gib mir Feedback.

                        @McBeath sagte:

                        finale Zusammenfassung

                        Auch wenn ich mir sicher bin, das du das so nicht unbedingt meinst, eine "finale Zusammenfassung" wird es nicht geben, das würde ja bedeuten das Hannah fertig ist :D An der Stelle aber auch nochmal der Hinweis auf https://hannah-docs.leonie.network, da steht auch eniges zu Hannah selbst.

                        Liebe Grüße

                        1 Antwort Letzte Antwort
                        0
                        • M
                          M
                          McBeath
                          schrieb zuletzt editiert von McBeath
                          #211

                          @leonie
                          Danke für deine schnelle und ausführliche Antwort.

                          An der Stelle muss ich sagen das mir der (sorry) "Krüpel" über Telegram mir überhaupt nicht in den Kram passt.
                          Da bin ich mehr für die ESP´s.
                          In zuge meine Suche des Assistenten bin ich vor kurzem noch über ein ähnliches ESP gestolpert wie deines.

                          Aufgrund meines Ansehen von -1 (kann mir keiner sagen wo der her kommt) ist es mir
                          leider nicht gestatte einen Link zu Posten.
                          S857e1831ef664d08bcccf8fec941401cI.jpg_220x220q75.jpg_.avif

                          Respeaker Xmos XVF3800
                          https://de.aliexpress.com/item/1005009578368362.html?isdl=y&aff_fsk=_oEtjzCB&src=Ideolo&aff_platform=aff_feeds&aff_short_key=_oEtjzCB&pdp_npi=4%40dis%21EUR%2168.93%2155.39%21%21%21%21%21%40%2112000056553679001%21afff%21%21%21
                          

                          Wäre dies eventuell auch mit Hannah kompatibel?
                          Und wenn es nur zu Testzwecken reichen würde! 😉

                          Wie du bereits treffend bemerkt hast, bezog sich meine "finale Zusammenfassung" nicht explizit auf Hannah sondern auf die Anleitung. 😊

                          Ich werde mich dann mal au deine Anleitung wagen müssen, mal sehen wie weit ich komme und ob meine Syno das auch noch packt. 🤔

                          Durch dein

                          1 Antwort Letzte Antwort
                          0
                          • L
                            L
                            Leonie
                            schrieb zuletzt editiert von Leonie
                            #212

                            @mcbeath

                            Dazu habe ich mich in Beitrag #126 geäußert. Ich zitiere mich selbst:

                            Leonie sagte in Hannah — Open Source Smart-Home-Sprachassistentin:

                            Der ReSpeaker XVF3800 ist zwar ein starkes Board für Konferenzräume und wird gerne für Sprachassistenten verwendet, ist aber für das Projekt aktuell aus mehreren Gründen ungeeignet:

                            Preis: Für ~66 € bekommt man, bei der richtigen Stückzahl, fast zwei komplett bestückte Rev 5 Platinen inklusive Sensorik und LED-Ring.

                            Architektur: Die Mikrofone hängen an einem dedizierten XMOS-DSP-Coprozessor. Die Audiodaten werden dort verarbeitet und völlig anders an den ESP32 weitergereicht als bei meinem Direkt-I2S-Setup. Meine Firmware unterstützt diesen Coprozessor schlichtweg nicht.

                            Liebe Grüße

                            1 Antwort Letzte Antwort
                            0
                            • M
                              M
                              McBeath
                              schrieb zuletzt editiert von
                              #213

                              @leonie
                              Entschuldie meine wiederholte Frage bezüglich des XVF3800.

                              Ich muss gestehen das mir ab Post #ü80 die Murmel rauchte und zum Ende gesprungen bin.
                              Folglich habe ich über 100 Post's nicht gelesen.

                              Liebe Grüße

                              1 Antwort Letzte Antwort
                              0
                              • L
                                L
                                Leonie
                                schrieb zuletzt editiert von
                                #214

                                ach, dafür musst du dich nicht entschuldigen. Ein Inhaltsverzeichnis würde dem Thread gut tun. Ich weiß nur was ich wann geschrieben habe :D

                                1 Antwort Letzte Antwort
                                0
                                • M
                                  M
                                  McBeath
                                  schrieb zuletzt editiert von McBeath
                                  #215

                                  Dann bin ich ja beruhigt, 😉 das

                                  @Leonie sagte:
                                  Inhaltsverzeichnis würde dem Thread gut tun

                                  passt schon eher zu meiner Frage der Zusammenfassung.

                                  @Leonie sagte:
                                  Ich weiß nur was ich wann geschrieben habe :D

                                  Das freut mich für dich, wird aber mit zunehmendem alter nachlassen 😂

                                  1 Antwort Letzte Antwort
                                  0
                                  • L
                                    L
                                    Leonie
                                    schrieb zuletzt editiert von
                                    #216

                                    @mcbeath Ich habe mal die KI meines Vertrauens angeworfen:

                                    Inhaltsverzeichnis — Hannah-Thread (#84378)

                                    215 Beiträge, 23.04.2026 – 19.09.2026. Links zeigen jeweils auf den ersten Beitrag der Sektion.

                                    Grundlagen & Vorstellung

                                    • #1 — Eröffnungspost: Was ist Hannah, Architektur, Features, Roadmap (wird laufend aktualisiert)
                                    • #2 — Erste Nachfrage: RPi nötig? Aufteilung Core/Satellit
                                    • #5 — Kritik am ersten Adapter-Stand, Umbau zu einem "richtigen" Adapter, Willkommen in der Community

                                    Frühe Entwicklung (Mai–Juli)

                                    • #10 — Update: Trigger-Engine, Loslösung der State-Logik von MQTT, neuer Alpha-Adapter
                                    • #11 — Instanz-Einrichtung, Pi-Satelliten-Hardware (RPi 3b + USB-Mikro/Klinke oder ReSpeaker HAT)
                                    • #16 — Monats-Update Juni: WebUI eingeführt (Ablösung der YAML-Handbearbeitung)
                                    • #17 — Frage nach Projekt-Zukunft/Nachhaltigkeit — Leonies Antwort: aktive Weiterentwicklung, öffentliches Repo als Absicherung
                                    • #19 — Ein-Befehl-Installation (curl-Installer) für alle Komponenten
                                    • #21 — Pi-Satelliten offiziell eingefroren/nicht mehr supportet, zugunsten ESP32-S3
                                    • #22 — Begriffsklärung Satellit vs. Access Point / Hardware-Anforderungen eines Satelliten

                                    Mehrsprachigkeit (Diskussion, nicht umgesetzt)

                                    • #27 — Anfrage: Unterstützung weiterer Sprachen (aktuell hartkodiert Deutsch)
                                    • #33 — Konzeptidee "getLanguage"-Schnittstelle, Diskussion Wakeword-pro-Sprache vs. automatische Erkennung, Whisper-Sprachdetektion — bleibt auf der Roadmap, nicht umgesetzt

                                    Hardware-Vorschau & erste PCB-Bilder

                                    • #31 — Erstes PCB-Bild + Gehäuse-Bild (88mm, 4-Layer)
                                    • #38 — Audio-Demo-Anfrage, Hinweis auf Piper-Stimmen (Hugging Face)
                                    • #40 — Anfrage zu ESPHome-Kompatibilität/Alternativ-Hardware — abgelehnt (eigene ESP-IDF-Firmware nötig wegen Audio-Pipeline/Wakeword)

                                    großer Fragenkatalog

                                    • #42 — Vorstellung, Fragen zu Selbstbau-Platine, Telegram, Adapter-Verfügbarkeit im Beta-Repo
                                    • #43 — Ausführliche Antwort: Selbstbau-Optionen (DevKit + Breakouts vs. eigenes PCB)
                                    • #44 — Monats-Update August: Activity Log, Nachrichten-Mailbox, überarbeitete Wecker/Timer

                                    Installation mit systemd Teil 1 & Docker/Compose-Marathon

                                    • #45 — Installationsprobleme (leere Instanz)
                                    • #53 — Docker/Synology-Diskussion beginnt: systemd im Container, Image-pro-Komponente
                                    • #63 — Leonie veröffentlicht vollständiges docker-compose.yml für alle Komponenten
                                    • #64 — Telegram-Domain-Problem ("Bot domain invalid") taucht erstmals auf
                                    • #67 — Ausführliche Anleitung: Telegram-Konto-Verknüpfung, Domain-Anforderungen
                                    • #76 — ffmpeg-Bug im Core-Container gemeldet und gefixt (v0.75.8)
                                    • #78 — Piper-TTS-Modell-Datei fehlt im Container (Volume-Problem)

                                    Hardware-Freigabe & Bestellungen (PCBWay)

                                    • #79 — 🎉 Hannah Satellite Rev. 5 offiziell freigegeben (PCBWay Shared Project)
                                    • #83 — Erstes Bestellinteresse (duemchen), Sammelbestellungs-Idee entsteht
                                    • #87 — Wie bestellt man (PCB+Assembly bei PCBWay)
                                    • #92 — Stückpreis-Transparenz (~50€/Stück bestückt, Materialkosten)
                                    • #109 — Erste reale Bestell-/Preis-Rückmeldung
                                    • #114 — Konkretes PCBWay-Angebot für 1 Stück (117,82$), Diskussion Mengenrabatt
                                    • #116 — AliExpress/Waveshare-ESP32-Audioboards als Alternative vorgeschlagen
                                    • #120 — Sammelbestellungs-Interesse wird eingesammelt (mehrere Nutzer melden Stückzahlen)
                                    • #125 — Frage: rechteckige statt runde Platine (Kostenersparnis)? / JLCPCB vs. PCBWay
                                    • #126 — Ausführliche Begründung PCBWay-Wahl (Shared-Projects-Feature)
                                    • #128 — Frage nach Gehäuse

                                    Sprechererkennung, State-Mapping & Bugfixes

                                    • #130 — Voice-Enrollment erfolgreich, Fragen zu Test/Doku
                                    • #132 — Bugreport: Rolladen-States (Homematic LEVEL/STATE) werden nicht erkannt
                                    • #135 — Erklärung der kanonischen State-Keys (on/level/color/current/…)

                                    RAG/LLM-Integration & Skill-System (Zukunftsdiskussion)

                                    • #137 — Idee: Objektbaum per RAG dem LLM zugänglich machen statt Regel-NLU
                                    • #138 — Antwort: NLU ist bewusst regelbasiert, LLM nur Fallback-Pfad
                                    • #188 — WebChat-Idee (gRPC SubmitText), offen für Community-Beitrag
                                    • #190 — Ausführliche Antwort zu RAG/E-Mail-Integration: Weg über Skill-System (gRPC-Skill-Server)
                                    • #196 — vertiefte Architektur-Diskussion (LLM-Internetzugriff als Backend-Eigenschaft)

                                    Installation mit systemd Teil 2 — Config, Passwort, WebUI, gRPC, TLS

                                    • #140 — WebUI-Login-Problem beginnt (admin-Passwort, Core nicht erreichbar)
                                    • #146 — config.yaml wird nicht gefunden (Pfad-/Rechteproblem)
                                    • #158 — Manueller Passwort-Reset per sqlite-Kommando
                                    • #164 — WebUI-Core-Verbindung: eigene WebUI-Config nötig (/etc/hannah-webui/config.yaml)
                                    • #171 — Root Cause gefunden: gRPC-Host muss auf 0.0.0.0 stehen
                                    • #189 — Nächstes Thema: Telegram-Domain-Einbindung mit eigener Domain
                                    • #207 — Root Cause: IP-Adresse funktioniert bei Telegram nicht, Domain (z.B. DuckDNS) nötig
                                    • #208 — WebUI bekommt natives HTTPS/TLS-Support (Update-Anleitung)

                                    Community-Ton & Ausblick

                                    • #198 — Frust über "zu viele Detaildiskussionen" ohne zentrale Sammelbestellung
                                    • #199 — Klarstellung: kein kommerzielles Produkt, PCBWay Shared Project ist Selbstbedienung
                                    • #209 — McBeath fragt nach einer finalen Zusammenfassung/Anleitung
                                    • #214 — Vorschlag Inhaltsverzeichnis — Ursprung dieser Anfrage

                                    Für alle die Statistiken mögen:
                                    Für Hannah sind aktuell noch 38 Issues offen und 290 sind geschlossen. Insgesamt habe ich aktuell knapp 330 Issues angelegt und die meisten bearbeitet.

                                    1 Antwort Letzte Antwort
                                    0

                                    Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                                    Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                                    Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                                    Registrieren Anmelden
                                    Antworten
                                    • In einem neuen Thema antworten
                                    Anmelden zum Antworten
                                    • Älteste zuerst
                                    • Neuste zuerst
                                    • Meiste Stimmen


                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    281

                                    Online

                                    33.1k

                                    Benutzende

                                    83.8k

                                    Themen

                                    1.4m

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

                                    • Du hast noch kein Konto? Registrieren

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