Arduino Nano

Last updated
Arduino Nano
Arduino Logo.svg
Arduino nano.jpg
Arduino Nano with ATmega328P MCU
Developerarduino.cc
ManufacturerMany
Type Single-board microcontroller
Availability Nano webpage
Operating system None
CPU Microchip AVR (8-bit)
at 16 MHz
Memory2 KB SRAM
Storage32 KB Flash
1 KB EEPROM

The Arduino Nano is an open-source breadboard-friendly microcontroller board based on the Microchip ATmega328P microcontroller (MCU) and developed by Arduino.cc and initially released in 2008. It offers the same connectivity and specs of the Arduino Uno board in a smaller form factor. [1]

Contents

The Arduino Nano is equipped with 30 male I/O headers, in a DIP-30-like configuration, which can be programmed using the Arduino Software integrated development environment (IDE), which is common to all Arduino boards and running both online and offline. The board can be powered through a type-B mini-USB cable or from a 9 V battery. [2]

History

In 2008, the Arduino Nano was released.

In 2019, Arduino released the Arduino Nano Every, a pin-equivalent evolution of the Nano. It features a ATmega4809 microcontroller (MCU) with three times the RAM. [3]

Technical specifications

Arduino-nano-pinout.png

Communication

The Arduino Nano has a number of facilities for communicating with a computer, another Arduino, or other microcontrollers. The ATmega328 provides UART TTL serial (5V) communication, which is available on digital pins 0 (RX) and 1 (TX).

An FTDI FT232RL on the board channels this serial communication over USB and the FTDI drivers (included with the Arduino firmware) provide a virtual com port to software on the computer. The Arduino software includes a serial monitor which allows simple textual data to be sent to and from the Arduino board. The RX and TX LEDs on the board flash when data is being transmitted via the FTDI chip and the USB connection to the computer (but not for serial communication on pins 0 and 1). A SoftwareSerial library allows for serial communication on any of the Nano's digital pins. The ATmega328 also supports I2C and SPI communication. The Arduino software includes the Wire library to simplify use of the I2C bus. [4]

Automatic (software) reset

Rather than requiring a physical press of the reset button before an upload, the Arduino Nano is designed in a way that allows it to be reset by software running on a connected computer. One of the hardware flow control lines (DTR) of the FT232RL is connected to the reset line of the ATmega328 via a 100 nanofarad capacitor. When this line is asserted (taken low), the reset line drops long enough to reset the chip. [4]

This setup has other implications. When the Nano is connected to a computer running Mac OS X or Linux, it resets each time a connection is made to it from software (via USB). For the following half-second or so, the bootloader is running on the Nano. While it is programmed to ignore malformed data (i.e. anything besides an upload of new code), it will intercept the first few bytes of data sent to the board after a connection is opened. [4]

Arduino board comparison

The following table compares official Arduino boards, and has a similar layout as a table in the Arduino Uno article. The table is split with dark bars into three high-level microcontroller groups: 8-bit AVR cores, 32-bit ARM Cortex-M cores, and 32-bit ESP32 microcontrollers. Though 3rd-party boards have similar board names it doesn't automatically mean they are 100% identical to official Arduino boards. 3rd-party boards often have a different voltage regulator / different USB-to-UART chip / different color solder mask, and some have a different USB connector or additional features, too.

