Arduino Nano 33 BLE Sense Rev2

Arduino Nano 33 BLE Sense Rev2 — nRF52840 development board

The Arduino Nano 33 BLE Sense Rev2 packs a Nordic nRF52840 ARM Cortex-M4 at 64MHz with BLE 5.0 and seven onboard sensors — a 9-axis IMU, microphone, gesture sensor, barometric pressure, and humidity — into the Nano form factor. It is purpose-built for TinyML and sensor fusion projects where the sensors are the product, not add-ons.

★★★★☆ 4.0/5.0

Best for TinyML and sensor fusion projects with onboard sensors, skip if you need WiFi or external sensor flexibility.

Best for: TinyML gesture recognitionsensor fusion prototypingBLE wearable devices
Not for: WiFi-connected IoT projectsprojects needing custom sensor selection

Where to Buy

Check Price on Amazon (paid link) Check Price on Arduino Store (paid link)

Pros

  • Seven onboard sensors — 9-axis IMU, MEMS microphone, gesture, light, proximity, pressure, and humidity
  • Optimized for TinyML with TensorFlow Lite Micro support via Arduino library
  • BLE 5.0 via nRF52840 — excellent for wearables and wireless sensor projects
  • 1MB flash holds TinyML models without external storage

Cons

  • No WiFi — BLE only for wireless communication
  • 64MHz ARM Cortex-M4 is slower than ESP32-S3 for inference workloads
  • Onboard sensors are fixed — you cannot swap them for different sensors
  • Micro-USB instead of USB-C

The Onboard Sensor Array

The Rev2 includes seven sensors soldered directly to the board: a BMI270 accelerometer/gyroscope and BMM150 magnetometer form a 9-axis IMU for motion tracking. The APDS-9960 provides gesture detection, ambient light sensing, and proximity measurement. An MP34DT06JTR MEMS microphone captures audio. The LPS22HB measures barometric pressure, and the HS3003 measures temperature and humidity.

This sensor density is unique — no other board in this comparison includes any onboard sensors. For TinyML projects where you need training data from multiple sensor types simultaneously, having everything pre-wired and calibrated eliminates weeks of hardware integration work. The BMI270 IMU samples at up to 1600Hz for the accelerometer and 6400Hz for the gyroscope, providing high-resolution motion data suitable for gesture classification, vibration analysis, and activity recognition. The APDS-9960 gesture sensor detects up/down/left/right hand swipes at distances up to 10-20cm, enabling touchless UI control without any camera or computer vision pipeline.

The trade-off for all this integration is inflexibility. If a project needs a different IMU (say, the ICM-42688-P with lower noise), a higher-quality microphone (the ICS-43434 with better SNR), or a CO2 sensor instead of humidity, you cannot swap the onboard sensors. They consume fixed I2C addresses that may conflict with external peripherals. For custom sensor selection, a bare XIAO nRF52840 Sense with external breakout boards provides the same nRF52840 processor and BLE 5.0 in a smaller package with more flexibility.

TinyML and Edge Impulse Workflow

Arduino's TensorFlow Lite Micro library targets the Nano 33 BLE Sense specifically. The 1MB flash stores compressed TFLite models, and the 256KB SRAM holds inference buffers. The 64MHz Cortex-M4 runs simple classification models — gesture recognition, keyword spotting, anomaly detection — at real-time speeds. A typical gesture recognition model with 3-5 classes runs inference in 10-50ms, fast enough for real-time interaction.

The Edge Impulse platform provides the most streamlined TinyML workflow for this board. Connect the Nano 33 BLE Sense via USB, open Edge Impulse Studio in a browser, and start recording sensor data directly from the board. Edge Impulse handles data collection, feature extraction, model training, and deployment as a single pipeline. A complete gesture recognition project — from first data sample to deployed model running on-board — takes 4-6 hours for a beginner. The platform generates an optimized Arduino library that you import into the Arduino IDE and deploy with a single click.

