The next board that we will look at that has an RP2040 microcontroller is one that I have been looking forward to get, the Nano RP2040 Connect from Arduino.
The Nano as well as the impressive RP2040 microcontroller also has native Bluetooth and WiFi connectivity via a Nina W102 uBlox module. There is also a combined accelerometer and gyroscope, an Omnidirectional Digital Microphone and a Cryptographic Co-processor.
There is 20 Digital IO pins, 8 Analogue, 20 PWM and 20 External Interrupts. UART, SPI and I2C busses provide peripheral connectivity.
The Nano RP2040 Connect also features a built-in RGB LED that you can use in your application. It should be noted that while using the BLE mode on the NINA module, the RGB cannot be used. While the module is in BLE mode, SPI is deactivated, this is used to control the RGBs.
Specs
Board | Name | Arduino® Nano RP2040 Connect |
---|---|---|
USB connector | Micro USB | |
Pins | Built-in LED Pin | 13 |
Digital I/O Pins | 20 | |
Analog input pins | 8 | |
PWM pins | 20 (except A6, A7) | |
External interrupts | 20 (except A6, A7) | |
Connectivity | Wi-Fi | Nina W102 uBlox module |
Bluetooth | Nina W102 uBlox module | |
Secure element | ATECC608A-MAHDA-T Crypto IC | |
Sensors | IMU | LSM6DSOXTR (6-axis) |
Microphone | MP34DT05 | |
Communication | UART | Yes |
I2C | Yes | |
SPI | Yes | |
Power | Circuit operating voltage | 3.3V |
Input voltage (VIN) | 5-21V | |
DC Current per I/O Pin | 4 mA | |
Clock speed | Processor | 133 MHz |
Memory | AT25SF128A-MHB-T | 16MB Flash IC |
Nina W102 uBlox module | 448 KB ROM, 520KB SRAM, 16MB Flash | |
Dimensions | Weight | 6 g |
Width | 18 mm | |
Length | 45 mm |
MP34DT05 microphone
The MP34DT05-A is an ultra-compact, low-power, omnidirectional, digital MEMS microphone built with a capacitive sensing element and an IC interface. The sensing element, capable of detecting acoustic waves, is manufactured using a specialized silicon micromachining process dedicated to producing audio sensors.
The IC interface is manufactured using a CMOS process that allows designing a dedicated circuit able to provide a digital signal externally in PDM format.
The MP34DT05-A is a low-distortion digital microphone with a 64 dB signal-to-noise ratio and –26 dBFS ±3 dB sensitivity.
LSM6DSOXTR
The LSM6DSOX is a system-in-package featuring a 3D digital accelerometer and a 3D digital gyroscope boosting performance at 0.55 mA in high-performance mode and enabling always-on low-power features for an optimal motion experience for the consumer.
The LSM6DSOX supports main OS requirements, offering real, virtual and batch sensors with 9 kbytes for dynamic data batching. ST’s family of MEMS sensor modules leverages the robust and mature manufacturing processes already used for the production of micromachined accelerometers and gyroscopes.
The various sensing elements are manufactured using specialized micromachining processes, while the IC interfaces are developed using CMOS technology that allows the design of a dedicated circuit which is trimmed to better match the characteristics of the sensing element.
The LSM6DSOX has a full-scale acceleration range of ±2/±4/±8/±16 g and an angular rate range of ±125/±250/±500/±1000/±2000 dps.
Nina W102 uBlox module
The NINA-W10 series are stand-alone multi radio MCU modules that integrate a powerful microcontroller (MCU) and a radio for wireless communication.
With the open CPU architecture, customers can develop advanced applications running on the dual core 32-bit MCU.
The radio provides support for Wi-Fi 802.11b/g/n in the 2.4 GHz ISM band and Bluetooth v4.2 (Bluetooth BR/EDR and Bluetooth low energy)communications.
Arduino support
You can add support for the Arduino Nano RP2040 Connect by doing the following
- Open the board manager from Tools > Board – Board Manager.
- Search for rp2040 and install the Arduino Mbed OS Nano Boards package – accept any pop-ups.
- Close the board manager and return to the IDE.
Python
The Arduino IDE does not yet support Python. Instead, we can use OpenMV, a platform that supports programming Arduino boards with MicroPython. Through the OpenMV editor, we can install MicroPython, and upload scripts directly to the board.