Board
Name
& Part#
Board
Size
Group
Board
Commun-
ication
MCU
Part#
& Pins
MCU
I/O
Voltage
MCU
Core
MCU
Clock
MCU
Flash
MCU
SRAM
MCU
EEPROM
MCU
USART
& UART
MCU
SPI
MCU
I²C
MCU
Other Bus
Peripherals
MCU Timers
32/24/16/8
/WD/RT/RC
MCU
ADC
& DAC
MCU
Engines
Nano, [6]
A000005 [7]
Nano USB-Mini-B ATmega328P, [8]
32 pin
5V
(1.8-5.5V)
8bit AVR 16 MHz*32 KB2 KB1 KB1, 011None0, 0, 1, 2,
WD
10bit,
None
None
Nano Every, [9]
ABX00028 [10]
Nano USB-Micro-B ATmega4809, [11]
48 pin
5V
(1.8-5.5V)
8bit AVR 20 MHz48 KB6 KB0.25 KB4*, 011None0, 0, 5, 0,
WD, RT
10bit,
None
None
Nano 33 IoT, [12]
ABX00027 [13]
Nano USB-Micro-B,
WiFi,
Bluetooth
ATSAMD21G18, [14]
48 pin
3.3V
(1.62-3.63V)
32bit ARM
Cortex-M0+
48 MHz256 KB32 KBNone6*, 0NoneNone USB-FS,
I²S*
0, 4, 5, 0,
WD, RC,
24bit SysTick
12bit,
10bit
DMA x12,
CRC32,
Touch
Nano RP2040
Connect
, [15]
ABX00052 [16]
Nano USB-Micro-B,
WiFi,
Bluetooth
RP2040, [17]
56 pin
3.3V
(1.62-3.63V)
32bit ARM
Cortex-M0+
(dual core)
133 MHz
both
cores
None
+ bootrom
+ 16 MB (ext)
264 KBNone0, 2*2*2* USB-FS,
8pin Prog I/O
4, 0, 8, 0,
WD, RC,
24bit SysTick
12bit,
None
DMA x2
Nano ESP32, [18]
ABX00092 [19]
Nano USB-C,
WiFi,
Bluetooth
NORA-W106-10B [20]
82 pad Module,
containing
ESP32-S3 IC [21]
3.3V
(3.0-3.6V)
32bit
Xtensa LX7
(dual core)
(FPU)
240 MHz
both
cores
None
+ bootrom
+ 16 MB (ext)
512 KB SRAM
+ 16 KB SRAM
+ 8 MB PSRAM
None
+ 224 byte
OTP eFuse
0, 3*4*2* USB-FS,
CAN-A/B*,
I²S*, SD*
0, 0, 0, 0,
WD, 54bit x4,
52bit System
12bit x2,
None
DMA x10,
Crypto, Touch,
LCD*, Camera*,
WiFi, Bluetooth,
CoProcessor x2
Arduino Nano Every board with ATmega4809 MCU Arduino Nano Every.png
Arduino Nano Every board with ATmega4809 MCU
Arduino Nano 33 IoT board with ATSAMD21G18 MCU Arduino Nano IOT.png
Arduino Nano 33 IoT board with ATSAMD21G18 MCU
Nano RP2040 Connect board with RP2040 MCU 18555 - Arduino Nano RP2040 Connect 4.jpg
Nano RP2040 Connect board with RP2040 MCU
Table notes

See also

Related Research Articles

<span class="mw-page-title-main">AVR microcontrollers</span> Family of microcontrollers

AVR is a family of microcontrollers developed since 1996 by Atmel, acquired by Microchip Technology in 2016. These are modified Harvard architecture 8-bit RISC single-chip microcontrollers. AVR was one of the first microcontroller families to use on-chip flash memory for program storage, as opposed to one-time programmable ROM, EPROM, or EEPROM used by other microcontrollers at the time.

<span class="mw-page-title-main">PIC microcontrollers</span> Line of single-chip microprocessors from Microchip Technology

PIC is a family of microcontrollers made by Microchip Technology, derived from the PIC1650 originally developed by General Instrument's Microelectronics Division. The name PIC initially referred to Peripheral Interface Controller, and is currently expanded as Programmable Intelligent Computer. The first parts of the family were available in 1976; by 2013 the company had shipped more than twelve billion individual parts, used in a wide variety of embedded systems.

<span class="mw-page-title-main">TI MSP430</span>

The MSP430 is a mixed-signal microcontroller family from Texas Instruments, first introduced on 14 February 1992. Built around a 16-bit CPU, the MSP430 was designed for use with low power consumption embedded applications and for low cost.

