Deutsches Wake Word auf ESP32-S3 mit TFLite Micro

August 2026 · ESP-IDF · TFLite Micro · Eigenes Wake Word

Die Open-Source-Komponente verarbeitet 16-kHz-PCM, berechnet Mel-Merkmale und führt ein kleines INT8-TFLite-Modell direkt auf dem ESP32-S3 aus. Während der Erkennung muss kein Mikrofonstream an einen Cloud-Dienst gesendet werden.

Verifizierte Konfiguration: Die vollständige Anwendung wurde auf einem ESP32-S3-HMI-DevKit mit 240 MHz, 8 MB Octal-PSRAM, 16 MB Flash, vier MEMS-Mikrofonen über ES7210, ESP-IDF 6.0.1 und esp-tflite-micro 1.3.5 getestet. Andere Boards benötigen eine Anpassung von Audio-BSP und Speicher.

Gemessene Leistung

Auf diesem Board benötigt die Mel-Berechnung etwa 28,5–33 ms und TFLite Invoke() etwa 154,9–155,7 ms. Alle 160 ms wird das neueste Fenster aus 98 Frames verarbeitet.

Öffentliches Beispiel

Die enthaltene Demo erkennt aktuell das englische Wake Word Hey Robot. Danach ändern Sprachbefehle die Farbe einer LED. TFLite-Modell und head.h gehören zusammen und müssen gemeinsam ersetzt werden.

git clone https://github.com/voicute/onnx-wakeword.git
cd onnx-wakeword/esp32/examples/esp32s3_hmi_devkit
idf.py set-target esp32s3
python patch_led_strip.py
idf.py build
idf.py -p COM6 flash monitor

Eigenes deutsches Wake Word verwenden

Die Trainingspipeline kann ein passendes INT8-TFLite-Modell samt Head für ein deutsches Wort oder eine kurze Phrase exportieren. Bewerte zuerst das Basic-Modell und teste es anschließend erneut mit dem endgültigen Mikrofon, Abstand und Umgebungsgeräusch. Wortabhängige Fehlaktivierungen können zusätzliche spezifische Negativbeispiele erfordern.

Open-Source-Komponente und getestetes Beispiel: onnx-wakeword/esp32.

Offenlegung: Voicute entwickelt die offene ESP32-Inferenzkomponente und einen separaten kommerziellen Dienst zum Trainieren und Exportieren eigener Modelle.
Basic-Wake-Word trainieren und bewerten