Arduino UNO Pinout, Specs, layout, Schematic in Detail(updated)

The Arduino Uno is an open-source microcontroller board that is based on the Microchip ATmega328P (for Arduino UNO R3) or Microchip ATmega4809 (for Arduino UNO WIFI R2) micro-controller by Atmel and was the first USB-powered board developed by Arduino.

Both Atmega328 and ATmega4809 have a built-in bootloader, which makes it very convenient to flash the board with our code. Like all Arduino boards, we can program the software running on the board using a language derived from C and C++. The easiest development environment is the Arduino IDE.

Arduino UNO R3 Front side
Arduino UNO R3 Front side
Arduino UNO R3 Back side
Arduino UNO R3 Backside

Arduino UNO R3 consists of 6 analog inputs, 14 digital input/output pins (of which 6 can be used as PWM outputs), a 16 MHz ceramic crystal resonator, a USB-B port, an ICSP header, Atmega328p and Atmega 16U2 processor, a power jack and, a reset button.


10 New Arduino Projects for 2022


What is the full form of UNO in Arduino UNO?

UNO refers to the number 1 in Latin. Yes, it’s a Latin word and does not have any full form. Since this was the first official Arduino board released by the company, hence the word UNO in it.

What are the Specs of Arduino UNO?

Arduino UNO Specifications
Arduino UNO Specifications

Given below is the brief info about the specs of the latest Arduino UNO Rev3 board like the Microcontroller used, number of digital/analog pins, memory, voltage, and current ratings, etc.

MicrocontrollerATmega328P
Operating Voltage5V
Input Voltage (recommended)7-12V
Input Voltage (limit)6-20V
Digital I/O Pins14 (of which 6 provide PWM output)
PWM Pins6( Pin 3, 5, 6, 9, 10, and 11)
Analog Input Pins6
Communication protocolUART x 1, SPI x 1, I2C x 1
DC Current per I/O Pin20 mA
DC Current for 3.3V Pin50 mA
ICSP Header2
Flash Memory32 KB (ATmega328P)
of which 0.5 KB used by the bootloader
SRAM2 KB (ATmega328P)
EEPROM1 KB (ATmega328P)
Clock Speed16 MHz
LED_BUILTIN13
Power SourcesPower Jack, USB port, Vin pin
Length68.6 mm
Width53.4 mm
Weight25 g
Arduino UNO Specs table

Is Arduino a Microcontroller or Microprocessor?

Arduino UNO is neither a microprocessor nor a microcontroller. It is actually a development board that uses a microcontroller called Atmega328p to perform various functions. You can say, atmega328p is the brain of the Arduino UNO development board.

Microprocessor VS Microcontroller VS Development board

Microprocessor: It is the brain of any embedded system. It performs all the numeric and logic calculations. And is responsible for executing the commands that are given to the system (like Arduino UNO). But it’s important to note that a microprocessor cannot execute commands by itself. It needs external components and devices like RAM, ROM, Registers, I/O, etc, to send or store the data.

Microcontroller: A microcontroller is made up of a Microprocessor and other units required to perform certain functions like Memory units, Inputs/Outputs, ADCs, etc. That’s why a Microcontroller can execute commands by itself. But it’s not easy to program a Microcontroller directly due to the absence of a USB port, GPIO header, etc., and hence it is not recommended to beginners.

Development board: A development board makes it easy to connect the external peripherals to the Microcontroller. It is easy to program and create projects using a development board like the Arduino UNO.

Are you a beginner? Can't decide which book to read? Check out this article on Best Arduino Books for beginners

How many programs can Arduino UNO run?

Arduino UNO is a simple microcontroller board without any operating system or powerful processor. Unlike your laptop or mobile phone, it can run only one program at a time. Of course, you can add multiple tasks in a single program but they will be executed one by one.

Arduino UNO Board Layout

Arduino UNO Board Layout(Updated))
Arduino UNO Board Layout(Updated)

Atmega328P Microcontroller– The ATmega328p is a single-chip, high-performance, efficient microcontroller created by Atmel in the megaAVR family. It is an 8-bit AVR RISC-based microcontroller chip. It consists of 32 KB ISP flash memory with read-while-write capabilities, 2 KB SRAM(Static RAM), 1 KB of EEPROM23 general-purpose I/O pins.

