NEWS
Hannah — Open Source Smart-Home-Sprachassistentin
-
-
Hi,
klar. Nur weil man bspw. docker installiert, muss man nicht zwingend alles als Container nutzen. Bei mir läuft ioBroker auch nicht als Container, auf dem selben Host läuft aber bspw. zigbee2mqtt als Container.
-
-
-
ja, braucht er. Im Adminbereich des Asset Servers einen Serviceaccount anlegen, diesem mindestens das Recht
satellite:readgeben
Dann einen Token erstellen, diesen gibst du den Satelliten
Disclaimer: Das ist aktuell wohl noch nicht so super benutzerfreundlich.
-
-
Das ist nun relativ schlecht. Dafür kannst du aber nicht einen Service Account gelöscht haben, die haben nämlich nichts damit zu tun. Du hast wohl eher dem Konto den Admin-Status entzogen.
Aber egal wie, die einzige Rettung die du hast ist eine Neuinstallation vom Asset Server.
Notiz an mich: Das sollte man verbessern. Ich habe bereits konkrete Ideen.
Der Assetserver lief monatelang nur privat bei mir, dann habe ich mir eines Nachts gedacht "Hey, der wäre doch was für alle". Scheinbar habe ich vergessen en auch so umzubauen.
-
-
Okay liebe Leonie, jetzt weis ich nicht mehr weiter.
Ich habe ein esp32 s3 n16r8 devkit am Laufen.
Sprache wird erkannt , Antworten kommen aus dem Lautsprecher (Befehle werden aber nicht ausgeführt zb: wie ist die Temperatur im Wohnzimmer (Das kann ich nicht Beantworten)).
Frage nach der Uhrzeit wird korrekt Beantwortet.
Problem ist das der Satellite dem TV oder Gesprächen im Raum zuhört und ein Wake Wort erkennt, das definitiv nicht Hannah ist. Dadurch tritt auch im Monitor keine Stille ein.
Ist dieses Wake Wort (Hannah oder Hey Hannah) eigentlich vorgegeben?
Auch die KI meines Vertrauens kann nicht wirklich weiter helfen. -
Hey,
Zunächst einmal, Hannah antwortet dir nur "Das kann ich nicht beantworten", wenn sie es nicht versteht. Dazu eine Rückfrage von mir:
Kennt Hannah deine Geräte noch? Das kannst du ja in der WebUI prüfen.
Du kannst mir auch gerne deine CoreLogs schicken, da steht drin was Hannah verstanden hat.Dass die Mikrofone auch andere Geräusche aufnehmen, wie bspw. Fernseher oder Radio, liegt in der Natur der Sache. Auch die verwendete Stillerkennung kann nicht die Aufnahme beenden, wenn im Hintergrund weiterhin Geräusche sind (weil Geräusche nunmal nicht Stille sind).
Grundsätzlich kann das DevKit-Board, das du nutzt, kann von meinen Satelliten abweichen, denn nur dort habe ich exakte Werte. Dennoch war es da ein längerer Weg, um die Raumgeräusche zu minimieren.
Ich weiß nicht, welche Firmware du nun auf dem DevKit installiert hast, ich nehme aber mal an, dass du die DevKit-Version (sdkconfig.defaults.devkit) verwendest. Die nutzt auch ganz andere Mikrofone als meine Satelliten. Mit ganz eigenen Settings.Dann ist natürlich noch die Frage, welche Speech-to-Text-Anwendung verwendet wird. Auch Whisper hat mehrere Modelle. Größere/stärkere Modelle brauchen länger für die Berechnung, bieten aber häufig eine bessere Erkennungsqualität. Auch hier musst du im Zweifel verschiedene Modelle austesten. Jedes Modell hat seine eigenen Stärken und Schwächen und kann je nach Audioeingang unterschiedliche Ergebnisse liefern. Welches Modell bei dir laufen kann und mit welchem du zufrieden bist, weißt am Ende nur du.
Grundsätzlich bist du auch nicht auf Whisper beschränkt. Hannah kann ebenso eine entsprechende Software über das Netzwerk ansprechen.
Du siehst also, die Audioeinrichtung ist eine sehr komplexe Sache. Es gibt da nicht "den einen" Hebel den man umlegt damit es besser läuft, es erfordert etliche Arbeitsstunden das entsprechend einzustellen. Für das DevKit kann ich das nicht übernehmen, da die Einstellungen auch bspw. von der Geometrie der Mikrofone (wo sitzt welches Mikrofon, wie angeschlossen) abhängig ist. Da hilft im Zweifel nur ausprobieren.
In der WebUI des Satelliten gibt es die ‚Erkennungsschwelle'. Wenn du die etwas höher stellst, löst Hannah seltener fälschlich aus, hört dafür aber auch etwas schlechter auf das echte Wort. Probier das zuerst.
Du könntest auch die Audioverstärkung der Mikrofone senken, dann wäre für den Satelliten alles leiser, was dann dazu führen könnte, dass der Satellit allgemein weniger sensitiv auf Umgebungsgeräusche reagiert. Allerdings bietet die DevKit-Version keine direkten Einstellungen dafür. Das habe ich nur in meinen Satelliten-Platinen eingebaut.
Das DevKit habe ich nur einmal zum Testen meines Designs genutzt und seitdem nicht weiterentwickelt, deshalb gibt es dort weniger Einstellungen.Dennoch kannst du die Audioverstärkung ändern. In der Datei 'satellite-esp/components/hannah_audio/hannah_audio.c' wird das Audio der Mikrofone für I2S mit einem festen Wert von 14 ("s32[i*2] >> 14") umgerechnet. Du könntest diese 14 erhöhen und dann die Firmware neu kompilieren und flashen. Welchen Wert du verwenden solltest, weiß ich nicht, ich würde es vmtl. mal mit 15, alternativ mit 16 versuchen.
Erhöhe den Wert nur nicht zu stark, denn ein größerer Wert macht das Signal leiser, und wenn es zu leise wird, versteht Whisper dich nicht mehr.Bei einem Fernseher oder Radio ist es aber normal, dass das Wakeword auslöst, zu oft treten dort phonetisch gleiche Klänge auf, das kann der Satellit technisch nicht unterscheiden.
Generell zum Aufstellort: Stelle den Satelliten nicht direkt neben den Fernseher, sondern bspw. auf den Couchtisch, wenn er dich verstehen soll, während du auf der Couch sitzt. Je lauter deine Stimme im Vergleich zur Umgebung ist, desto besser wird es funktionieren. Dafür gilt nur dummerweise nicht die Lautstärke wie du sie hörst, sondern die, wie der Satellit sie hört. So kann auch ein leiserer Fernseher lauter für den Satelliten sein als du, wenn der Fernseher nur 50 cm neben dem Satelliten ist, du aber 5 m.
Konkret zu der Lautstärke in dem Fall:
Pro Verdopplung der Entfernung wird ein Geräusch grob 6 dB leiser, bei 50 cm gegenüber 5 m (also dem Zehnfachen) sind das im Idealfall etwa 20 dB. Ein Fernseher, der direkt neben dem Satelliten steht, kann für ihn also deutlich lauter sein als du auf der Couch, obwohl er im Raum viel leiser wirkt als du.
Das gilt aber natürlich nur für die freie Fläche. In einer Wohnung, mit Decken, Wänden, Fenstern, Türen und Möbeln, wird Schall gerne auch mal reflektiert und eingefangen, wobei dann die reale Lautstärke die beim Satelliten ankommt nochmal anders sein kann.Das Wakeword ist halb vorgegeben. Du kannst jederzeit ein eigenes Wakeword auf den Assetserver laden, der Key muss "wakeword" sein, der Namespace "satellite" und die Datei muss für microwakeword sein. Du kannst dir ein beliebiges runterladen, oder ein eigenes trainieren.
Ich arbeite aber gerade an einem besseren, das weniger fälschlich auslöst. Sobald es fertig ist, gebe ich hier Bescheid.Liebe Grüße
PS: Audiodesign ist blöd.
-
Hey,
Zunächst einmal, Hannah antwortet dir nur "Das kann ich nicht beantworten", wenn sie es nicht versteht. Dazu eine Rückfrage von mir:
Kennt Hannah deine Geräte noch? Das kannst du ja in der WebUI prüfen.
Du kannst mir auch gerne deine CoreLogs schicken, da steht drin was Hannah verstanden hat.Dass die Mikrofone auch andere Geräusche aufnehmen, wie bspw. Fernseher oder Radio, liegt in der Natur der Sache. Auch die verwendete Stillerkennung kann nicht die Aufnahme beenden, wenn im Hintergrund weiterhin Geräusche sind (weil Geräusche nunmal nicht Stille sind).
Grundsätzlich kann das DevKit-Board, das du nutzt, kann von meinen Satelliten abweichen, denn nur dort habe ich exakte Werte. Dennoch war es da ein längerer Weg, um die Raumgeräusche zu minimieren.
Ich weiß nicht, welche Firmware du nun auf dem DevKit installiert hast, ich nehme aber mal an, dass du die DevKit-Version (sdkconfig.defaults.devkit) verwendest. Die nutzt auch ganz andere Mikrofone als meine Satelliten. Mit ganz eigenen Settings.Dann ist natürlich noch die Frage, welche Speech-to-Text-Anwendung verwendet wird. Auch Whisper hat mehrere Modelle. Größere/stärkere Modelle brauchen länger für die Berechnung, bieten aber häufig eine bessere Erkennungsqualität. Auch hier musst du im Zweifel verschiedene Modelle austesten. Jedes Modell hat seine eigenen Stärken und Schwächen und kann je nach Audioeingang unterschiedliche Ergebnisse liefern. Welches Modell bei dir laufen kann und mit welchem du zufrieden bist, weißt am Ende nur du.
Grundsätzlich bist du auch nicht auf Whisper beschränkt. Hannah kann ebenso eine entsprechende Software über das Netzwerk ansprechen.
Du siehst also, die Audioeinrichtung ist eine sehr komplexe Sache. Es gibt da nicht "den einen" Hebel den man umlegt damit es besser läuft, es erfordert etliche Arbeitsstunden das entsprechend einzustellen. Für das DevKit kann ich das nicht übernehmen, da die Einstellungen auch bspw. von der Geometrie der Mikrofone (wo sitzt welches Mikrofon, wie angeschlossen) abhängig ist. Da hilft im Zweifel nur ausprobieren.
In der WebUI des Satelliten gibt es die ‚Erkennungsschwelle'. Wenn du die etwas höher stellst, löst Hannah seltener fälschlich aus, hört dafür aber auch etwas schlechter auf das echte Wort. Probier das zuerst.
Du könntest auch die Audioverstärkung der Mikrofone senken, dann wäre für den Satelliten alles leiser, was dann dazu führen könnte, dass der Satellit allgemein weniger sensitiv auf Umgebungsgeräusche reagiert. Allerdings bietet die DevKit-Version keine direkten Einstellungen dafür. Das habe ich nur in meinen Satelliten-Platinen eingebaut.
Das DevKit habe ich nur einmal zum Testen meines Designs genutzt und seitdem nicht weiterentwickelt, deshalb gibt es dort weniger Einstellungen.Dennoch kannst du die Audioverstärkung ändern. In der Datei 'satellite-esp/components/hannah_audio/hannah_audio.c' wird das Audio der Mikrofone für I2S mit einem festen Wert von 14 ("s32[i*2] >> 14") umgerechnet. Du könntest diese 14 erhöhen und dann die Firmware neu kompilieren und flashen. Welchen Wert du verwenden solltest, weiß ich nicht, ich würde es vmtl. mal mit 15, alternativ mit 16 versuchen.
Erhöhe den Wert nur nicht zu stark, denn ein größerer Wert macht das Signal leiser, und wenn es zu leise wird, versteht Whisper dich nicht mehr.Bei einem Fernseher oder Radio ist es aber normal, dass das Wakeword auslöst, zu oft treten dort phonetisch gleiche Klänge auf, das kann der Satellit technisch nicht unterscheiden.
Generell zum Aufstellort: Stelle den Satelliten nicht direkt neben den Fernseher, sondern bspw. auf den Couchtisch, wenn er dich verstehen soll, während du auf der Couch sitzt. Je lauter deine Stimme im Vergleich zur Umgebung ist, desto besser wird es funktionieren. Dafür gilt nur dummerweise nicht die Lautstärke wie du sie hörst, sondern die, wie der Satellit sie hört. So kann auch ein leiserer Fernseher lauter für den Satelliten sein als du, wenn der Fernseher nur 50 cm neben dem Satelliten ist, du aber 5 m.
Konkret zu der Lautstärke in dem Fall:
Pro Verdopplung der Entfernung wird ein Geräusch grob 6 dB leiser, bei 50 cm gegenüber 5 m (also dem Zehnfachen) sind das im Idealfall etwa 20 dB. Ein Fernseher, der direkt neben dem Satelliten steht, kann für ihn also deutlich lauter sein als du auf der Couch, obwohl er im Raum viel leiser wirkt als du.
Das gilt aber natürlich nur für die freie Fläche. In einer Wohnung, mit Decken, Wänden, Fenstern, Türen und Möbeln, wird Schall gerne auch mal reflektiert und eingefangen, wobei dann die reale Lautstärke die beim Satelliten ankommt nochmal anders sein kann.Das Wakeword ist halb vorgegeben. Du kannst jederzeit ein eigenes Wakeword auf den Assetserver laden, der Key muss "wakeword" sein, der Namespace "satellite" und die Datei muss für microwakeword sein. Du kannst dir ein beliebiges runterladen, oder ein eigenes trainieren.
Ich arbeite aber gerade an einem besseren, das weniger fälschlich auslöst. Sobald es fertig ist, gebe ich hier Bescheid.Liebe Grüße
PS: Audiodesign ist blöd.
Hey,
Zunächst einmal, Hannah antwortet dir nur "Das kann ich nicht beantworten", wenn sie es nicht versteht. Dazu eine Rückfrage von mir:
Kennt Hannah deine Geräte noch? Das kannst du ja in der WebUI prüfen.Ja, über Telegram funktioniert es per Sprache wie auch per Text
Du kannst mir auch gerne deine CoreLogs schicken, da steht drin was Hannah verstanden hat.
Das mach ich Später wenn ich bessere Ergebnisse erzielt habe.
Dass die Mikrofone auch andere Geräusche aufnehmen, wie bspw. Fernseher oder Radio, liegt in der Natur der Sache. Auch die verwendete Stillerkennung kann nicht die Aufnahme beenden, wenn im Hintergrund weiterhin Geräusche sind (weil Geräusche nunmal nicht Stille sind).
Grundsätzlich kann das DevKit-Board, das du nutzt, kann von meinen Satelliten abweichen, denn nur dort habe ich exakte Werte. Dennoch war es da ein längerer Weg, um die Raumgeräusche zu minimieren.Ich werde daran Arbeiten.
Ich weiß nicht, welche Firmware du nun auf dem DevKit installiert hast, ich nehme aber mal an, dass du die DevKit-Version (sdkconfig.defaults.devkit) verwendest. Die nutzt auch ganz andere Mikrofone als meine Satelliten. Mit ganz eigenen Settings.
Firmware, deine DevKit-Version sdkconfig von Github
Dann ist natürlich noch die Frage, welche Speech-to-Text-Anwendung verwendet wird.
Ich denke mal das ist Fast Wisper die ich aus deiner Anleitung Installiert habe oder braucht es noch einen anderen?
Auch Whisper hat mehrere Modelle. Größere/stärkere Modelle brauchen länger für die Berechnung, bieten aber häufig eine bessere Erkennungsqualität.
Auch hier musst du im Zweifel verschiedene Modelle austesten. Jedes Modell hat seine eigenen Stärken und Schwächen und kann je nach Audioeingang unterschiedliche Ergebnisse liefern. Welches Modell bei dir laufen kann und mit welchem du zufrieden bist, weißt am Ende nur du.Wo würde ich diese dann Finden?
Grundsätzlich bist du auch nicht auf Whisper beschränkt. Hannah kann ebenso eine entsprechende Software über das Netzwerk ansprechen.
einen Tip dazu?
Du siehst also, die Audioeinrichtung ist eine sehr komplexe Sache. Es gibt da nicht "den einen" Hebel den man umlegt damit es besser läuft, es erfordert etliche Arbeitsstunden das entsprechend einzustellen. Für das DevKit kann ich das nicht übernehmen, da die Einstellungen auch bspw. von der Geometrie der Mikrofone (wo sitzt welches Mikrofon, wie angeschlossen) abhängig ist. Da hilft im Zweifel nur ausprobieren.
In der WebUI des Satelliten gibt es die ‚Erkennungsschwelle'. Wenn du die etwas höher stellst, löst Hannah seltener fälschlich aus, hört dafür aber auch etwas schlechter auf das echte Wort. Probier das zuerst.
Das bin ich schon am Testen.
Du könntest auch die Audioverstärkung der Mikrofone senken, dann wäre für den Satelliten alles leiser, was dann dazu führen könnte, dass der Satellit allgemein weniger sensitiv auf Umgebungsgeräusche reagiert. Allerdings bietet die DevKit-Version keine direkten Einstellungen dafür. Das habe ich nur in meinen Satelliten-Platinen eingebaut.
Das DevKit habe ich nur einmal zum Testen meines Designs genutzt und seitdem nicht weiterentwickelt, deshalb gibt es dort weniger Einstellungen.Dennoch kannst du die Audioverstärkung ändern. In der Datei 'satellite-esp/components/hannah_audio/hannah_audio.c' wird das Audio der Mikrofone für I2S mit einem festen Wert von 14 ("s32[i*2] >> 14") umgerechnet. Du könntest diese 14 erhöhen und dann die Firmware neu kompilieren und flashen. Welchen Wert du verwenden solltest, weiß ich nicht, ich würde es vmtl. mal mit 15, alternativ mit 16 versuchen.
Erhöhe den Wert nur nicht zu stark, denn ein größerer Wert macht das Signal leiser, und wenn es zu leise wird, versteht Whisper dich nicht mehr.Hab ich mal auf 15 gestellt, kommt dann etwas besser.
Bei einem Fernseher oder Radio ist es aber normal, dass das Wakeword auslöst, zu oft treten dort phonetisch gleiche Klänge auf, das kann der Satellit technisch nicht unterscheiden.
Generell zum Aufstellort: Stelle den Satelliten nicht direkt neben den Fernseher, sondern bspw. auf den Couchtisch, wenn er dich verstehen soll, während du auf der Couch sitzt. Je lauter deine Stimme im Vergleich zur Umgebung ist, desto besser wird es funktionieren. Dafür gilt nur dummerweise nicht die Lautstärke wie du sie hörst, sondern die, wie der Satellit sie hört. So kann auch ein leiserer Fernseher lauter für den Satelliten sein als du, wenn der Fernseher nur 50 cm neben dem Satelliten ist, du aber 5 m.
Konkret zu der Lautstärke in dem Fall:
Pro Verdopplung der Entfernung wird ein Geräusch grob 6 dB leiser, bei 50 cm gegenüber 5 m (also dem Zehnfachen) sind das im Idealfall etwa 20 dB. Ein Fernseher, der direkt neben dem Satelliten steht, kann für ihn also deutlich lauter sein als du auf der Couch, obwohl er im Raum viel leiser wirkt als du.
Das gilt aber natürlich nur für die freie Fläche. In einer Wohnung, mit Decken, Wänden, Fenstern, Türen und Möbeln, wird Schall gerne auch mal reflektiert und eingefangen, wobei dann die reale Lautstärke die beim Satelliten ankommt nochmal anders sein kann.Das Wakeword ist halb vorgegeben. Du kannst jederzeit ein eigenes Wakeword auf den Assetserver laden, der Key muss "wakeword" sein, der Namespace "satellite" und die Datei muss für microwakeword sein. Du kannst dir ein beliebiges runterladen, oder ein eigenes trainieren.
Ich arbeite aber gerade an einem besseren, das weniger fälschlich auslöst. Sobald es fertig ist, gebe ich hier Bescheid.Anderes Wakewort müsste ich schon machen, denn mein Hund (Enya) fühlt sich bei Hannah immer Angesprochen und schaut mich Fragend an.
Da bräuchte ich aber noch ein Paar Infos zu.
Wie wird das wo genau Eingetragen?Liebe Grüße
PS: Audiodesign ist blöd.
-
Hey,
Zunächst einmal, Hannah antwortet dir nur "Das kann ich nicht beantworten", wenn sie es nicht versteht. Dazu eine Rückfrage von mir:
Kennt Hannah deine Geräte noch? Das kannst du ja in der WebUI prüfen.Ja, über Telegram funktioniert es per Sprache wie auch per Text
Du kannst mir auch gerne deine CoreLogs schicken, da steht drin was Hannah verstanden hat.
Das mach ich Später wenn ich bessere Ergebnisse erzielt habe.
Dass die Mikrofone auch andere Geräusche aufnehmen, wie bspw. Fernseher oder Radio, liegt in der Natur der Sache. Auch die verwendete Stillerkennung kann nicht die Aufnahme beenden, wenn im Hintergrund weiterhin Geräusche sind (weil Geräusche nunmal nicht Stille sind).
Grundsätzlich kann das DevKit-Board, das du nutzt, kann von meinen Satelliten abweichen, denn nur dort habe ich exakte Werte. Dennoch war es da ein längerer Weg, um die Raumgeräusche zu minimieren.Ich werde daran Arbeiten.
Ich weiß nicht, welche Firmware du nun auf dem DevKit installiert hast, ich nehme aber mal an, dass du die DevKit-Version (sdkconfig.defaults.devkit) verwendest. Die nutzt auch ganz andere Mikrofone als meine Satelliten. Mit ganz eigenen Settings.
Firmware, deine DevKit-Version sdkconfig von Github
Dann ist natürlich noch die Frage, welche Speech-to-Text-Anwendung verwendet wird.
Ich denke mal das ist Fast Wisper die ich aus deiner Anleitung Installiert habe oder braucht es noch einen anderen?
Auch Whisper hat mehrere Modelle. Größere/stärkere Modelle brauchen länger für die Berechnung, bieten aber häufig eine bessere Erkennungsqualität.
Auch hier musst du im Zweifel verschiedene Modelle austesten. Jedes Modell hat seine eigenen Stärken und Schwächen und kann je nach Audioeingang unterschiedliche Ergebnisse liefern. Welches Modell bei dir laufen kann und mit welchem du zufrieden bist, weißt am Ende nur du.Wo würde ich diese dann Finden?
Grundsätzlich bist du auch nicht auf Whisper beschränkt. Hannah kann ebenso eine entsprechende Software über das Netzwerk ansprechen.
einen Tip dazu?
Du siehst also, die Audioeinrichtung ist eine sehr komplexe Sache. Es gibt da nicht "den einen" Hebel den man umlegt damit es besser läuft, es erfordert etliche Arbeitsstunden das entsprechend einzustellen. Für das DevKit kann ich das nicht übernehmen, da die Einstellungen auch bspw. von der Geometrie der Mikrofone (wo sitzt welches Mikrofon, wie angeschlossen) abhängig ist. Da hilft im Zweifel nur ausprobieren.
In der WebUI des Satelliten gibt es die ‚Erkennungsschwelle'. Wenn du die etwas höher stellst, löst Hannah seltener fälschlich aus, hört dafür aber auch etwas schlechter auf das echte Wort. Probier das zuerst.
Das bin ich schon am Testen.
Du könntest auch die Audioverstärkung der Mikrofone senken, dann wäre für den Satelliten alles leiser, was dann dazu führen könnte, dass der Satellit allgemein weniger sensitiv auf Umgebungsgeräusche reagiert. Allerdings bietet die DevKit-Version keine direkten Einstellungen dafür. Das habe ich nur in meinen Satelliten-Platinen eingebaut.
Das DevKit habe ich nur einmal zum Testen meines Designs genutzt und seitdem nicht weiterentwickelt, deshalb gibt es dort weniger Einstellungen.Dennoch kannst du die Audioverstärkung ändern. In der Datei 'satellite-esp/components/hannah_audio/hannah_audio.c' wird das Audio der Mikrofone für I2S mit einem festen Wert von 14 ("s32[i*2] >> 14") umgerechnet. Du könntest diese 14 erhöhen und dann die Firmware neu kompilieren und flashen. Welchen Wert du verwenden solltest, weiß ich nicht, ich würde es vmtl. mal mit 15, alternativ mit 16 versuchen.
Erhöhe den Wert nur nicht zu stark, denn ein größerer Wert macht das Signal leiser, und wenn es zu leise wird, versteht Whisper dich nicht mehr.Hab ich mal auf 15 gestellt, kommt dann etwas besser.
Bei einem Fernseher oder Radio ist es aber normal, dass das Wakeword auslöst, zu oft treten dort phonetisch gleiche Klänge auf, das kann der Satellit technisch nicht unterscheiden.
Generell zum Aufstellort: Stelle den Satelliten nicht direkt neben den Fernseher, sondern bspw. auf den Couchtisch, wenn er dich verstehen soll, während du auf der Couch sitzt. Je lauter deine Stimme im Vergleich zur Umgebung ist, desto besser wird es funktionieren. Dafür gilt nur dummerweise nicht die Lautstärke wie du sie hörst, sondern die, wie der Satellit sie hört. So kann auch ein leiserer Fernseher lauter für den Satelliten sein als du, wenn der Fernseher nur 50 cm neben dem Satelliten ist, du aber 5 m.
Konkret zu der Lautstärke in dem Fall:
Pro Verdopplung der Entfernung wird ein Geräusch grob 6 dB leiser, bei 50 cm gegenüber 5 m (also dem Zehnfachen) sind das im Idealfall etwa 20 dB. Ein Fernseher, der direkt neben dem Satelliten steht, kann für ihn also deutlich lauter sein als du auf der Couch, obwohl er im Raum viel leiser wirkt als du.
Das gilt aber natürlich nur für die freie Fläche. In einer Wohnung, mit Decken, Wänden, Fenstern, Türen und Möbeln, wird Schall gerne auch mal reflektiert und eingefangen, wobei dann die reale Lautstärke die beim Satelliten ankommt nochmal anders sein kann.Das Wakeword ist halb vorgegeben. Du kannst jederzeit ein eigenes Wakeword auf den Assetserver laden, der Key muss "wakeword" sein, der Namespace "satellite" und die Datei muss für microwakeword sein. Du kannst dir ein beliebiges runterladen, oder ein eigenes trainieren.
Ich arbeite aber gerade an einem besseren, das weniger fälschlich auslöst. Sobald es fertig ist, gebe ich hier Bescheid.Anderes Wakewort müsste ich schon machen, denn mein Hund (Enya) fühlt sich bei Hannah immer Angesprochen und schaut mich Fragend an.
Da bräuchte ich aber noch ein Paar Infos zu.
Wie wird das wo genau Eingetragen?Liebe Grüße
PS: Audiodesign ist blöd.
Hi,
Ja, über Telegram funktioniert es per Sprache wie auch per Text
Dann ist Whisper und die NLU nicht das Problem. Sofern du in Telegram auch Sprache verwendest, läuft es exakt über den selben Weg. Für Hannah ist es egal ob das Audio über den Satelliten oder über einen andren Weg kommt.
Ergo: Die Mikrofone deiner Satelliten sind schuld. Du kannst dir im Acivity Log anhören was Hannah verstanden hat, bzw. was am Core ankam. Deine Stimme muss nicht unbedingt glasklar sein, aber eben verständlich. Höre es dir einfach mal an, vielleicht findest du so den richtigen Hebel.Ich denke mal das ist Fast Wisper die ich aus deiner Anleitung Installiert habe oder braucht es noch einen anderen?
Nein, faster-whisper ist durchaus ausreichend. Bei mir läuft faster-whisper lokal auf dem Server wo auch Core läuft, dazu kommt noch faster-whisper-server auf einem anderen Server und dann habe ich noch die Azure Speech Services laufen, das ist ein Cloud Dienst.
Grundsätzlich läuft es aber auch nur mit faster-whisper lokal. Es gibt Modelle die sind stärker von GPUs abhängig, es gibt aber auch welche die bspw. auf einem Toaster laufen können.Wo würde ich diese dann Finden?
Im Internet. Beispielsweise auf hugging-face: https://huggingface.co/openai/whisper-large-v3
einen Tip dazu?
Siehe zwei Absätze weiter vorher. Generell denke ich nicht das Whisper alleine das Problem bei dir ist, dann würde nämlich auch Telegram mit Sprachnachrichten nicht funktionieren. Letzendlich ist aber auch Speech-to-text, ebenso wie Text-to-Speech ein Machine Learning, also (eine Form) KI. Da gilt: Viel Leistung hilft. Die Modelle muss man leider studieren. Jedes hat eine Dokumentation in dem auch die Vorraussetzungen stehen, im Zweifel ein anderes laden und schauen was passiert.
Hab ich mal auf 15 gestellt, kommt dann etwas besser.
Ein Fortschritt, freut mich.
denn mein Hund (Enya) fühlt sich bei Hannah immer Angesprochen
Hannah ist halt ihr Name :D
Andere Modelle kannst du bspw. dort runterladen:
https://github.com/esphome/micro-wake-word-models/tree/main/modelsDas sind die offiziellen Modelle von microwakeword. Du brauchst die tflite-Datei. Dann gehst du in die WebUI vom AssetServer, drücksts auf Upload, wählst den Channel "satellite" und eine Datei, trägt als Key "wakeword" ein und drückst auf Upload.
Beim nächsten Neustart, wird der Satellit das runterladen. Damit kannst du das Wakeword überschreiben.
Aber Achtung: Der Satellit benötgt zwei Neustarts um das zu aktivieren. Der erste Neustart lädt das neue Wakeword runter, der zweite aktiviert ist.Liebe Grüße
-
-
-
Nach einem System Neustart funktionierte Telegram Wieder.
Welche Logs sollen es sein ?
Nach dem Einspielen des neuen Wakeworts mehrfachen neustarts des Sateliten über die Webseite des Sateliten sowie Hartreset durch Entfernen der Stromversorgung wird weder das neue Wakewort noch das alte bei einem Test erkannt -
-
natürlich die Logs vom Satelliten, da steht drin ob er das Wakeword geladen hat und was er damit tut
-
-
-
Hi,
Ja, das Wakeword wird geladen. Sollte während deinem Logauszug das Wakeword ausgelöst worden sein? Wenn ja, dann ist das ein Beleg dafür das einfach gar nichts passiert, wenn nein, ist der Log für die Frage nicht passend.
Welches Wakeword hast du denn geladen?Zu deinen MQTT-Topics:
Beide werden exklusiv von Core verwendetet zur Steuerung des Satelliten.- listen: schaltet das Mikrofon ein, wenn Hannah dir eine Frage gestellt hat und deine Antwort hören will. Der Satellit nimmt also alles in den nächsten Sekunden auf und sendet es an Core, wo es den bekannten Pfad durchläuft.
- restart: startet den Satelliten neu. Dabei ist egal, was in der Nachricht steht, jede Nachricht darauf löst den Neustart aus.
Was du mit "ignorieren" meinst, weiß ich nicht. In dem Stack gibt es keine Einstellung dazu.
Wenn dein Satellit andauernd neustartet gibt es dafür zwei Gründe:
- Der Satellit ist einer Panic und wird not-gestartet.
- Der Satellit bekommt über das restart-topic den Befehl dazu
Eine Panic kann ich deinem Logauszug nicht erkennen, viel mehr wurde dein Satellit (in dem Log) gestartet weil du ihm Strom gegeben hast, vorher war er aus.
Das restart-topic ist, wie das listen-topic nicht retained. Das heißt, der MQTT-Broker speichert diese nicht und die Kommunikation findet nur in Echtzeit statt. Das führt bspw. dazu das wenn, während ein Satellit offline ist, eines dieser Topics beschrieben wird, weiß das der Satellit nicht wenn er online kommt und der Broker sagt es ihm nicht.
Sollte also dieses Topic bei dir dauerhaft im mqtt gepublished werden, läuft bei dir was falsch. Ich weiß das der MQTT-Adapterfür ioBroker, wenn er als Broker arbeitet, alle Topics die er verabeitet als Datenpunkt anlegen. Er darf aber nicht die Topics von Hannah aktiv announcen, das ist einzig und alleine die Aufgabe von Core und Satellite. Schau bitte in dein MQTT, wer welches Topic veröffentlicht.
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