Atmel ARM-based processors are microcontrollers and microprocessors integrated circuits, by Microchip Technology, that are based on various 32-bit ARM processor cores, with in-house designed peripherals and tool support.

<span class="mw-page-title-main">Arduino</span> Italian open-source hardware and software company

Arduino is an Italian open-source hardware and software company, project, and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Its hardware products are licensed under a CC BY-SA license, while the software is licensed under the GNU Lesser General Public License (LGPL) or the GNU General Public License (GPL), permitting the manufacture of Arduino boards and software distribution by anyone. Arduino boards are available commercially from the official website or through authorized distributors.

<span class="mw-page-title-main">PICkit</span>

PICkit is a family of programmers for PIC microcontrollers made by Microchip Technology. They are used to program and debug microcontrollers, as well as program EEPROM. Some models also feature logic analyzers and serial communications (UART) tools.

Universal EXTension (UEXT) is a connector layout which includes power and three serial buses: Asynchronous, I2C, and SPI separately over 10 pins in a 2x5 layout. The connector layout was specified by Olimex Ltd and declared an open-project that is royalty-free in 2011, and was used in all their boards after 2004.

<span class="mw-page-title-main">Faustino (platform)</span>

Faustino is a physical computing platform geared towards process monitoring and control. The faustino platform consists of a single-board microcontroller with embedded analog and digital I/O support, an input module with LCD, sensors and actuators in form of solid state relays. The development software is based on Eclipse and WinAVR, a variant of GCC for AVR microcontrollers. For visual presentation of measurements, a XML-configured Windows status monitor application is available.

<span class="mw-page-title-main">Bus Pirate</span> Microcontroller programmer and debugger

The Bus Pirate is a universal bus interface device designed for programming, debugging, and analyzing microcontrollers and other ICs. It was developed as an open-source hardware and software project.

debugWIRE is a serial communications protocol, designed by Atmel. It is used for on-chip debugging of AVR microcontrollers.

<span class="mw-page-title-main">STM32</span> ARM Cortex-M based Microcontrollers by STMicroelectronics

STM32 is a family of 32-bit microcontroller integrated circuits by STMicroelectronics. The STM32 chips are grouped into related series that are based around the same 32-bit ARM processor core: Cortex-M0, Cortex-M0+, Cortex-M3, Cortex-M4, Cortex-M7, Cortex-M33. Internally, each microcontroller consists of ARM processor core(s), flash memory, static RAM, debugging interface, and various peripherals.

<span class="mw-page-title-main">NXP LPC</span> Family of 32-bit microcontroller integrated circuits

LPC is a family of 32-bit microcontroller integrated circuits by NXP Semiconductors. The LPC chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals. The earliest LPC series were based on the Intel 8-bit 80C51 core. As of February 2011, NXP had shipped over one billion ARM processor-based chips.

<span class="mw-page-title-main">ATtiny microcontroller comparison chart</span> Subfamily of 8-bit AVR microcontrollers

ATtiny is a subfamily of the popular 8-bit AVR microcontrollers, which typically has fewer features, fewer I/O pins, and less memory than other AVR series chips. The first members of this family were released in 1999 by Atmel.

<span class="mw-page-title-main">ATmega328</span> 8-bit microcontroller

The ATmega328 is a single-chip microcontroller created by Atmel in the megaAVR family. It has a modified Harvard architecture 8-bit RISC processor core.

<span class="mw-page-title-main">Arduino Uno</span> Microcontroller board

The Arduino Uno is an open-source microcontroller board based on the Microchip ATmega328P microcontroller (MCU) and developed by Arduino.cc and initially released in 2010. The microcontroller board is equipped with sets of digital and analog input/output (I/O) pins that may be interfaced to various expansion boards (shields) and other circuits. The board has 14 digital I/O pins, 6 analog I/O pins, and is programmable with the Arduino IDE, via a type B USB cable. It can be powered by a USB cable or a barrel connector that accepts voltages between 7 and 20 volts, such as a rectangular 9-volt battery. It has the same microcontroller as the Arduino Nano board, and the same headers as the Leonardo board. The hardware reference design is distributed under a Creative Commons Attribution Share-Alike 2.5 license and is available on the Arduino website. Layout and production files for some versions of the hardware are also available.

