01 Overview
BBTalkie is a compact ESP32-based walkie-talkie designed for hands-free use.
An embedded neural network performs voice activity detection (VAD) and keyword spotting (KWS); transmission is triggered automatically when speech or a wake word is detected.
It is suitable for outdoor activities, construction coordination, cycling communication, and other scenarios where hands-free operation is needed, and also serves as a reference design for learning embedded AI and voice interaction.
It is not a traditional walkie-talkie; it does not rely on dedicated RF chips but uses ESP32's Wi-Fi or Bluetooth for voice transmission, so range depends on the wireless environment.
The hardware is open source: PCB, firmware, CAD drawings, and development tools are all provided in the repository.
03 Software flow
Firmware is built on ESP-IDF or Arduino, handling audio capture, neural network inference, and wireless transmission.
The neural network model performs VAD and KWS; it is quantized for deployment on ESP32.
Software flow: Configure Wi-Fi or Bluetooth connection, initialize audio peripherals (I2S/ADC/DAC), load the neural network model.
Main loop: Continuously capture audio frames, feed into VAD model to detect speech; if speech is present, feed into KWS model to recognize keywords.
If speech or a keyword is detected, trigger transmission: encode audio data and send wirelessly to the peer device.
Receiving end decodes and plays audio, possibly with echo cancellation or noise reduction.
Low-power mode: Enter sleep when no speech, wake via interrupt or timer to check for voice.
Error handling: Reconnect on wireless disconnection, drop or downsample on audio buffer overflow.