Masz MEMS SPM1423 z modulacją PDM?
i podpięty mniej więcej jak na schemaciku, to jest akurat M5Stack PDM Mini Unit, ale Echo z pewnością ma mikrofon podpięty tak samo
Nie rozumiem.
Może o prostu polecę standardowym tekstem - wrzuć YAMLa?
Masz MEMS SPM1423 z modulacją PDM?
i podpięty mniej więcej jak na schemaciku, to jest akurat M5Stack PDM Mini Unit, ale Echo z pewnością ma mikrofon podpięty tak samo
Nie rozumiem.
Może o prostu polecę standardowym tekstem - wrzuć YAMLa?
Mikrofon i yamla masz na samej górze postu. Nic nie zmieniałem tylko płytkę na deckitc v4 + parę linijek kodu które nie dotyczą samego audio i i2s. Przytoczę ci za to odpowiedź na ten problem z innego forum to może bardziej ci rozjaśni problem (bo mi generalnie nic nie mówi )
Do tego dokumentacja: Inter-IC Sound (I2S) - ESP32 - — ESP-IDF Programming Guide latest documentation
Dlatego zamieściłem schemat - wejście SELECT decyduje o tym, czy mikrofon wysyła umowny kanał lewy czy prawy, dlatego to ważne, bo nie wiemy czy odbiornik będzie sobie szukał, ale pewnie nie a nie widzę opcji do konfiguracji tego, więc trzeba ściągnąć do masy. Jeśli jest do zasilania to wtedy mikrofon pracuje na drugim kanale, ten pin nie może być w powietrzu.
Druga kwestia to modulacja PDM, powinieneś mieć w sekcji mikrofonu to, a masz coś innego
adc_type: external
pdm: true
Jak to zadziała to masz ogromne piwo!
pytałem czy masz
ale wygrzebałem z 1 posta
konfiguracja którą wspomniałem jest dla SPM1423, nie wiem jaka ma być dla twojego mikrofonu, prawdopodobnie masz prawidłową, za to możesz pin wyboru kanału przełączyć w przeciwną pozycję…
@szopen nakierowałeś mnie z tym żeby ukierunkować mu kanał i wychodzi na to że zadziałało teraz część kodu odpowiadająca za audio wygląda tak:
- id: i2s_mic
i2s_lrclk_pin: GPIO22 #WS
i2s_bclk_pin: GPIO21 #SCK
- id: i2s_out
i2s_lrclk_pin: GPIO32 #LRCLK
i2s_bclk_pin: GPIO27 #BLCK
microphone:
- platform: i2s_audio
id: mikrofon
adc_type: external
channel: right
bits_per_sample: 32bit
i2s_audio_id: i2s_mic
i2s_din_pin: GPIO4 #DIN,SDIN,SD,SDATA
pdm: false
voice_assistant:
id: va
microphone: mikrofon
use_wake_word: true
noise_suppression_level: 2
auto_gain: 31dBFS
on_listening:
- rtttl.play: 'two_short:d=4,o=5,b=100:16e6,16e6'
media_player:
- platform: i2s_audio
id: player
name: ESP Media Player
dac_type: external
i2s_audio_id: i2s_out
mode: mono
i2s_dout_pin: GPIO2 #DIN,SDIN,SD,SDATA
on_play:
- logger.log: "playing"
- switch.turn_off: use_wake_word
on_pause:
- logger.log: "paused"
- switch.turn_on: use_wake_word
on_idle:
- logger.log: "idle"
- switch.turn_on: use_wake_word
A ja wreszcie mogę kontynuować ciąg dalszy pojektu