Esp32-Korvo Le micro qu'il te faut !

Nico Écris par Nico
  8 min de lecture

Cet Article a été vu ... fois

Esp32-Korvo Le micro qu'il te faut !

Home-assistant a annoncé début 2023, l’année de la voix. En embauchant Michael Hansen, pseudo synesthesiam qui n’est autre que le créateur du software Rhasspy, l’entreprise Nabu Casa creuse cette brèche dans le monde du contrôle par la voix qui fait tant de défaut aux assistants actuels.

J’ai durant longtemps testé divers microphone array (respeaker 4-micarray et matrix voice), sous Rhasspy, mais tous deux ont des inconvénients, ils ne fonctionnent pas sans un raspberry supplémentaire qui sert d’hôte aux microphones. J’avais rajouté sur le matrix voice un esp32 pour le faire fonctionner seul, mais l’entreprise a fermé ses portes début 2023 laissant pour mort l’évolution du software. À l’heure ou j’écris cet article personne n’a développé ou repris les softs en cours.

Microphone array esp32-korvo esp-wroover-e avec esphome et home-assistant

Micro array esp32-korvo

Par Espressif

Microphone array esp32-korvo esp-wroover-e avec esphome et home-assistant

c’est bien dommage car les microphones array matrix ( voice et creator ) sont des modules bien pensés.

Bref revenons à nos moutons, nous sommes fin 2023 j’ai voulu faire un tour d’horizon de l’évolution de Home Assistant Assist et pour celà j’ai fait l’acquisition sur Aliexpress d’un microphone fonctionnant avec un esp32, le esp32-korvo version wroover-e

ESP32-korvo wroover-e v1.1

Pour commencer il existe 2 versions du microphone développé par Espressif, l’un fonctionne avec un ESP32-S3-Korvo-1 v5.0 coûte actuellement plus de 50€ et en est à la version 5.0 du hardware, il semblerait que cette version ne soit muni que de 3 microphones array comme pour la version wroover et non de 6. L’évolution se trouve surtout dans la gestion d’une batterie externe.

Cette version est très peu revendu, du moins pour l’instant.

Ensuite tu trouveras facilement la version testé, le ESP32-korvo wroover-e, il ne t’en coutera que 22€ livré.

Que propose le ESP32-korvo wroover-e pour ce prix.

Là je vais t’annoncer une agréable surprise, le ESP32-korvo wroover-e est très complet, tellement complet qu’il ne lui manque qu’un boitier de montage, mais francement pour le prix… Il n’y a que Espressif pour réaliser ce type de promotions.

Le ESP32-korvo wroover-e, est un assemblage de deux cartes, la carte supérieur est composée de 12 Leds du chipset ws2812, ainsi que de boutons analogiques (mode,set,rec,play,vol+/-) et de 3 microphones array. Il te serais même possible d’en rajouter 5 de plus car la carte dispose des emplacements présoudés ( voir la photo ).

composition des 6 microphones: Mic_Bias34

  1. Default: NSM0418DT(NeoMEMS);
  2. Alternative: MSM261D4030H1AP(MEMSensing Microsystems);

2 x Amic 55mm Mic_Bias12

emplacement supplémentaire esp32-korvo microphone array home assistant

PS: Malgré les photos fournis sur le Github, La carte supérieur est identique sur les deux versions disponibles et fabriqués par Espressif.

Que trouve-t-on sur la carte inférieur:

particularité de la carte principale esp32-korvo wroover-e

Là tu te rends compte que pour le prix la carte est très complète:

  • bouton on/off
  • connecteur casque audio
  • connecteur hp externe
  • micro sdcard
  • usb uart
  • usb 5v
  • connecteur pour batterie 5v
esp32-korvo-wroover-b en détail

Intégrer ESP32-korvo wroover-e dans esphome

upload du premier firmware

Grâce au code ci-dessous tu pourras intégrer facilement le microphone ESP32-korvo wroover-e dans esphome et ainsi l’utiliser dans home assistant.

substitutions:

##### WIFI SETUP #####
###### CHANGE ME START ######
  device_name: "esp32korvo_mic" 
  wifi_ssid: !secret wifi_ssid
  wifi_password: !secret wifi_password
  apikey: !secret enc_key_esp32korvo_mic

##### CHANGE ME END #####

##### DO NOT CHANGE ANYTHING! #####

packages:
  ##### download esp32-korvo for esphome code from Github
  remote_package:
    url: https://github.com/haade-administrator/korvo-esphome
    ref: main
    files: [esp32korvo_esphome.yaml]
    refresh: 300s

##### DO NOT CHANGE ANYTHING! #####

afin d’envoyer le code ci-dessus en mode UART il te faudra:

  • connecter 2 cables usb sur les deux ports usb. (l’usb power peut être alimenter par un transfo 5v ou connecté sur un port alimenté de ton pc).
  • le second port usb-uart doit être connecté au pc
  • localiser le bouton boot

Appui sur le bouton boot sans le relacher, ensuite connecte les deux cables usb, et pour terminer relâche le bouton boot

Envoi du firmware esphome sur un esp32-korvo

Paramétrage ESP32-korvo wroover-e et esphome

Afin de paramétrer ton nouveau microphone dans home-assistant je t’invite à cliquer sur ce lien ci-dessous, et normalement une nouvelle instance esphome est découverte, il te suffit de cliquer sur configurer et de redémarrer homeassistant.

Ouvrez votre instance Home Assistant et affichez une intégration.

