

Overview
The Arduino Nano 33 IoT is the easiest and cheapest point of entry to enhance existing devices (and creating new ones) to be part of the IoT and designing pico-network applications. Whether you are looking at building a sensor network connected to your office or home router, or if you want to create a Bluetooth® Low Energy device sending data to a cellphone, the Nano 33 IoT is your one-stop-solution for many of the basic IoT application scenarios.
The board's main processor is a low power Arm® Cortex®-M0 32-bit SAMD21. The WiFi and Bluetooth® connectivity is performed with a module from u-blox, the NINA-W10, a low power chipset operating in the 2.4GHz range. On top of those, secure communication is ensured through the Microchip® ECC608 crypto chip. Besides that, you can find a 6 axis IMU, what makes this board perfect for simple vibration alarm systems, pedometers, relative positioning of robots, etc.
WiFi and Arduino IoT Cloud
At Arduino we have made connecting to a WiFi network as easy as getting an LED to blink. You can get your board to connect to any kind of existing WiFi network, or use it to create your own Arduino Access Point. The specific set of examples we provide for the Nano 33 IoT can be consulted at the WiFiNINA library reference page.
It is also possible to connect your board to different Cloud services, Arduino's own among others. Here some examples on how to get the Arduino boards to connect to:
- Arduino's own IoT Cloud: Arduino's IoT Cloud is a simple and fast way to ensure secure communication for all of your connected Things. Check it out here
- Blynk: a simple project from our community connecting to Blynk to operate your board from a phone with little code
- IFTTT: see an in-depth case of building a smart plug connected to IFTTT
- AWS IoT Core: we made this example on how to connect to Amazon Web Services
- Azure: visit this github repository explaining how to connect a temperature sensor to Azure's Cloud
- Firebase: you want to connect to Google's Firebase, this Arduino library will show you how
Note: while most of the above-shown examples are running on the MKR WiFi 1010, both boards have the same processor and wireless chipset, which means it will be possible to replicate them with the Nano 33 IoT.
Bluetooth® and Bluetooth® Low Energy
The communications chipset on the Nano 33 IoT can be both a Bluetooth® and Bluetooth® Low Energy client and host device. Something pretty unique in the world of microcontroller platforms. If you want to see how easy it is to create a Bluetooth® central or a peripheral device, explore the examples at our ArduinoBLE library.
We Make it Open for you to Hack Along
The Nano 33 IoT is a dual processor device that invites for experimentation. Hacking the WiFiNINA module allows you to, for example, make use of both WiFi and Bluetooth® and Bluetooth® Low Energy at once on the board. Yet another possibility is having a super-lightweight version of linux running on the module, while the main microcontroller controls low level devices like motors, or screens. These experimental techniques, require advanced hacking on your side. They are possible via modifying the module's firmware that you can find at our github repositories.
BEWARE: this kind of hacking breaks the certification of your WiFiNINA module, do it at your own risk.
Related Boards
If you are looking at upgrading from previous Arduino designs, or if you are just interested in boards with similar functionality, at Arduino you can find:
- Arduino MKR WiFi 1010: the Pro version of the Nano 33 IoT, lacks the accelerometer, but includes a battery charger, and the Arduino Eslov connector for external I2C boards. Read more here.
- Arduino Uno WiFi rev2: the education version of the MKR WiFi 1010, with USB-B connector and embedded accelerometer. Read more here.
- MKR WiFi 1000: can only run WiFi applications, as it includes a different chipset than the Nano 33 IoT. Read more about it here.
Arduino IoT Cloud Compatible
Use your MKR board on Arduino's IoT Cloud, a simple and fast way to ensure secure communication for all of your connected Things.
TRY THE ARDUINO IOT CLOUD FOR FREE
Getting Started
The Getting Started section contains all the information you need to configure your board, use the Arduino Software (IDE), and start tinkering with coding and electronics.
Need Help?
Check the Arduino Forum for questions about the Arduino Language, or how to make your own Projects with Arduino. Need any help with your board please get in touch with the official Arduino User Support as explained in our Contact Us page.
Warranty
You can find here your board warranty information.
Tech specs
The Arduino Nano 33 IoT is based on the SAMD21 microcontroller.
Microcontroller | SAMD21 Cortex®-M0+ 32bit low power ARM MCU (datasheet) |
Radio module | u-blox NINA-W102 (datasheet) |
Secure Element | ATECC608A (datasheet) |
Operating Voltage | 3.3V |
Input Voltage (limit) | 21V |
DC Current per I/O Pin | 7 mA |
Clock Speed | 48MHz |
CPU Flash Memory | 256KB |
SRAM | 32KB |
EEPROM | none |
Digital Input / Output Pins | 14 |
PWM Pins | 11 (2, 3, 5, 6, 9, 10, 11, 12, 16 / A2, 17 / A3, 19 / A5) |
UART | 1 |
SPI | D11 (COPI), D12 (CIPO), D13 (SCK). Use any GPIO for Chip Select (CS). |
I2C | A4 (SDA), A5 (SCL) |
Analog Input Pins | 8 (ADC 8/10/12 bit) |
Analog Output Pins | 1 (DAC 10 bit) |
External Interrupts | All digital pins (all analog pins can also be used as interrput pins, but will have duplicated interrupt numbers) |
LED_BUILTIN | 13 |
USB | Native in the SAMD21 Processor |
IMU | LSM6DS3 (datasheet) |
Length | 45 mm |
Width | 18 mm |
Weight | 5 gr (with headers) |
Conformities
Resources for Safety and Products
Manufacturer Information
The production information includes the address and related details of the product manufacturer.
Arduino S.r.l.
Via Andrea Appiani, 25
Monza, MB, IT, 20900
https://www.arduino.cc/
Responsible Person in the EU
An EU-based economic operator who ensures the product's compliance with the required regulations.
Arduino S.r.l.
Via Andrea Appiani, 25
Monza, MB, IT, 20900
Phone: +39 0113157477
Email: support@arduino.cc
Documentation
OSH: Schematics
The Arduino Nano 33 IoT is open-source hardware! You can build your own board using the following files:
EAGLE FILES IN .ZIP SCHEMATICS IN .PDF FRITZING IN .FZPZ DATASHEET IN .PDF
Pinout Diagram
Download the full pinout diagram as PDF here.
Download the Fritzing part here.
Programming and Debugging Port
On the bottom side of the board, under the communication module, debug signals are arranged as 3x2 test pads with 100 mil pitch. Pin 1 is the bottom left one with the USB connector on the left and the test pads on the right. Check the downloadable pinout diagram for the exact configuration.
Availability of the Nina Module Pins
Some of the NINA W102 pins are connected to the 15+15 pins headers/pads and can be directly driven by the module's ESP32; in this case it is necessary that the SAMD21 corresponding pins are aptly tri-stated. Below is a list of such signals:
SAMD21 Pin | SAMD21 Acronym | NINA Pin | NINA Acronym | Header Description |
48 | PB03 | 8 | GPIO21 | A7 |
14 | PA09 | 5 | GPIO32 | A6 |
8 | PB09 | 31 | GPIO33 | A5 / SCL |
7 | PB08 | 35 | GPIO5 / GPIO19 | A4 / SDA |
Learn more
Get Inspired