For larger models or image-based ML, the ESP32-S3 with 8MB PSRAM and 240MHz dual-core is significantly more capable. The Nano 33 BLE Sense's advantage is the integrated sensor suite — you can go from unboxing to collecting training data in minutes. The XIAO nRF52840 Sense offers a similar nRF52840 chip with onboard IMU and microphone at a smaller size (21x17.5mm versus 45x18mm), but with only two sensors versus seven, and without the APDS-9960 gesture sensor or environmental sensors that make the Nano 33 BLE Sense particularly versatile for multi-modal ML projects.

BLE Performance and Wearable Projects

The nRF52840 is Nordic Semiconductor's flagship BLE SoC, and it delivers excellent wireless performance. BLE 5.0 provides 2Mbps PHY throughput (versus 1Mbps on BLE 4.2), extended advertising for richer beacon data, and improved coexistence in crowded 2.4GHz environments. Indoor range reaches 30-50m through walls, and outdoor line-of-sight extends to 100m+ with the onboard antenna. The nRF52840's BLE stack is more power-efficient than the ESP32-S3's, drawing 4.6mA in active BLE receive mode versus the ESP32-S3's 18-20mA.

This power efficiency makes the Nano 33 BLE Sense viable for battery-powered wearable projects. A 500mAh LiPo can power the board for 12-24 hours with periodic BLE advertising and sensor reads, compared to 4-8 hours for an equivalent ESP32-S3 setup. Practical wearable projects include a fitness tracker streaming IMU data to a phone app, an environmental monitor logging temperature, humidity, and pressure with BLE sync, and a gesture-controlled presentation remote using the onboard IMU and APDS-9960. The ArduinoBLE library provides a straightforward API for creating BLE services and characteristics, and the board is compatible with standard BLE scanner apps on both iOS and Android for rapid prototyping.

Onboard Sensor Suite for Edge AI

The Nano 33 BLE Sense Rev2 is the only Arduino board — and one of very few microcontroller boards at any price — that ships with a complete multi-modal sensor suite soldered directly to the PCB. Seven sensors spanning motion, audio, environmental, and optical domains make it a self-contained data collection platform for machine learning projects. No breadboard, no wiring, no I2C address conflicts to debug.

The 9-axis IMU combines a BMI270 accelerometer/gyroscope with a BMM150 magnetometer. The BMI270 samples acceleration at up to 1600Hz and angular velocity at up to 6400Hz with 16-bit resolution — this is the same IMU used in commercial fitness trackers and drone flight controllers. The magnetometer adds heading reference for absolute orientation, enabling sensor fusion algorithms (Madgwick or Mahony filters) to compute pitch, roll, and yaw with sub-degree accuracy. For TinyML, this IMU generates the training data for gesture recognition, activity classification, and vibration anomaly detection without any external hardware.

The MP34DT06JTR MEMS microphone captures audio at up to 122.5 dB SPL acoustic overload point with a 64 dB signal-to-noise ratio. While this is not studio-quality audio, it is more than adequate for TinyML keyword spotting — recognizing wake words like "hey Arduino" or classifying environmental sounds (glass breaking, dog barking, machine anomalies). TensorFlow Lite for Microcontrollers includes a pre-trained micro_speech model that runs keyword detection on the Nano 33 BLE Sense with 10-20ms inference latency.

The APDS-9960 handles gesture detection (up/down/left/right swipes at 10-20cm range), ambient light measurement (0-16,000 lux with 16-bit resolution), RGB color sensing, and proximity detection (0-255 relative scale, roughly 0-20cm). The LPS22HB barometric pressure sensor measures 260-1260 hPa with 0.025 hPa resolution — accurate enough to detect floor changes in a building. The HS3003 provides temperature (0-80 C, 0.1 C resolution) and humidity (0-100% RH, 2% accuracy). Combined, these seven sensors make the Nano 33 BLE Sense the only microcontroller board where you can prototype a TinyML application — from data collection through model training to on-device inference — without purchasing a single external component.

Full Specifications

Processor

Specification Value
Architecture ARM Cortex-M4 [1]
CPU Cores 1 [1]
Clock Speed 64 MHz [1]

Memory

Specification Value
Flash 1 MB [1]
SRAM 256 KB [1]

Connectivity

Specification Value
Bluetooth 5.0 [1]