Atmega 16U2 Microcontroller– The Atmega 16U2 is used as a USB to serial converter in Arduino UNO.

Voltage Regulator-The voltage regulator converts the input voltage to 5V. The primary use of a voltage regulator is to control the voltage level in the Arduino board. Even if there are any fluctuations in the input supply voltage of the regulator, the output voltage remains constant and near 5 volts.

Regulator, Oscillator and Reset Button
Regulator, Oscillator, and Reset Button

Crystal Oscillator The Crystal oscillator has a frequency of 16MHz, which provides the clock signal to the microcontroller. It provides the basic timing and control to the board.

RESET ButtonIt is used to reset the board. It’s recommended to press this button every time we flash the code to the board.

Barrel Jack – The Barrel jack or DC Power Jack is used to power the Arduino board using an external power supply. The barrel jack is usually connected to an adapter. The board can be powered by an adapter that ranges between 5-20 volts but the manufacturer recommends keeping it between 7-12 volts.

Barrel jack, USB port and Vin Pin
Barrel jack, USB port, and Vin Pin

Note:  Above 12 volts, the board may overheat and below 7 volts, the voltage might not be sufficient to power the board.

USB B-portThe USB Interface is used to plug in the USB cable. This port can be used to power the device from the 5V supply. It allows us to connect the board to the computer. The program is uploaded to the board serially from the computer through the USB cable.

ICSP header– It stands for In-Circuit Serial Programming. We can use these pins to program the Arduino board’s firmware. The firmware changes with the new functionalities are sent to the microcontroller with the help of the ICSP header.

The ICSP header consists of 6 pins.

Arduino UNO Pinout /Pin diagram(Updated):

How many pins are there in Arduino UNO?

If you take a look at the Arduino board you will find that there are a total of 32 pins on it(excluding the ICSP header). Out of these 32 pins, 14 are digital I/O pins, 6 are analog pins, 3 GND and single 5V,3.3V, Vin and reset pin, and more.

New Arduino UNO R3 Pinout

The picture given below is the pin diagram of Arduino UNO:

Arduino UNO pinout
Arduino UNO pinout

Official Arduino UNO Rev3 Pinout:

Given below is the official pin diagram of Arduino UNO Rev3 by Arduino.cc

Arduino UNO R3 Pin diagram
Arduino UNO R3 Pin diagram

I2C Pins on Arduino UNO pin diagram:

I2C Pins on Arduino UNO
I2C Pins on Arduino UNO
I2C Pins on Arduino UNO
I2C Pins on Arduino UNO

I2C is the two-wire serial communication protocol. It stands for Inter-Integrated Circuits. The I2C uses two lines to send and receive data: a serial clock pin uses (SCL) and a serial data (SDA) (SDA) pin.

  • SCL-It stands for Serial Clock. It is the pin or line that transfers the clock data. It is used to synchronize the shift of data between the two devices (master and slave). The Serial Clock is generated by the master device.
  • SDA-It stands for Serial Data. It is defined as the line used by the slave and master to send and receive the data. That’s why it is called the data line, while SCL is called a clock line.

SPI Pins on Arduino UNO pin diagram:

SPI Pins on Arduino UNO
SPI Pins on Arduino UNO

SPI stands for Serial Peripheral Interface. It is used by microcontrollers to communicate with one or more peripheral devices quickly.

  • SCK-It stands for Serial Clock. These are the clock pulses, that is used to synchronize the transfer of data.
  • MISO-It stands for Master Input/ Slave Output. This data line in the MISO pin is used to receive the data from the Slave.
  • MOSI-It stands for Master Output/ Slave Input. This line is used for sending data to the peripherals.
  • SS-It stands for Slave Select. This line is used by the master. It acts as the enable line. When a device’s Slave Select pin value is LOW, it can communicate with the master. When it’s value HIGH, it ignores the master. This allows us to have multiple SPI peripheral devices sharing the same MISO, MOSI, and CLK lines.

External Interrupts (2 and 3)- These pins can be used to trigger an interrupt on a low value, a rising or falling edge, or a change in value.

TXD and RXD-TXD and RXD pins are used for serial communication. The TXD is used to transmit the data, and RXD is used to receive the data. It also represents the successful flow of data.

