M5Gemini
M5Gemini copied to clipboard
Add language options for Deepgram
Add Language Selection for Deepgram Speech Recognition
Summary
Adds configurable language selection for Deepgram Nova-3 speech-to-text with support for English, Dutch, and multilingual detection.
Changes Made
- Settings Configuration: Added new language setting to Deepgram settings group with dropdown options: multi (multilingual), en (English), nl (Dutch)
- WebSocket Integration: Updated Deepgram WebSocket URL construction to use dynamic language parameter instead of hardcoded en-US
- Language Mapping: Implemented proper API parameter mapping:
- en → en-US (English)
- nl → nl (Dutch)
- multi → multi (Nova-3 multilingual support)
- Default Configuration: Set default to multi for automatic language detection
How to check:
- Language selection appears in Settings → Deepgram settings → Language
- Dropdown shows three options as requested
- Settings are saved to NVS and loaded on startup
- WebSocket URL correctly includes selected language parameter
Backwards Compatibility
- Existing installations will default to multi (multilingual)
- No breaking changes to existing API or functionality
Language settings is good improvement, but lets not limit it by only 2 languages. Lets add all basic languages in the list, and allow to enter manually (not from the list) for the rest of them.
Check example here, plz
if (!item.min_val.empty() && !hal->keyboard()->keysState().fn)