Overview

The Arduino Nicla Voice is a purpose-built always-on voice recognition board in the compact 22.86 × 22.86 mm Nicla form factor. It is designed around the Syntiant NDP120 Neural Decision Processor — a dedicated AI inference chip engineered specifically for ultra-low-power audio keyword spotting and sound event detection.

The NDP120 runs voice recognition models and sound classifiers at under 1 mA, allowing the board to listen continuously without draining battery power. The Nordic nRF52832 (ARM Cortex-M4 at 64 MHz) serves as the host MCU for application logic and Bluetooth 5.0 LE communication — but it only wakes up when the NDP120 detects a configured keyword or audio event.

This interrupt-driven architecture makes the Nicla Voice ideal for battery-powered devices requiring always-on voice control without the power budget of a full application processor. It integrates tightly with Edge Impulse for training and deploying custom keyword and sound recognition models directly onto the NDP120.

Quick Overview

Property Value
MCU Nordic nRF52832 (Cortex-M4 @ 64 MHz)
Neural Processor Syntiant NDP120 (dedicated audio AI inference)
Microphones 2 × PDM digital MEMS microphones (stereo)
IMU Bosch BMI270 (6-axis accelerometer + gyroscope)
Wireless Bluetooth 5.0 LE (BLE only — no Wi-Fi)
Battery LiPo connector (on-board)
NDP120 Power Under 1 mA for always-on keyword detection
Dimensions 22.86 × 22.86 mm
SKU ABX00061

Key Features

  • Syntiant NDP120 Neural Decision Processor — dedicated AI chip for audio keyword spotting and sound event detection at under 1 mA
  • Always-on voice detection: NDP120 monitors audio continuously while the nRF52832 sleeps, waking only on keyword match
  • Two PDM digital MEMS microphones in stereo configuration for high-quality audio capture
  • Bosch BMI270 6-axis IMU (accelerometer + gyroscope) for motion-triggered events alongside voice
  • Nordic nRF52832 ARM Cortex-M4 at 64 MHz for application logic and BLE communication
  • Bluetooth 5.0 LE for wireless connectivity
  • LiPo battery connector for standalone untethered deployment
  • Edge Impulse integration for training and deploying custom wake words and sound classifiers
  • Pre-trained models available for common keywords ("yes", "no", "go", "stop")
  • Ultra-compact 22.86 × 22.86 mm square form factor
  • Suitable for wearables, smart home devices, industrial voice commands, and accessibility applications

Technical Specifications

Parameter Value
Host MCU Nordic nRF52832
MCU Architecture ARM Cortex-M4
MCU Clock Speed 64 MHz
MCU Flash 512 KB
MCU SRAM 64 KB
Neural Processor Syntiant NDP120
NDP120 Function Audio keyword spotting, sound event detection, ML inference
NDP120 Power Under 1 mA (always-on voice detection)
Microphones 2 × PDM digital MEMS (stereo)
IMU Bosch BMI270 (3-axis accel + 3-axis gyro, 6-axis total)
Wireless Bluetooth 5.0 LE
Wi-Fi None
Battery Connector LiPo (on-board connector)
Operating Voltage 3.3V
Dimensions 22.86 × 22.86 mm

Pinout

The Nicla Voice exposes I/O via castellated edge pads on the board perimeter, suitable for reflow soldering onto a custom carrier or use with a breakout adapter.

Signal Group Description
I2C I2C bus for external peripherals
SPI SPI bus
UART Serial interface
GPIO 3.3V digital I/O pads
Power Pads 3.3V, GND, VUSB, battery pads
PDM Microphones Internal — both microphones are on-board, not external
NDP120 Internal connection to nRF52832 (SPI-based control interface)
IMU Internal I2C connection to BMI270
BLE Antenna On-board PCB antenna

Power

Power Parameter Value
Operating Voltage 3.3V (all I/O)
Input Voltage (USB) 5V via USB-C (if equipped) or programming interface
Battery LiPo via on-board connector
NDP120 Always-On Power Under 1 mA
nRF52832 Deep Sleep ~2 µA (woken by NDP120 interrupt)
BLE Active Transmission Typical BLE 5.0 peak current (peak ~15 mA during TX)

The sub-milliamp power consumption of the NDP120 in always-on listening mode is the key power characteristic of this board. The nRF52832 can remain in deep sleep (microamp-level) while the NDP120 runs inference continuously. Battery life depends primarily on BLE transmission duty cycle rather than the listening operation itself.

On-Board Components

Component Part Function
Host MCU Nordic nRF52832 Cortex-M4, application logic, BLE radio
Neural Decision Processor Syntiant NDP120 Ultra-low-power audio AI inference engine
Microphone 1 PDM MEMS Primary audio capture (left channel)
Microphone 2 PDM MEMS Secondary audio capture (right channel)
IMU Bosch BMI270 6-axis accelerometer and gyroscope
Battery Connector On-board LiPo connector Battery-powered operation
Status LED RGB LED Programmable indicator

Microcontroller

Host MCU — Nordic nRF52832

Feature Value
Core ARM Cortex-M4 with FPU
Clock Speed 64 MHz
Flash 512 KB
SRAM 64 KB
BLE Integrated Bluetooth 5.0 LE radio
Interfaces SPI, I2C, UART, GPIO

Neural Decision Processor — Syntiant NDP120

The NDP120 from Syntiant is an edge inference chip purpose-built for audio keyword detection and small neural network inference at near-zero power.

