Custom Sprachsteuerung "Board Computer"

Hallo zusammen,

ich habe in den letzten anderthalb Jahren ein eigenes Sprachsteuerungssystem für Smarthomes entwickelt. Da das ganze Projekt nun einen Reifegrad erreicht hat, dass es über eine simple Spielerei hinausgeht und da ich für meine Hausautomation auch IP-Symcon verwende und daher hierfür auch ein Plug-In entwickelt habe, möchte ich – entsprechendes Interesse vorausgesetzt – das ganze gerne mit der Community teilen.

Derzeit kann ich noch nicht versprechen in welchem Umfang ich das ganze teilen werde, da ich aktuell auch mit dem Gedanken spiele das ganze Projekt zu kommerzialisieren (interessierte Integratoren sind herzlich willkommen). Aktuell suche ich (fähige) Betatester und würde gerne mehr darüber erfahren, was die IPS-Community von meinem Ansatz hält. Später werde ich das Projekt vermutlich für die private Nutzung veröffentlichen.

Beweggründe für ein eigenes System und Angrenzung zu Alexa & Co
Wenn ich an Sprachsteuerung für Smarthomes denke, dann denke ich an eine Lösung wie den Board-Computer bei Star Trek TNG. Ein in sämtlichen Räumen verfügbares System, dass von seiner Struktur her auf die Smarthome-Anforderungen ausgelegt ist und so eine flüssige und kontextsensitive Interaktion ermöglicht. Wenn ich z.B. im Wohnzimmer bin und das Licht einschalten möchte, dann muss als Kommando „Computer, Licht!“ reichen. Denn das System sollte wissen wo ich mich befinden und dass das Licht aktuell aus ist und es somit eingeschaltet werden soll. Eine solche „natürliche“ bzw. kontextsensitive Integration ist schwierig mit den etablierten Systemen zu machen, da diese mit Ihrem riesigen Überbau an Skills etc. häufig ein relativ umständliches „Navigieren“ durch die Skills bedürfen. Hinzu kommen massive Sicherheitsbedenken, denn wer möchte schon wirklich in jedem Raum ein mit dem Internet verbundenes Mikrofon haben, das von einem internationalen Datenkraken-Konzern betrieben wird?!

Aufbau des Systems
Das System besteht aus einer Serveranwendung und einem Client in jedem Raum. Derzeit bestehen die Raumeinheiten aus einem Mikrofon-Array, einem Raspberry Pi, zwei Lautsprechern, einen Netzteil und optional einer 360°-Kamera. Alles verpackt ein einem 3D-gedrucktem Gehäuse das bei mir unter der Decke in einer 3-Phasen-Stromschiene, mittig im Raum sitzt. Sämtliche Softwarekomponenten sind als Plug-In realisiert um eine auf unterschiedliche Bedürfnisse und Hardwareanforderungen optimierte Lösung zusammenzustellen. So ist z.B. eine komplett offline betriebene Lösung möglich oder eben auch eine die z.B. für „Sprache zu Text“ eine online-API verwendet, da diese häufig leistungsfähiger sind.

Funktionsumfang
Beliebiges Keyword
Je nach verwendetem Keyword-Detector-Plugin kann das Keyword frei vergeben werden. Ich verwende derzeit z.B. „Hey Computer“.

Sprechererkennung
Das System erkennt bei jedem Kommando welcher User das Kommando gesprochen hat. Dies ermöglicht es ein und dasselbe Kommando bei unterschiedlichen Benutzern unterschiedlich zu interpretieren (z.B. das abspielen von persönlichen Playlisten etc.) oder bestimmte Kommandos auf bestimmte User zu beschränken.

Kontextsensitive Dialoge
Wenn bei einem Kommando der jeweilige Raum nicht erwähnt wird, dann wird automatisch der Raum angenommen in dem sich die Raumeinheit befindet. So schaltet z.B. „Computer, Licht!“ immer das Licht im jeweiligen Raum ein bzw. aus. Man kann aber auch jederzeit sämtliche Teile eines Kommandos explizit erwähnen. So schaltet z.B. „Computer, Licht in der Küche aus!“ immer das Licht in der Küche aus, egal in welchem Raum das Kommando gesprochen wurde.