ICSP pins:

ICSP pins on Arduino UNO
ICSP pins on Arduino UNO

It stands for In-Circuit Serial Programming. We can use these pins to program the Arduino board’s firmware. The firmware changes with the new functionalities are sent to the microcontroller with the help of the ICSP header.

The ICSP header consists of 6 pins.

ICSP Header
ICSP Header

Arduino Uno Pinout – Analog Pins:

Analog Pins on Arduino UNO
Analog Pins on Arduino UNO

The Arduino Uno consists of 6 analog pins, which use ADC (Analog to Digital converter). These pins can serve as analog inputs but can also function as digital inputs or digital outputs. These pins accept inputs in the form of Analog signals and return values that range between 0 and 1023 (because the Arduino Uno has a 10-bit Analog to Digital converter or 210 resolution).

An Analog to digital converter works in three stages: sampling, quantization, and digitization. Because the Arduino operates on a 0–5 volts range, the step size of the device is 5/1023=0.00488volts or 4.88mV.

Thus, we can interpret a 4.88 mV input voltage to any of the analog pins as 1, 9.77 mV as 2, and so on until 5 V as 1023. Anything below 4.88 mV is considered 0 and above 4.99 V as 1023.

Digital Pins:

Digital Pins on Arduino UNO
Digital Pins on Arduino UNO

On the Arduino UNO board, pins 0-13 are digital input/output pins.

The Arduino digital pins can read only two states: when there is a voltage signal and when there is no signal. This kind of input is usually called digital (or binary) and these states are referred to as HIGH and LOW or 1 and 0.

LED (13): On the board, there is a built-in LED connected to digital pin 13. When this pin is HIGH or 1, the LED is switched on, when the pin is LOW or 0, it’s switched off. 

PWM pins:

PWM pins of Arduino UNO
PWM pins of Arduino UNO

If you look closely, you will find the ‘~’ symbol on digital pin 3,5,6,9,10, and 11. These pins have an additional feature called PWM. Hence these pins are called PWM pins.

PWM stands for “Pulse Width Modulation”. It means, that an analog value is being modulated on a digital signal. Suppose you want a DC motor to run at a certain analog voltage between 0 and 5 V. This is not possible because the Arduino board is MOSFET-based.

PWM Waveform
PWM Waveform with a Duty cycle

Thus, to attain the desired output, we can only simulate an analog signal by switching our output on and off very quickly. Thus, PWM can only mimic and simulate the effects of a pure analog signal, it can never perform pure digital to analog conversion (which generally requires some active components like capacitors and inductors).

Other pins on Arduino UNO:

Other pins
Other pins

GND (Ground pins): There are 5 ground pins available on the board.

RESET – Use to reset the Arduino Board. If this pin is supplied with 5 V, the board will reset automatically

I/O Reference Voltage (IOREF) – This pin is the input/output reference. It provides the voltage reference at which the microcontroller is currently operating. Sending a signal to this pin does nothing.

3.3V and 5V: These pins provide regulated 5v and 3.3v respectively to the external components connected to the board.

VinIt is the modulated DC supply voltage, which is used to regulate the ICs used in the connection. It is also called the primary voltage for ICs present on the Arduino board. The Vcc voltage value can be negative or positive to the GND pin.

Where to Buy Arduino UNO?

You can get the original Arduino UNO board from different stores. But if you want to get it from Amazon, we recommend you the following sellers:

Original Arduino UNO buy

Original Arduino UNO

Price: $27.00


Clone Arduino UNO buy

Arduino UNO clone

Price: $17.00

Schematic of Arduino UNO Rev3(latest):

To download the updated Schematic version of the latest Arduino UNO Rev3, click here.

Arduino UNO REV3 Schematic
Arduino UNO REV3 Schematic

Dimensions of Arduino UNO:

Dimensions of Arduino UNO
Dimensions of Arduino UNO
Mechanical Diagram of Arduino UNO
Mechanical Diagram of Arduino UNO

Datasheet of Arduino UNO Rev3

Download the official Datasheet of Arduino UNO Rev3, from here.

Learn More about Arduino here:

|Arduino Projects for Beginners

|Arduino Programming for beginners

Leave a Comment