

The NANO is a compact microcontroller board based on the ATmega328P, designed for small-scale projects and prototyping. Its small size, ease of use, and compatibility with the Arduino ecosystem make it a popular choice among hobbyists, students, and professionals. The NANO offers similar functionality to the Arduino UNO but in a smaller form factor, making it ideal for space-constrained applications.








The NANO is equipped with the ATmega328P microcontroller and features the following key specifications:
| Specification | Details |
|---|---|
| Microcontroller | ATmega328P |
| Operating Voltage | 5V |
| Input Voltage (recommended) | 7-12V |
| Input Voltage (limit) | 6-20V |
| Digital I/O Pins | 14 (6 of which provide PWM output) |
| Analog Input Pins | 8 |
| DC Current per I/O Pin | 40 mA |
| Flash Memory | 32 KB (2 KB used by bootloader) |
| SRAM | 2 KB |
| EEPROM | 1 KB |
| Clock Speed | 16 MHz |
| Dimensions | 18 x 45 mm |
The NANO has a total of 30 pins, including power, analog, and digital pins. Below is a detailed description of the pin configuration:
| Pin | Description |
|---|---|
| VIN | Input voltage to the NANO when using an external power source (7-12V recommended). |
| 5V | Regulated 5V output from the onboard voltage regulator. |
| 3.3V | Regulated 3.3V output (maximum current: 50 mA). |
| GND | Ground pins. |
| RESET | Resets the microcontroller when pulled LOW. |
| Pin | Description |
|---|---|
| D0-D13 | Digital I/O pins. Pins D3, D5, D6, D9, D10, and D11 support PWM output. |
| Pin | Description |
|---|---|
| A0-A7 | Analog input pins. Can also be used as digital I/O pins. |
| Pin | Description |
|---|---|
| TX (D1) | Transmit pin for serial communication. |
| RX (D0) | Receive pin for serial communication. |
| A4 | SDA pin for I2C communication. |
| A5 | SCL pin for I2C communication. |
The following example demonstrates how to blink an LED connected to pin D13:
// This code blinks an LED connected to pin D13 on the NANO.
// The LED will turn on for 1 second and off for 1 second.
void setup() {
pinMode(13, OUTPUT); // Set pin D13 as an output pin
}
void loop() {
digitalWrite(13, HIGH); // Turn the LED on
delay(1000); // Wait for 1 second
digitalWrite(13, LOW); // Turn the LED off
delay(1000); // Wait for 1 second
}
The NANO is not recognized by the computer:
Code upload fails:
The NANO is overheating:
Analog readings are unstable:
Q: Can the NANO be powered directly from a 9V battery?
A: Yes, you can connect a 9V battery to the VIN pin. The onboard voltage regulator will step it down to 5V.
Q: How do I reset the NANO?
A: Press the RESET button on the board or pull the RESET pin LOW momentarily.
Q: Can I use the NANO for I2C communication?
A: Yes, the NANO supports I2C communication using the A4 (SDA) and A5 (SCL) pins.
Q: Is the NANO compatible with Arduino shields?
A: The NANO is not directly compatible with standard Arduino shields due to its smaller size, but you can use jumper wires to connect the shield to the NANO.
This concludes the documentation for the NANO microcontroller board.