Multiroom-Kompensation
In der Konfiguration der Räume kann angegeben werden, welche Räume sich nah beieinander befinden. Denn in machen Konstellation lässt es sich nicht verhindern, dass mehrere Raumeinheiten auf ein Kommando reagieren. In diesem Fall verwirft das System alle aus nah beieinander liegenden Räumen eingehende Kommandos und führt nur das im Durchschnitt lauteste aus.

Command Priming
Kommandos die aufgrund von Nebengeräuschen etc. mal nicht korrekt erkannt werden, können basieren auch einem phonetischen Abgleich abgeändert werden um die Erkennungsrate zu verbessern. So wird z.B. aus „Rollanden aus“ „Rolladen auf“ etc.

Präsenzerkennung mittels Gesichtserkennung
Wenn in einer Raumeinheit eine Kamera verbaut ist (360°-Fishaugenkameras werden unterstützt), dann kann das System mittels AI-basierter Gesichtserkennung ermitteln welcher User sich in welchem Raum aufhält. Dies ermöglich z.B. in der Küche einen Timer zu erzeugen und die Erinnerung kommt dann z.B. aus der Raumeinheit im Büro weil man sich hier aktuell aufhält. Später wird es auch möglich sein das System als Gegensprechanlage zu nutzen. Zum herstellen einer Verbindung reicht es dann aus, den User zu nennen mit dem man sprechen möchte, unabhängig davon in welchem Raum sich dieser aufhält. Ein weiteres Anwendungsbeispiel wäre die automatische Anpassung an die Präferenzen eines Users, wenn dieser einen Raum Betritt.

Scannen von Barcodes
Wenn in einer Raumeinheit eine Kamera verbaut ist, können über diese Bar- / QR-Codes gescannt werden um Dialoge zu initiieren (z.B. um ein Produkt auf eine Einkaufsliste zu setzen oder im Internet den günstigsten Preis für ein Produkt zu suchen etc.)

AI-gestützte Geräuschunterdrückung
Sowohl in den Raumeinheiten für eine bessere Erkennung des Keywords bei Umgebungsgeräuschen wie z.B. Musik, laufender Fernseher etc. als auch im Server für die Verbesserung der Spracherkennung, kann ein Noisecanceling-Plugin aktiviert werden. Derzeit verwende ich hier z.B. RnNoise, dass mittels eines neuralen Netzes nahezu alle Umgebungsgeräusche bis auf die menschliche Sprache filtert.

Ausgabe von Sprachnachrichten
Über eine simple Rest-API können Sprachnachrichten an Räume und / oder User gesendet werden. So ist es z.B. möglich aus einem IPS-Script heraus eine Sprachnachricht auszugeben, wenn ein Bewegungsmelder ausgelöst wird etc. (perfekt wenn man wissen möchte ob die Kids wirklich schlafen :slight_smile: )

Dialog-Plugins
Dialog-Plugins ermöglichen es dem System mit anderen Systemen zu interagieren. Derzeit habe ich mich natürlich auf die Systeme konzentriert, die ich selber nutze. Das Plug-In-Modell erlaubt es aber den Funktionsumfang sehr einfach zu erweitern. Hier eine „grobe“ Beschreibung des aktuellen Funktionsumfangs.

Ip-Symcon

  • Ermöglicht das steuern von diversen Geräten (Homematic, Hue, Denon, Shuttern etc.). Sicherlich nicht alles was ihr so braucht, aber das lässt sich easy erweitern.
  • Ausführen von Skripten
  • Rückmeldung des Kommunikationsstatus in den einzelnen Räumen (ermöglicht z.B. das herunterregeln des Verstärkers, während ein Kommando abgesetzt wird etc.)
  • Rückmeldung des Aufenthaltsortes von Personen (ermöglicht z.B. die Anpassung eines Raumes an den am höchsten Priorisierten Nutzer etc.)
  • Abrufen von Geräte-Stati („Computer, Status Fenster im Schlafzimmer“ etc.)

Waboxapp

  • Ermöglicht das Versenden von Whatsapp-Nachrichten