I/O & Interfaces

Specification Value
imu BMI270 + BMM150 (9-axis) [2]
microphone MP34DT06JTR MEMS [2]
gesture_sensor APDS-9960 (gesture, light, proximity) [2]
pressure_sensor LPS22HB [2]
humidity_sensor HS3003 [2]
GPIO Pins 14 [2]
ADC Channels 8 [2]
SPI 1 [2]
I2C 1 [2]
UART 1 [2]
USB Micro-USB (native) [2]

Power

Specification Value
Input Voltage 5 V [1]
operating_voltage 3.3 V [1]

Physical

Specification Value
Dimensions 45 x 18 mm [2]
Form Factor Arduino Nano [2]

Who Should Buy This

Buy Gesture-controlled device prototype

Onboard 9-axis IMU (BMI270 + BMM150) captures motion data. APDS-9960 detects hand gestures. TensorFlow Lite Micro runs classification models on the 64MHz M4. No external sensors to wire.

Buy Keyword spotting / voice trigger

The onboard MP34DT06JTR MEMS microphone captures audio. 1MB flash stores TFLite keyword spotting models. Arduino's TensorFlow Lite library simplifies deployment.

Skip WiFi-connected environmental monitor

No WiFi — BLE only. The ESP32-S3 with external BME280 provides WiFi + BLE + environmental sensing with more memory for web dashboards.

Better alternative: ESP32-S3-DevKitC-1

Ecosystem & Community

Purpose-built for TinyML, this board sits at the intersection of Arduino's beginner-friendly IDE and the machine learning deployment ecosystem. Edge Impulse provides a no-code ML pipeline that deploys directly to this board. Arduino's TensorFlow Lite library has official support. The onboard sensors mean no accessories are needed to start collecting training data.

Primary Framework Arduino IDE 14,566 GitHub stars
Reddit Community r/r/arduino 1,100,000+ members
Community Projects 500+ on Edge Impulse Projects
Accessories Minimal — sensors are built-in compatible add-ons

Compatible Software

What to Build First

TinyML Gesture Recognitionintermediate · 4-6 hours

Train a neural network to recognize hand gestures using the onboard IMU — wave, punch, flex — and trigger BLE actions on a phone. No external sensors or wiring required.

View tutorial →

Must-Have Accessories

No accessories neededincludedAll 7 sensors are built into the board — IMU, microphone, gesture, light, proximity, pressure, and humidity
Check price
USB OTG Adapter (Micro-USB)~$5Connects USB peripherals for data logging projects
Check price
LiPo Battery (3.7V 500mAh)~$8Powers portable TinyML wearable projects with BLE connectivity
Check price

Video Reviews & Tutorials

Tutorials & Resources

Frequently Asked Questions

What sensors are on the Arduino Nano 33 BLE Sense Rev2?

BMI270 + BMM150 (9-axis IMU), MP34DT06JTR (MEMS microphone), APDS-9960 (gesture, light, proximity), LPS22HB (barometric pressure), and HS3003 (temperature + humidity). Seven sensors total.

Can the Nano 33 BLE Sense run TensorFlow Lite?

Yes. Arduino provides an official TensorFlow Lite Micro library optimized for this board. The 1MB flash stores models, and the 64MHz M4 runs inference. Best for small models — gesture recognition, keyword spotting, anomaly detection.

Nano 33 BLE Sense vs ESP32-S3 for ML?

The ESP32-S3 is faster (240MHz vs 64MHz) with more memory (8MB PSRAM vs 256KB SRAM) and supports camera input. The Nano 33 BLE Sense has seven onboard sensors for immediate data collection. Choose based on whether you need integrated sensors or raw compute power.

Does it have WiFi?

No. The nRF52840 provides BLE 5.0 only. For WiFi, choose the Arduino Uno R4 WiFi, Arduino Nano ESP32, or any ESP32 board.

Can I use external sensors with the Nano 33 BLE Sense?

Yes. It has SPI, I2C, and 8 ADC channels for connecting external sensors alongside the onboard ones. The onboard sensors use I2C addresses that you cannot change, so check for conflicts with external I2C devices.

Related Products