Uruchomiłeś prawidłowo PSRAM na swojej płytce prototypowej?
(w zależności od modelu jest tam w wersji quad lub octal, a nawet słówkiem nie wspomniałeś jaki sprzęt masz poza faktem, że jakiś S3), a od obecności wystarczającej ilości pamięci w ogóle zależy prawidłowe działanie firmware (to co ma MCU na pokładzie nie wystarczy na obsługę czegokolwiek związanego z przetwarzaniem głosu, dlatego potrzebujesz zewnętrznego RAMu który wymaga prawidłowej inicjalizacji, oczywiście on jest wlutowany już na moduł, ale rozwiązania są różne i od nich zależy jaki YAML jest OK) https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32s3/esp32-s3-devkitc-1/index.html
Masz jakieś logi z pracy tego firmware? Mikrofon poprawnie podpięty i działa?
Wybrałeś język polski zamiast angielskiego wszędzie, a testy to raczej po angielsku.
Co do całej reszty to poczekaj na kogoś kto tego używa, bo to uwagi głównie odnośnie ogólnego działania ESPHome i równie ogólne co do asystenta głosowego.
RPi4B + Whisper z Piperem to może być baaaardzo złe połączenie (bardzo szybko się zirytujesz prędkością działania i zrezynujesz ze sterowania głosowego). Jedyne co Ci mogę na szybko doradzić do dorobić sobie coś takiego w konfiguracji płytki:
To pomaga “kopnąć w d*pe” asystentowi i powinien zacząć działać. Niestety nikt nie zgłaszał problemów ze zwieszającymi się asystentami na ESP więc taki patent na to wymyśliłem. Aktualnie kończę swojego 4 asystenta też na płtyce S3 ale wykorzystuję inne biblioteki więc nie mogę tego sprawdzić w prost.
Dużo zależy od tego czy chcesz puszczać też muzykę przez tego asystenta czy ma być tylko do sterowania głosowego. Jeśli masz już tą płytkę to szkoda wymieniać ale dotychczas korzystałem z frameworka arduino gdzie nie ma micro wake worda i działa to zadowalająco. Tutaj jest 3 asystent który u mnie pracował pół roku a teraz ma innego właściciela: ESP32- budowa swojego Atom Echo
Przy tej płytce zostań sobie na frameworku esp-idf. Testowałeś co się dzieje z logami przy dodatniu tego switcha o którym pisałem?
Dzięki z porady
W Twoim kodzie jest w switch: name: "Asystent"
(jestem początkujący w yaml i HA )
w mnie w esphome: jest name: asystent-glosowy
Czy mam wprowadzić dokładnie Twój kod, czy w twoim zmienić name na name: asystent-glosowy (tak jak jest w mnie?)
Name taki jak chcesz. Przełączając go zobaczysz co się dzieje z logami. Przy tej płytce i z tym frameworkiem nie mam jeszcze takiego doświadczenia bo dopiero od tygodnia testuje nowego asystenta i nie jestem jeszcze z niego do końca zadowolony
natomiast logi przy włączonym Asystencie (czyli tak jak na zrzucie powyżej takie:
Log Whisper:
[13:59:44] INFO: Successfully send discovery information to Home Assistant.
s6-rc: info: service discovery successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Sent info
DEBUG:wyoming_faster_whisper.handler:Language set to pl
DEBUG:wyoming_faster_whisper.handler:Audio stopped. Transcribing with initial prompt=null
INFO:faster_whisper:Processing audio with duration 00:15.000
DEBUG:faster_whisper:Processing segment at 00:00.000
DEBUG:faster_whisper:Log probability threshold is not met with temperature 0.0 (-1.965979 < -1.000000)
DEBUG:faster_whisper:Compression ratio threshold is not met with temperature 0.2 (11.754386 > 2.400000)
DEBUG:faster_whisper:Compression ratio threshold is not met with temperature 0.4 (17.882353 > 2.400000)
DEBUG:faster_whisper:Log probability threshold is not met with temperature 0.6 (-1.734122 < -1.000000)
Log Piper:
[13:49:02] INFO: Successfully send discovery information to Home Assistant.
s6-rc: info: service discovery successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service piper: starting
s6-rc: info: service piper successfully started
s6-rc: info: service discovery: starting
INFO:__main__:Ready
Log openWakeWord:
[14:03:22] INFO: Successfully sent discovery information to Home Assistant.
s6-rc: info: service discovery successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
DEBUG:wyoming_openwakeword.handler:Client connected: 2842962425326
DEBUG:wyoming_openwakeword.handler:Sent info to client: 2842962425326
DEBUG:wyoming_openwakeword.handler:Client disconnected: 2842962425326
DEBUG:wyoming_openwakeword.handler:Client connected: 2875055529844
DEBUG:wyoming_openwakeword.handler:Sent info to client: 2875055529844
DEBUG:wyoming_openwakeword.handler:Client disconnected: 2875055529844
DEBUG:wyoming_openwakeword.handler:Client connected: 2907136330013
DEBUG:wyoming_openwakeword.handler:Sent info to client: 2907136330013
DEBUG:wyoming_openwakeword.handler:Client disconnected: 2907136330013
DEBUG:wyoming_openwakeword.handler:Client connected: 2939215276741
DEBUG:wyoming_openwakeword.handler:Sent info to client: 2939215276741
DEBUG:wyoming_openwakeword.handler:Client disconnected: 2939215276741
DEBUG:wyoming_openwakeword.handler:Client connected: 2971302583015
DEBUG:wyoming_openwakeword.handler:Sent info to client: 2971302583015
DEBUG:wyoming_openwakeword.handler:Client disconnected: 2971302583015
DEBUG:wyoming_openwakeword.handler:Client connected: 3003386896928
DEBUG:wyoming_openwakeword.handler:Sent info to client: 3003386896928
DEBUG:wyoming_openwakeword.handler:Client disconnected: 3003386896928
DEBUG:wyoming_openwakeword.handler:Client connected: 3035476542263
DEBUG:wyoming_openwakeword.handler:Sent info to client: 3035476542263
DEBUG:wyoming_openwakeword.handler:Client disconnected: 3035476542263
DEBUG:wyoming_openwakeword.handler:Client connected: 3067574634806
DEBUG:wyoming_openwakeword.handler:Sent info to client: 3067574634806
DEBUG:wyoming_openwakeword.handler:Client disconnected: 3067574634806
DEBUG:wyoming_openwakeword.handler:Client connected: 3099672165513
DEBUG:wyoming_openwakeword.handler:Sent info to client: 3099672165513
DEBUG:wyoming_openwakeword.handler:Client disconnected: 3099672165513
DEBUG:wyoming_openwakeword.handler:Client connected: 3131771453846
DEBUG:wyoming_openwakeword.handler:Sent info to client: 3131771453846
DEBUG:wyoming_openwakeword.handler:Client disconnected: 3131771453846
DEBUG:wyoming_openwakeword.handler:Client connected: 3163870640985
DEBUG:wyoming_openwakeword.handler:Sent info to client: 3163870640985
Dalej nie działa wywołanie, działa tylko sterowanie z HA (czyli Asystent, Led strip, mute, On board light) i to w obie stronu (tzn. włączenie przycisku mute w “głośniczku” zmienia stan w HA i powoduje świecenie paska LED (różne w zależności od stanu Mute.
Witam, udało Ci się rozwiązać ten problem bo mam identyczny , wszystko działa oprócz wybudzenia słowem - ja realizowałem trochę inny projekt ale mam ten sam problem
dzięki, udało się wszystko działa , problem był w mikrofonie , ale mam pytanie czy jest jakieś rozwiązanie aby system oparty od wzm. MAX98357A i głośnik 4 Ohm 3W działał głośniej - poniżej link do kodu z którego korzystam: GitHub - KristopherMackowiak/ha_voice_assistant: Home Assistant DYI voice assistant jest to kod Krzyśka Maćkowiaka - ja swój głosnik oparłem tylko o 3W głośnik czy jak dołożę jeszcze jeden wzmacniacz MAX i głośnik 10W np. tak jak Krzysztof to będzie znaczna poprawa, macie jakieś doświadczenia ?
Strefa audio to już trochę osobna kategoria. Wszystko zależy do czego tak na prawdę chcesz tego używać. Jeśli chcesz dobrej jakości dźwięk i głośność to niestety trzeba szukać wśród wzmacniaczy które wymagają minimum 9V np. TPA3110
@mediatiger
Nie wiem jak to delikatnie ująć, bo ludzie się obrażają gdy w swoich marzeniach omijają prawa fizyki i się o tym im mówi… jeśli wzmacniacz jest w stanie dostarczyć maksymalnie 3W do 4omowego głośnika to nic nie zmieni, że podłączysz tam głośnik 4omy 10W - wydzieli się nim maksymalnie i tak 3W (ale 10-watowy prawdopodobnie zagra ciszej, bo spodziewam się po głośniku 10W mniejszej efektywności od tego 3W - chodzi o wartość SPL dla danego modelu głośnika).
Dodatkowo przy mocy zbliżonej do maksymalnej dramatycznie rosną zniekształcenia dźwięku powstające we wzmacniaczu.
Proponuję zatem nabrać nawyku czytania not katalogowych, tam masz czarno na białym co się da uzyskać z układu MAX98357A, oczywiście możesz użyć dwa układy MAX98357A by uzyskać stereo.
W takim partyzanckim połączeniu jak układ na który się powołujesz (mono, dwa wzmacniacze pracujące zgodnie w fazie na 2 głośniki wysokotonowy+niskotonowy) odczuwalna głośność w porównaniu do jednego układu wysterowanego do 3W będzie moim zdaniem w granicach 3.2W-3.4W (przyjmij taką regułę, że 2 głośniki wysterowane mocą po 1W dają wrażenie odsłuchowe zbliżone do jednego wysterowanego mocą 1.4W).
Wzmacniaczy tego typu - klasa D, nie da się połączyć w układ mostka (gdzie w przypadku wzmacniaczy analogowych można by uzyskać do 4x większą moc wyjściową) ponieważ… już pojedynczy wzmacniacz pracuje na wyjściu w układzie mostkowym.
Dla końcówki mocy TPA3110 pomyśl o innym DAC jako źródle sygnału, bo MAX98357A się do tego niespecjalnie nadaje.