Microsoft Exchange

  • Ermöglicht den Zugriff auf Exchange-Kalender („Computer, was habe ich übermorgen vor?“ usw.)

Microsoft Xbox Smartglas

  • Ein- und ausschalten von X-Boxen
  • „Nächster Titel“, „Pause“, „Abspielen“ etc. z.B. bei Netflix oder Youtube usw.

Microsoft Graph

  • Hinzufügen von Einträgen auf Microsoft To-Do-Listen (ehemals Wunderlist)
  • Hinzufügen von Notizen zu OneNote

Date & Time

  • Abfragen der aktuellen Uhrzeit etc.

Sonos

  • Starten und stoppen von Sonos-Boxen
  • Laden von Sprecherabhängigen Playlisten

Funktions-Plugins
Neben die Dialog-Plugins, die es dem System ermöglichen mit externen Systemen zu interagieren, gibt es auch noch eine Vielzahl an „Funktions-Plugins“ die die einzelnen Teilschritte ermöglichen (z.B. Ansteuern von Mikro und Lautsprecher, Noisecanceling, Sprache zu Text, Text zu Sprache, Gesichtserkennung, Sprechererkennung etc.). Diese Plugins ermöglichen es dann auch Systeme nach den eigenen Anforderungen (Funktion, Hardware, Sicherheit, Lizenzkosten etc.) zusammenzustellen. Die Beschreibung dieser Plugins ist mir aktuell zu aufwendig, bei entsprechendem Interesse kann ich das aber gerne nachreichen.

Hier ein Video, dass ich kurzfristig auftreiben konnte… ist schon etwas älter. Mittlerweile verwende ich „Hey Computer“ als Keyword und die Hardware steckt in einem eigens konstruierten, 3D-gedrucktem Gehäuse. Aber es gibt schonmal einen kleinen Vorgeschmack. Bei Gelegenheit mache ich mal eine etwas ausführlicheres Video.

//youtu.be/9Oj2PU-wS8U


Reservierung

Reserviert

Hört sich an wie die Verkündigung eines neuen Ei Phone, nur ohne Cloud, wäre der Hammer, ich bin sehr gespannt.
Gruß Helmut

Hallo Helmut,

deine „Einschätzung“ freut mich sehr zu hören.

Ein Betrieb komplett ohne Cloud-Services ist ohne Probleme möglich. Dann verlässt nichts mehr das interne Netz, weder Audio-Daten noch Textkommandos. Allerdings muss man dazu sagen, das gerade bei dem Thema „Sprache zu Text“ die Cloud-Dienste von Microsoft, Amazon & Co. derzeit deutlich die Nase vorn haben. Die Methoden das offline zu machen (z.B. PocketSphinx etc.) sind in der Regel nicht AI-basiert und die Erkennungsraten sind deutlich schlechter. Mit mit der letzten Erweiterung (Noise cancelling und Normalisierung der Audiodaten habe ich es noch nicht getestet, aber das könnte die Erkennungsraten im Offline-Betrieb deutlich verbessern).

Auf der anderen Seite entwickelt sich die ganze AI-Szene extrem schnell und da wird sicherlich auch demnächst etwas kostenloses, AI-basiertes zu haben sein… Dann muss man ggf. den Server mit einer fetten GPU für die Berechnung neuronaler Netze ausstatten - oder Abstriche bei der Flexibilität der Kommandos in Kauf nehmen. Aber das wäre ja machbar.

Bei genügend Interesse werde ich ein Wiki aufsetzen und eine Doku schreiben wie man das System selber aufsetzen kann. Dann könnt ihr alle ein wenig damit spielen [emoji16]

Sent from my SM-F907B using Tapatalk

Noch etwas vergessen… Auch bei der Nutzung von Online-Sprache-Zu-Text-Diensten wird natürlich das Kommando in „die Cloud“ geschickt… Nicht der permanente Mikrophonfeed.

Sent from my SM-F907B using Tapatalk

Auf die Wiki nebst Hardwareerklärung bin ich gespannt, Schlüsselwort öffnet die Richtung zur Cloud wie es bei dem Amazonmädchen ja wohl auch sein soll.

Nur gibt es Leute, die behaupten sie bekommen Werbung über die Dinge worüber sie sich „zu Hause“ unterhalten haben.