Feature Value
Architecture Syntiant Core 2 neural network accelerator
Supported Tasks Keyword spotting, sound event detection, audio classification
Power (always-on) Under 1 mA during continuous inference
Interface to MCU SPI (NDP120 asserts interrupt to nRF52832 on detection)
Model Format Syntiant model format (trainable via Edge Impulse or Syntiant tools)

The NDP120 asserts an interrupt line to the nRF52832 when a keyword or sound event is detected. This wakes the nRF52832 from deep sleep, which then handles the response (BLE notification, GPIO trigger, audio playback, etc.).

Wireless Connectivity

Wireless Feature Value
Technology Bluetooth 5.0 LE
Wi-Fi None
Range Typical BLE range (10–30 m indoors)
Library ArduinoBLE
Use Cases Send voice command results to smartphone or gateway, remote monitoring

Getting Started

Prerequisites

  • Arduino IDE 2.x
  • Install the Arduino Mbed OS Nicla Boards package via Boards Manager
  • Install required Nicla Voice libraries (NDP120 driver, available from Arduino)
  • Edge Impulse account (for custom keyword training)
  • USB-C cable (data-capable)

Board Setup

  1. Open Arduino IDE
  2. Go to Tools > Board > Boards Manager
  3. Search for "Arduino Mbed OS Nicla Boards" and install
  4. Select Tools > Board > Arduino Nicla Voice
  5. Connect via USB-C
  6. Select the correct port

Keyword Detection Example

// Arduino Nicla Voice — Keyword detection with NDP120 // Requires the NDP120 firmware and Nicla Voice library #include "NDP.h" void setup() { Serial.begin(115200); while (!Serial); Serial.println("Arduino Nicla Voice starting..."); // Initialize the NDP120 with a pre-loaded keyword model // The model firmware (.synpkg) must be flashed to NDP120 separately NDP.begin("model.synpkg"); // Register a callback that fires when any keyword is detected NDP.onMatch([](const char* label, float score) { Serial.print("Keyword detected: "); Serial.print(label); Serial.print(" (score: "); Serial.print(score); Serial.println(")"); }); Serial.println("Listening for keywords..."); } void loop() { // NDP120 runs inference continuously // nRF52832 is woken by NDP120 interrupt on keyword detection NDP.poll(); }

BLE Notification on Keyword Detection

// Arduino Nicla Voice — Send BLE notification when keyword detected #include "NDP.h" #include <ArduinoBLE.h> BLEService voiceService("19B10000-E8F2-537E-4F6C-D104768A1214"); BLEStringCharacteristic keywordChar( "19B10001-E8F2-537E-4F6C-D104768A1214", BLERead | BLENotify, 32 ); void setup() { Serial.begin(115200); BLE.begin(); BLE.setLocalName("NiclaVoice"); BLE.setAdvertisedService(voiceService); voiceService.addCharacteristic(keywordChar); BLE.addService(voiceService); BLE.advertise(); NDP.begin("model.synpkg"); NDP.onMatch([](const char* label, float score) { Serial.println(label); keywordChar.writeValue(String(label)); }); } void loop() { BLEDevice central = BLE.central(); NDP.poll(); }

Programming

Environment Details
Arduino IDE C++ with NDP120 library and ArduinoBLE
Edge Impulse Train custom wake-word and sound-classifier models, deploy to NDP120
Syntiant Model Tools Advanced model creation using Syntiant's NDP120 toolchain

Edge Impulse Workflow

  1. Create a project on Edge Impulse and select Arduino Nicla Voice as the target
  2. Record or upload audio samples for each keyword class
  3. Train the model using Edge Impulse's audio classifier pipeline
  4. Export the model as a Syntiant NDP120 firmware package
  5. Flash the model to the NDP120 using the provided upload tool
  6. Run the detection loop in the Arduino sketch

Package Contents

Item Quantity
Arduino Nicla Voice board 1

A USB-C cable and LiPo battery are sold separately.

Applications

  • Always-on wake-word detection ("Hey Arduino", "Hey Google", custom words)
  • Voice-controlled appliances and smart home devices
  • Industrial voice command interfaces (hands-free operation in factories)
  • Accessibility devices (voice-operated assistive technology)
  • Sound event detection (glass break, smoke alarm, machine fault sounds)
  • Battery-powered voice-activated IoT nodes
  • Wearables with voice interaction
  • Edge AI audio classification for quality monitoring

Where to Buy

Equivalent Boards

Board Key Difference
Arduino Nicla Sense ME No voice/audio — full Bosch environmental and motion sensor suite
Arduino Nicla Vision Camera + STM32H747 for vision ML, no dedicated audio neural processor
SparkFun Edge 2 (Apollo3) Different MCU, no dedicated NDP neural processor

Notes

  • All I/O on the Nicla Voice operates at 3.3V logic. Do not connect 5V peripherals to the pads.
  • The NDP120 runs keyword and sound detection at under 1 mA — this is the key power advantage. The nRF52832 deep-sleep current is in the microamp range, making battery life primarily dependent on how often BLE is active.
  • Custom keyword models must be trained and compiled for the NDP120 architecture. Edge Impulse provides the easiest workflow; raw Syntiant toolchain use requires more expertise.
  • The board has no Wi-Fi radio. All wireless communication is BLE 5.0 only.
  • The two PDM microphones are positioned for stereo capture; beamforming or directional audio processing can be implemented in the NDP120 model or post-processed in software.

Community

Revision History

Version Date Notes
v1.0 2026-06 Initial entry