États des fonctions du ESP32-korvo wroover-e

Voici les fonctions disponibles:

  • contrôles des Led du ESP32-korvo wroover-e
  • états du wakeword
  • états des boutons physiques du ESP32-korvo wroover-e
  • réglage de la détection de fin de parole
  • état du firmware
  • choix du pipeline ( par défaut homeassistant )
  • bouton de redémarrage
  • état du mot de réveil
  • adresse ip
  • status de connection
  • et l’état du signal
fonctions disponibles du microphone esp32-korvo-wroover-b dans esphome

Dans la future mise à jour sera disponible une fonction lumineuse supplémentaire qui te permettra de choisir un réglage lumineux pour le wakeword ( éteins,jour,nuit)

Tu peux dors et déjà tester ces fonctions il te suffit d’intégrer dans le code esphome ref: dev

prochaines fonctions disponibles du microphone esp32-korvo-wroover-b dans esphome

Installation Voice assistant

Pour Installer un assistant Local suis le tuto officiel de home assistant.

Installer un assistant local Home assistant

Dans Home Assistant, les pipelines Assist sont constitués de divers composants qui forment ensemble un assistant vocal.

Pour chaque composant, vous pouvez choisir parmi différentes options. Il existe une option de synthèse vocale et de synthèse vocale qui s’exécute entièrement en local.

L’option de synthèse vocale est Whisper . Il s’agit d’un modèle d’IA open source qui prend en charge plusieurs langues . Nous utilisons une version forkée appelée plus faster-whisper . Sur un Raspberry Pi 4, il faut environ 8 secondes pour traiter les commandes vocales entrantes. Sur un Intel NUC, cela se fait en moins d’une seconde.

Pour la synthèse vocale, nous avons développé Piper . Piper est un système de synthèse vocale neuronale rapide et local qui sonne bien et est optimisé pour le Raspberry Pi 4. Il prend en charge de nombreuses langues . Sur un Raspberry Pi, en utilisant des modèles de qualité moyenne, il peut générer 1,6 seconde de voix en une seconde.

L’installation de whisper, piper et openwakeword sur HA et raspberrypi 4 est contraignante et lourde pour l’instant cela devrait évoluer dans les prochains mois.

Caractéristiques du ESP32-korvo wroover-e

Composant cléDescription
ESP32-WROVER-ECe module ESP32 contient le dernier ESP32-D0WD-V3, une mémoire flash de 16 Mo et une PSRAM de 8 Mo pour un stockage de données flexible, avec une connectivité Wi-Fi/BT et une capacité de traitement des données.
Régulateur de puissanceRégulateur 5V à 3,3V.
Interrupteur d’alimentationOn : La carte est sous tension ; Éteint : La carte est hors tension.
Port de batterieConnectez une batterie.
Port d’alimentation USBAlimentez la carte.
Port USB-UARTUne interface de communication entre un ordinateur et le module ESP32-WROVER-E.
Pont USB-UARTUne seule puce de pont USB-UART offre des taux de transfert allant jusqu’à 3 Mbps.
Bouton de réinitialisationAppuyer sur ce bouton réinitialise le système.
Bouton de démarrageBouton de téléchargement. Maintenir Boot enfoncé puis appuyer sur EN lance le mode de téléchargement du micrologiciel pour télécharger le micrologiciel via le port série.
Carte Micro SDSlot Utile pour développer des applications qui accèdent à la carte MicroSD pour le stockage et la récupération de données.
ADC audioADC audio à quatre canaux hautes performances. Parmi les quatre canaux, trois sont destinés aux microphones et un à la fonction AEC.
Audio PAAmplifiez les signaux audio vers un haut-parleur externe à un maximum de 3 W.
Connecteur de haut-parleurConnectez un haut-parleur externe.
Connecteur pour écouteursConnectez des écouteurs externes.
Connecteur FPCConnectez la carte mère et la sous-carte.
Codec audioLe codec audio ES8311 communique avec ESP32 via le bus I2S, qui convertit les signaux numériques en signaux analogiques.
Microphone analogiqueTrois réseaux de microphones analogiques (espacement = 65 mm).
LED RVB12 LED RVB adressables (WS2812).
Bouton de fonctionSix boutons de fonction, à savoir PLAY, SET, VOL -, VOL +, MODE et REC. Ces boutons de fonction sont définissables par l’utilisateur.
Dimensions90x90x20mm

Les + du produit ESP32-korvo wroover-e

  • la qualité de fabrication
  • le prix ( moins de 22€ )
  • Un design réussi
  • l’expérience Espressif
  • le nombre de fonctions
  • le nombre de connections
  • possibilité de rajouter des microphones supplémentaires

Les - du produit ESP32-korvo wroover-e

  • Absence de boitier à l’achat
  • Seul 3 microphones sur le module
Microphone array esp32-korvo esp-wroover-e avec esphome et home-assistant

Micro array esp32-korvo

Par Espressif

Microphone array esp32-korvo esp-wroover-e avec esphome et home-assistant

Conclusion

Grâce à ce tuto tu pourras contrôler un micro complet ESP32-korvo wroover-e dans Home-assistant avec esphome et tester les commandes à la voix. L’ensemble fonctionne mais n’est pas optimum il faudra attendre quelques semaines pour tester de futurs améliorations.

Vote:
Nico

Nico

Membre fondateur du site Haade, un passionné de domotique avec toutes les astuces qui vont biens.

commentaires