Rate-of-Rise triggered axial fan blowers to improve warm air circulation in a room with one HVAC inlet vent

The ukulele has a bit of a reputation for being quaint, but it is a legitimate instrument like any other and that means it takes a lot of practice to play competently. Zeroshot is too busy building cool stuff to bother with all of that, so he put his skills to use constructing this robotic ukulele that plays itself. Like a guitarist, a ukulelist can play a note by strumming multiple strings at once or by picking individual strings. More exotic techniques are also possible, but uncommon and outside the scope of this project. The key to Zeroshot’s design is the mechanism that can both pick and strum. It does so by using two actuators: a servo motor to lift and drop the pick, and a stepper to slide the pick back and forth perpendicular to the strings. An Arduino UNO Rev3 board controls those motors through a HiLetgo L293D motor shield, with a TMC2208 driver module for the stepper. The Arduino can lower the pick and strum it across all of the strings, or it can move to a specific string and pluck just that one. But it would be limited to only a handful of songs if it could only play open strings, so Zeroshot also needed to add hardware to hold the strings down on the fretboard. He chose solenoids for that job, held in a 3D-printed mount. With power coming from the motor shield, the Arduino can extend the solenoids to play any required notes. Zeroshot designed the mount to accommodate up to 16 solenoids, for the first four frets across the four strings. When including open strings, that would give the robot up to 20 notes to work with. But a lot of songs only require a handful of solenoids, as Zeroshot demonstrated by performing Celine Dion’s “My Heart Will Go On.”
FAQs
Batteries, Pins and board LEDs
- Batteries: the Nano 33 IoT has no battery connector, nor charger. You can connect any external battery of your liking as long as you respect the voltage limits of the board.
- Vin: This pin can be used to power the board with a DC voltage source. If the power is fed through this pin, the USB power source is disconnected. This pin is an INPUT. Respect the voltage limits to assure the proper functionality of the board.
- 5V: This pin outputs 5V from the board when powered from the USB connector. Note: for it to work, you need to short theor VBUS jumper on the back of the board. If you power the board from the VIN pin, you won’t get any regulated 5V and even if you do the solder bridge.
- 3.3V: This pin outputs 3.3V through the on-board voltage regulator.
- LED ON: This LED is connected to the 5V input from either USB or VIN.
- I2C pins: As opposed to other Arduino Nano boards, pins A4 and A5 have an internal pull up and default to be used as an I2C Bus so usage as analog inputs is not recommended.