

The Nicla Voice is a compact, low-power microcontroller board developed by Arduino, designed specifically for voice recognition and audio processing applications. It integrates built-in microphones, a speaker interface, and supports advanced audio processing algorithms. This makes it an excellent choice for IoT projects requiring voice interaction, such as smart home devices, voice-controlled assistants, and audio-based monitoring systems.








| Parameter | Specification |
|---|---|
| Microcontroller | nRF52832 (ARM Cortex-M4, 64 MHz) |
| Audio Input | Dual built-in digital microphones |
| Audio Output | Speaker interface (I2S) |
| Connectivity | Bluetooth Low Energy (BLE) |
| Power Supply Voltage | 3.3V - 5V |
| Operating Current | ~10 mA (typical) |
| Flash Memory | 512 KB |
| RAM | 64 KB |
| Dimensions | 22.86 mm x 22.86 mm |
| Operating Temperature Range | -40°C to 85°C |
| Pin | Name | Type | Description |
|---|---|---|---|
| 1 | VIN | Power Input | Main power input (3.3V - 5V) |
| 2 | GND | Ground | Ground connection |
| 3 | SDA | I2C Data | I2C data line for communication |
| 4 | SCL | I2C Clock | I2C clock line for communication |
| 5 | TX | UART TX | UART transmit pin for serial communication |
| 6 | RX | UART RX | UART receive pin for serial communication |
| 7 | GPIO | Digital I/O | General-purpose input/output pin |
| 8 | I2S_SD | I2S Data | I2S serial data line for audio output |
| 9 | I2S_WS | I2S Word Select | I2S word select line for audio output |
| 10 | I2S_SCK | I2S Clock | I2S clock line for audio output |
Below is an example of how to use the Nicla Voice with an Arduino UNO to capture audio data and send it via serial communication:
#include <Wire.h> // Include the I2C library for communication
void setup() {
Serial.begin(9600); // Initialize serial communication at 9600 baud
Wire.begin(); // Initialize I2C communication
// Print a message to indicate setup is complete
Serial.println("Nicla Voice is ready for audio processing.");
}
void loop() {
// Example: Simulate capturing audio data
int audioData = analogRead(A0); // Read audio data from an analog pin
// Send the audio data over serial communication
Serial.print("Audio Data: ");
Serial.println(audioData);
delay(100); // Add a delay to simulate processing time
}
Note: Replace
analogRead(A0)with the appropriate method to capture audio data from the Nicla Voice's microphones.
No Audio Output:
Microphone Not Capturing Audio:
BLE Connectivity Issues:
Board Not Detected in Arduino IDE:
Q: Can the Nicla Voice process audio locally?
A: Yes, the Nicla Voice supports on-board audio processing using its ARM Cortex-M4 microcontroller.
Q: Is the Nicla Voice compatible with other Arduino boards?
A: Yes, it can communicate with other Arduino boards via I2C, UART, or BLE.
Q: What is the maximum range for BLE connectivity?
A: The typical range is 10-15 meters, depending on environmental factors.
Q: Can I use the Nicla Voice for real-time voice recognition?
A: Yes, the board is designed for real-time voice recognition and supports various audio processing algorithms.