The MSP432 is a mixed-signal microcontroller family from Texas Instruments. It is based on a 32-bit ARM Cortex-M4F CPU, and extends their 16-bit MSP430 line, with a larger address space for code and data, and faster integer and floating point calculation than the MSP430. Like the MSP430, it has a number of built-in peripheral devices, and is designed for low power requirements. In 2021, TI confirmed that the MSP432 has been discontinued and "there will be no new MSP432 products".

<span class="mw-page-title-main">ESP8266</span> System-on-a-chip microcontroller model with Wi-Fi

The ESP8266 is a low-cost Wi-Fi microchip, with built-in TCP/IP networking software, and microcontroller capability, produced by Espressif Systems in Shanghai, China.

<span class="mw-page-title-main">ESP32</span> Low-cost, low-power SoC microcontrollers with Bluetooth and Wi-Fi

ESP32 is a series of low-cost, low-power system on a chip microcontrollers with integrated Wi-Fi and dual-mode Bluetooth. The ESP32 series employs either a Tensilica Xtensa LX6 microprocessor in both dual-core and single-core variations, Xtensa LX7 dual-core microprocessor or a single-core RISC-V microprocessor and includes built-in antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power-management modules. ESP32 is created and developed by Espressif Systems, a Chinese company based in Shanghai, and is manufactured by TSMC using their 40 nm process. It is a successor to the ESP8266 microcontroller.

<span class="mw-page-title-main">RP2040</span> ARM-architecture microcontroller by the Raspberry Pi Foundation

RP2040 is a 32-bit dual ARM Cortex-M0+ microcontroller integrated circuit by Raspberry Pi Ltd. In January 2021, it was released as part of the Raspberry Pi Pico board.

References

  1. "Getting Started with the Arduino Nano". Arduino.
  2. "Arduino Nano". Arduino Official Store. Archived from the original on 2020-12-08. Retrieved 2020-11-25.
  3. "Deep dive with Dario: Get to know the Arduino Nano Every". Arduino Blog. 31 May 2019. Retrieved 2020-11-25.
  4. 1 2 3 4 "Arduino Nano". arduino.cc. Archived from the original on 2020-11-30. Retrieved 2020-11-25.
  5. Aqeel, Adnan (2018-06-25). "Introduction to Arduino Nano". The Engineering Projects. Retrieved 2021-12-08.
  6. "Board; Nano; Docs". Arduino. Archived from the original on May 17, 2023.
  7. "Board; Nano; Store". Arduino.
  8. "MCU; ATmega328P; Docs". Microchip. Archived from the original on March 27, 2023.
  9. "Board; Nano Every; Docs". Arduino. Archived from the original on May 13, 2023.
  10. "Board; Nano Every; Store". Arduino.
  11. "MCU; ATmega4809; Docs". Microchip. Archived from the original on December 6, 2022.
  12. "Board; Nano 33 IoT; Docs". Arduino. Archived from the original on May 9, 2023.
  13. "Board; Nano 33 IoT; Store". Arduino.
  14. "MCU; ATSAMD21G18; Docs". Microchip. Archived from the original on February 1, 2023.
  15. "Board; Nano RP2040 Connect; Docs". Arduino. Archived from the original on May 13, 2023.
  16. "Board; Nano RP2040 Connect; Store". Arduino.
  17. "MCU; RP2040; Docs". Raspberry Pi. Archived from the original on May 13, 2023.
  18. "Board; Nano ESP32; Docs". Arduino. Archived from the original on October 29, 2023.
  19. "Board; Nano ESP32; Store". Arduino.
  20. "MCU; NORA-W10; Docs". U-Blox. Archived from the original on October 29, 2023.
  21. "MCU; ESP32-S3; Docs". Espressif. Archived from the original on October 29, 2023.

Further reading

Programming Cheat Sheets