Das kommt nicht so gut. Kein Stress, Du wirst uns in der geplanten Wiki den Ablauf erläutern.
Allein, dass ich Computer als Schlüsselwort sagen kann finde ich gut :wink:
Gruß Helmut

Ich finde das super interessant und würde mich gern als Tester melden.

Die die Möglichkeiten von Alexa fand ich in meinen Tests sehr interessant, aber die Daten, die Amazon von mir bekommt, sind ohne Alexa schon grenzwertig zu viel.

Ja das Amazon da nicht ganz sauber spielt denke ich auch… Gibt es eine aufschlussreiche Doku auf YouTube… Glaube Steg+F.

Hier Mal kurz der grobe Ablauf

  1. Keyword wird auf dem Device erkannt
  2. Activity-Indicator (z.B. LED-Ring) wechselt auf „Listen“
  3. Das Device zeichnet so lange auf bis der Voice-Activity-Detector meldet das gesprochen wird
  4. Activity-Indicator wechselt auf „Thinking“ die Aufzeichnung wird an den Server geschickt
  5. Server übergibt die Aufzeichnung an den SpeechRecognizer und parallel an den SpeakerRecognizer
  6. Das Kommando in Textform wird an das LaguageUnderstanding-PlugIn übergeben (extrahiert bekannte Entitäten wie Räume, User, Geräte, Zustände etc.) aus dem Kommando und ermittelt um welches Kommando es sich handelt
  7. Das Kommando mit den extrahieren Entitäten wird an das zuständige Dialog-Plugin übergeben. Dieses Erzeugt entweder eine Text- oder Audioresponse
  8. Wenn es sich um eine Text- Response handelt wird diese an der SpeechSynthesizer übergeben
  9. Die Audioantwort wird an das Gerät übergeben
  10. Activity-Indicator wechselt auf „Speak“
  11. Wenn der Dialog nicht vom Dialog-Plugin beendet wurde geht das Spiel von vorne los

Bei sämtlichen Komponenten handelt es sich um austauschbare Module (und für die meisten Schritte habe ich diverse Implementierungen gebaut, da ich am Anfang die Plattform mehrfach gewechselt habe usw.). Auf diese Weise kann man sich sein System am Ende auf die individuellen Bedürfnisse und Möglichkeiten zuschneiden.

Sent from my SM-F907B using Tapatalk

Um das ganze komplett zu veröffentlichen habe ich noch eine ganze Menge Arbeit vor mir, denn für alle fremden Technologien muss ich erst die Lizenzbestimmungen lesen und diese dann entsprechend erwähnen etc. Daher wird es vermutlich erstmal eine closed Beta geben müssen.

Hierfür wären Leute sinvoll die zwei oder mehr der folgenden Kriterien erfüllen:

  • Ressourcen um ein System aufzusetzen. Die Hardware pro Raumeinheit liegt bei ca. 150€ ohne Kamera und bei 225€ - 300€ je nach verbauten Kamera (ideal sind 4K und WDR mit 360° Fischaugenobjektiv). Es funktioniert aber auch jede normal USB-Webcam.

  • Nötiges KnowHow um das System zu aktualisieren und einzustellen (Linux-Image für den PI und Doku kann ich zur Verfügung stellen)

  • Ideal wäre die Möglichkeit die Raumeinheit möglichst mittig im Raum an der Decke positionieren zu können (wie in dem Video zu sehen), denn für diese Art Installation wurde es ausgegelegt und so kommen vergleichbare Ergebnisse bei den Tests raus.

  • Entsprechend Zeit und Lust sich damit so auseinander zusetzen um wirklich Hilfreichen Input liefern zu können

  • Linux-Kenntnisse um mir beim Finetuning der Performance und der nötigen Absicherung gegen Angriffe etc. zu helfen (bin eigentlich ein Windows-Guy und habe nur minimal Ahnung von Linux)

  • Kenntnisse im Bereich 3D-Druck um das Gehäuse zu optimieren.

  • Kenntnisse im Bereich c# um bei der Weiterentwicklung und Bugfixing zu unterstützen. Ideal wäre jemand der Python oder Matlab code zu dotnet core portieren könnte. Es gibt da noch so ein paar AI-Themen für die es derzeit nur Implementierungen in Python oder Matlab gibt.

  • Kenntnisse im Bereich AI um diverse AI-Themen (Rauschunterdrückung, Sprechererkennung, Spracherkennung, Gesichtserkennung etc.) zu optimieren

  • Kenntnisse im Bereich Webdesign um die Administrationsoberflächen zu überarbeiten bzw. zu Optimieren. Ideal wären hier Kenntnisse im Bereich Blazor und / oder ASP.net core

