The Arduino Nano 33 IoT is a compact microcontroller board based on the ARM Cortex-M4 architecture. It is specifically designed for Internet of Things (IoT) applications, featuring built-in Wi-Fi and Bluetooth connectivity. This board is ideal for creating connected devices, enabling seamless communication with cloud services, mobile devices, and other IoT systems. Its small form factor makes it suitable for projects with space constraints, while its powerful processing capabilities allow for advanced data processing and control.
The Arduino Nano 33 IoT is packed with features that make it versatile and powerful for IoT applications. Below are its key technical details:
The Arduino Nano 33 IoT has a total of 30 pins. Below is the pinout and description:
Pin | Type | Description |
---|---|---|
VIN | Power Input | External power input (5-21V). |
3.3V | Power Output | Regulated 3.3V output. |
GND | Ground | Ground connection. |
A0-A7 | Analog Input | Analog input pins (12-bit ADC). |
D0-D13 | Digital I/O | Digital input/output pins (PWM available on D2-D13). |
TX (D1) | UART TX | Transmit pin for serial communication. |
RX (D0) | UART RX | Receive pin for serial communication. |
SDA | I2C Data | Data line for I2C communication. |
SCL | I2C Clock | Clock line for I2C communication. |
MOSI | SPI Data Out | Master Out Slave In for SPI communication. |
MISO | SPI Data In | Master In Slave Out for SPI communication. |
SCK | SPI Clock | Clock line for SPI communication. |
RST | Reset | Resets the microcontroller. |
AREF | Analog Ref. | Reference voltage for analog inputs. |
LED_BUILTIN | Digital Output | Onboard LED connected to D13. |
The Arduino Nano 33 IoT is easy to use and can be programmed using the Arduino IDE. Below are the steps to get started and some important considerations.
Tools > Board > Boards Manager
.Tools > Board
and select "Arduino Nano 33 IoT".Tools > Port
and select the port to which the board is connected.The following example demonstrates how to connect the Arduino Nano 33 IoT to a Wi-Fi network.
#include <WiFiNINA.h> // Include the WiFiNINA library
// Replace with your network credentials
const char* ssid = "Your_SSID"; // Your Wi-Fi network name
const char* password = "Your_Password"; // Your Wi-Fi network password
void setup() {
Serial.begin(9600); // Start serial communication at 9600 baud
while (!Serial); // Wait for the serial monitor to open
Serial.println("Connecting to Wi-Fi...");
// Attempt to connect to Wi-Fi
if (WiFi.begin(ssid, password) != WL_CONNECTED) {
Serial.println("Failed to connect to Wi-Fi");
while (true); // Halt execution if connection fails
}
Serial.println("Connected to Wi-Fi!");
Serial.print("IP Address: ");
Serial.println(WiFi.localIP()); // Print the device's IP address
}
void loop() {
// Add your main code here
}
The board is not detected by the Arduino IDE:
Wi-Fi connection fails:
Code upload fails:
Can I use the Arduino Nano 33 IoT with 5V sensors? No, the board operates at 3.3V. Use a level shifter to interface with 5V sensors.
How do I update the Wi-FiNINA firmware?
Open the Arduino IDE, go to Tools > WiFi101/WiFiNINA Firmware Updater
, and follow the instructions.
What is the range of the onboard Bluetooth? The Bluetooth range is approximately 10 meters, depending on environmental factors.
By following this documentation, you can effectively use the Arduino Nano 33 IoT for your IoT projects.