Wenn du zwei oder mehr dieser Kriterien erfüllst, haben wir unseren ersten offiziellen Betatester [emoji3577]

Wenn nicht muss ich dich noch um ein wenig mehr Geduld bitte. Aber über sinnvolle Ideen / Verbessungsvorschläge würde ich mich natürlich immer sehr freuen.

Sent from my SM-F907B using Tapatalk

Hallo zusammen,

ich habe in den letzten Tagen daran gearbeitet die letzten fehlenden Teile für einen ersten Betatest zu realisieren. Hier fehlten noch diverse Einstellungsmöglichkeiten etc

Derzeit gibt es noch keine echte Benutzerverwaltung, sondern er akzeptiert nur hart codiert meine Mailadresse mit hart codiertem Passwort. Dies muss ich noch vollständig implementieren und anschließend ein kleines Wiki aufsetzen. Dann könnte es losgehen.

Was aber noch fehlt, sind Beta-Tester… wenn ihr Interesse habt, dann schickt mir einfach eine PN.

Ach bevor ich es vergesse… in den letzten Tagen habe ich auch die erste Version des Gehäuses in seiner aktuellsten (und deutlich kompakteren Form) in Betrieb gekommen (wie man an den Bildern erkennen kann bedarf es aber noch ein paar Feinarbeiten beim Druck).

Hallo zusammen,

da wir nun unseren ersten offiziellen Beta-Tester haben, hier mal eine kleine Einkaufsliste für die Hardware der Raumeinheit (ich habe mir jetzt nicht die Mühe gemacht die jeweils besten Preise rauszusuchen sondern nur stumpf bei Amazon gesucht… sollte aber z.B. bei dem Mikro auch deutlich günstiger zu haben sein):

  1. Raspberry Pi 4 (ich verwende aktuell die 4GB-Version, da ich noch nicht weis ob zukünftige Funktionen im Bereich AI ggf. mehr RAM benötigen könnten. Die 2-GB-Version tut es (derzeit) aber auch.
    https://www.amazon.de/Raspberry-Pi-ARM-Cortex-A72-Bluetooth-Micro-HDMI/dp/B07TC2BK1X/ref=sr_1_3?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=2EIA5XMF0EDVR&dchild=1&keywords=raspberry+pi+4&qid=1588075728&sprefix=rasp%2Caps%2C212&sr=8-3

  2. Seed Mic Array V2
    https://www.amazon.de/Studio-respeaker-Mikrofon-V2-0-Mikrofone-xvf-3000-XMOS/dp/B07D29L3Q1/ref=sr_1_1?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&dchild=1&keywords=seeed+respeaker+mic+array&qid=1588075817&sr=8-1

  3. Lautsprecher
    https://www.amazon.de/gp/product/B07GH8KBZQ/ref=ppx_yo_dt_b_asin_title_o02_s00?ie=UTF8&psc=1

  4. Netzteil (für einen ersten Testaufbau funktioniert auch das normale Usb-Netzteil von RPi, aber bitte in jedem Fall ein „echtes“ Netzteil verwenden und kein Ladegerät, da dieses mit den Schwankungen beim Strombedarf des Pi in der Regel nicht so gut zurecht kommt
    https://www.conrad.de/de/p/mean-well-irm-20-5-ac-dc-printnetzteil-5-v-dc-4-a-20-w-1293873.html

  5. PiCam360 (ich habe die WDR und die normale Version ausprobiert. Die WDR-Version ist deutlich besser, allerdings funktioniert für einen ersten Test auch erstmal eine ganz normale usb-webcam.
    https://store.picam360.com/#!/PICAM360-4KHDR/p/144496447/category=0

  6. Stromschienen-Adapter
    https://www.amazon.de/CLE-3-Phasen-Stromschienenadapter-Adapter-wei%C3%9F/dp/B00MUA45XQ/ref=sr_1_8?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=33FWG7B2PQVWM&dchild=1&keywords=eutrac+adapter&qid=1588076651&sprefix=eutrac+%2Caps%2C201&sr=8-8

  7. Stromschienen-Auslass (falls keine Schienen vorhanden sind)
    https://www.amazon.de/Deckenrosette-EUTRAC-Universal-Punktauslass-3-Phasen-Stromschienen/dp/B008OWDJHC/ref=sr_1_4?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&dchild=1&keywords=eutrac+punktauslass&qid=1588076863&sr=8-4

  8. Gelenk, dass ich verwende um etwas mehr Abstand zwischen Adapter und Gehäuse zu bekommen
    https://www.leuchtenbau24.de/de/gelenke/ms-dreh-kippgelenk-verchromt-13x47-m10x1-ig-m8x1-ag-m.profil

  9. Jumperkabel (verwende ich für die interne Verkabelung)
    https://www.amazon.de/gp/product/B01EV70C78/ref=ppx_yo_dt_b_asin_title_o09_s00?ie=UTF8&psc=1

  10. Für das Gehäuse muss ich erst mit dem Kollegen der das druckt klären was er pro Gehäuse haben möchte.

Die Befestigung an der Decke kann natürlich jeder machen wie es für ihn am besten ist (der Punktauslass ist schon recht teuer, da gibt es bestimmt intelligentere / günstigere Methoden).

Schlauer weise habe ich den Zusammenbau nicht dokumentiert. Ein zweites Gehäuse ist gerade im Drucker… wenn ich das aufsetze werde ich den Zusammenbau Schritt für Schritt dokumentieren.

Noch etwas vergessen…

  1. SD-Karte für den Pi (8GB reichen)
    https://www.amazon.de/SanDisk-Ultra-microSDHC-Speicherkarte-Adapter/dp/B073K14CVB/ref=sr_1_4?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&dchild=1&keywords=sd+karte+sandisk+8gb&qid=1588077738&sr=8-4

  2. Und noch ein paar Schrauben (m2 und m3)
    https://www.amazon.de/dp/B081SGZ2C4/ref=sspa_dk_detail_4?psc=1&pd_rd_i=B081SGZ2C4&pd_rd_w=uvDRk&pf_rd_p=d3e24f85-c2f2-4959-bef4-3acc5e4e81dc&pd_rd_wg=RQqWY&pf_rd_r=R9YQEJ6FZZW78S8QQ1WP&pd_rd_r=288bc2ea-3f00-4781-afb8-d1470f8384e4&spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUEzNFRSU1hYV1AzN1NIJmVuY3J5cHRlZElkPUEwNDU5MTY0VDRIQzFIMFdCNkoxJmVuY3J5cHRlZEFkSWQ9QTAzMDUxOTAzTTZHSzQ2TVVZQzdYJndpZGdldE5hbWU9c3BfZGV0YWlsJmFjdGlvbj1jbGlja1JlZGlyZWN0JmRvTm90TG9nQ2xpY2s9dHJ1ZQ==

Hallo zusammen,

als kleine Anregung, was mit dem System alles möglich ist, hier mal ein kleines Update über neue Features die ich in den letzten Tagen hinzugefügt habe:

1. OpenWeatherMap-PlugIn
Ermöglicht das Abrufen eines Wetterreports für heute oder einen gewünschten anderen Tag. Beispiel Kommandos:

  • Wie wird das Wetter?
  • Wie wird das Wetter morgen?
  • Wie wird das Wetter am x.y.?

Auch das Abrufen einzelner Wetterparamter ist möglich…

  • Wird es heute Regenen?
  • Wird es morgen Regnern?
  • Wie warm wird es morgen?


    2. DailyReport
    Dialog-Plugins können nun Nachrichten für eine tägliche Zusammenfassung beisteuern. Aktuell können dies das Exchange-Plugin (Kalendereinträge) und das Wetter-PlugIn. Diese täglichen Zusammenfassungen können dann über Kommandos wie z.B. „Wie wird mein Tag?“ etc. abgerufen werden.

3. Automatischer DailyReport
In Kombination mit der Presenzerkennung über die Kameras kann jetzt konfiguriert werden, dass einmal täglich beim ersten betreten bestimmter Räume die tägliche Zusammenfassung für den erkannten User automatisch ausgegeben wird. So bekommt man jetzt automatisch seinen täglichen Report aus (derzeit) heutigen Terminen und dem heutigen Wetter sobald man morgens die Küche betritt :slight_smile:

Wie immer bin ich für alle Anregungen dankbar und möchte an dieser Stelle nochmal dazu aufrufen sich zu melden, wenn Interesse daran besteht dabei zu helfen als Beta-Tester das ganze zu finalisieren.

Gruß

Calle

Super Projekt. Finde ich Klasse.

Interessant das ganze. Hätte noch nen freien PI 4 und ein bisschen Respeaker Zeug rumliegen. Mit linux kann ich gut. Kontra: meistens hab ich wenig Zeit :wink:

Aber nebenher könnte ich auch ein bisschen testen.

Grüße
Stefan

Hallo Calle,

ich finde das klingt nach einem super Projekt.

Schön wäre es noch, wenn Du in einem Thread etwas mehr zu den eingesetzten Techniken und Programmen sagen könntest.

Auch ich würde mich als Beta Tester melden. Ein PI 4 habe ich, auch noch ein Respeaker Mic Array mit 4 Mikrofonen (würde aber auch das von Dir eingesetzte bestellen). Auch habe ich einen eigenen 3D Drucker zur Verfügung, und könnte ein Gehäuse zum hinstellen konstruieren (das dauert aber etwas).

Allerdings verstehe ich den Einsatzzweck der Kamera nicht, und habe keine Möglichkeit einer Deckenmontage. Ich würde hier also ohne Kamera und mit einem Gehäuse für Standmontage arbeiten. Aber das geht vermutlich einigen so. Wenn man die recht teuren Komponenten für die Deckenmontage weglässt ist der Preis auch gar nicht mehr so hoch.

Gruß
Christian

Super… bin gerade dabei einneues Image zu ziehen und noch ein paar Kleinigkeiten am Server zu erledigen. Danke das ich gegen Ende der Woche eine neue Beta (Cleit + Server + RPI-Image) zur Verfügung stellen kann. Melde mich per PN

Super… bin gerade dabei ein neues Image zu ziehen und noch ein paar Kleinigkeiten am Server zu erledigen. Denke das ich gegen Ende der Woche eine neue Beta (Client + Server + RPI-Image) zur Verfügung stellen kann. Melde mich per PN

Einen neuen Thread zu den Details der eingesetzten Technologien kann ich bei Gelegenheit mal angehen. Bin im Moment beruflich sehr eingespannt aber ich behalte das mal im Hinterkopf. Nur vielleicht schon mal so viel vorab: Die Anwendungen (Client + Server) sind komplett in dotnet core als Blazor-Webanwendung implementiert. Die einzelnen Technologien für Spracherkennung etc. gehen nachher aus den Plug-Ins hervor. Aber gerne werde ich das bei Gelegenheit noch etwas vertiefen.

Noch kurz zur Kamera:
Die Anwendung läuft natürlich problemlos auch ohne Kamera. Der Sinn und Zweck der Kamera ist die Erkennung welcher User sich in welchem Raum aufhält. Das Wissen hierüber ermöglicht sehr interessante Anwendungsmöglichkeit wie z.B:

  • Automatische Ausgabe eines „Daily Reports“ beim ersten Betreten eines Raumes
  • Anzeige für personalisierte Nachrichten (Kalendererinnerungen etc.) nur in den Räumen, in denen sich der User aufhält, für den die Nachricht bestimmt ist (jeder User bekommt eine Farbe zugewiesen und die LEDs werden für die Anzeige genutzt)
  • Ausgabe von Meldungen an User, die dann automatisch in dem Raum ausgegeben werden in dem sicher der User aufhält
  • Kommandos wie „Wo ist [username]?“ etc.