Learn / Pinouts / Arduino

Arduino Uno Rev3 pinout

Explore the socketed ATmega328P Arduino Uno Rev3 pinout, with digital, analogue, PWM, UART, SPI, I2C and power connections explained.

ArduinoDevelopment boardATmega328PRev3, socketed ATmega328P5 V logic32 connections20 usable GPIO
Arduino Uno Rev3 board artworkKobee

Qualified electrical ratings

recommended operating5 V voltageboard logic rail; not an input tolerance statement

Fast answers

Which GPIO should I use?

Start with what you are connecting. Click any GPIO to locate it in the interactive diagram and inspect the full reason.

Interactive shortlist
!!!
Pin colour keyKobee
RecommendedUse with care
Recommendation and GPIOs
Easy choice

Input-capable GPIOs with no board-specific warning declared in this reference.

Works with care

These inputs have a boot, programming, attached-hardware or other board-specific condition. Open a pin to see the exact reason.

Reference by function

See only the pins relevant to your circuit.

Each view removes the unrelated labels, then keeps the exact channel, bus role, and assignment status beside the physical board position.

01 · GPIO

GPIO pins: safe, conditional and avoid

Green pins are the easiest general-purpose choices. Amber pins have a device or board caveat. Red pins are reserved by the board or module.

Pin colour keyKobee
GPIOADCI2CSPIUARTPWM
02 · ADC

ADC analogue inputs

Only analogue-capable connections are shown, with the exact converter and channel role declared by the source data.

Pin colour keyKobee
GPIOADCI2CSPIUARTPWM
03 · I2C

I²C data and clock

Default data and clock roles are labelled separately from routes that software can remap.

Pin colour keyKobee
GPIOADCI2CSPIUARTPWM
04 · SPI

SPI buses

Usable SPI routes are shown with their controller and signal roles. Pins marked avoid are excluded from this view.

A remappable peripheral still has electrical and boot restrictions. Remapping does not make a reserved pin safe.

Pin colour keyKobee
GPIOADCI2CSPIUARTPWM
05 · UART

UART serial ports

Transmit and receive pins are grouped by UART controller, with default and fixed assignments shown explicitly.

Pin colour keyKobee
GPIOADCI2CSPIUARTPWM
06 · PWM

PWM outputs

PWM can be routed to output-capable GPIOs. Input-only pins are not included because they cannot drive a PWM waveform.

Pin colour keyKobee
GPIOADCI2CSPIUARTPWM

The classic Uno layout

This reference covers the Arduino Uno Rev3 with the socketed, dual-inline ATmega328P. Its familiar shield headers expose fourteen numbered digital pins and six analogue inputs, plus power, reset and reference connections.

Shared functions matter

Pins D0 and D1 form the hardware serial port used by the USB interface, so connected hardware can interfere with uploads and the Serial Monitor. D10–D13 carry SPI, while A4 and A5 carry I2C as SDA and SCL. The extra SDA and SCL header positions are duplicates of A4 and A5, not an additional bus.

PWM and analogue input

The ~ marking identifies the six pins supported by Arduino's analogWrite() convention: D3, D5, D6, D9, D10 and D11. A0–A5 are the primary analogue inputs and can also be addressed as digital GPIO when analogue conversion is not needed.

Power safely

The board's digital logic is 5 V. The VIN and USB limits are board power specifications, not GPIO signal limits. Always distinguish a recommended operating condition from an absolute maximum before connecting external circuits.

Quick explanations

ATmega328P pinout FAQ

Which ATmega328P GPIO pins are the easiest to use?

Start with the pins marked recommended: D2, D3, D4, D5, D6, D7, D8, D9, D10, D11, D12, A0, A1, A2, A3, A4, A5. They are declared as general-purpose GPIO without a board-specific boot, programming, or reserved-function warning in this reference. Always check the exact function you need before wiring.

Which pins can I use for a push button?

Use a recommended, input-capable GPIO. Check whether the selected pin provides an internal pull resistor or requires an external resistor.

Which ATmega328P pins can read an analogue signal?

The analogue-capable pins in this reference are A0, A1, A2, A3, A4, A5. Open the ADC view to see each channel and any board-specific constraints.

Searchable without JavaScript

Complete pin table

Every physical connection and declared alternate function is included here for accessibility, printing and search discovery.

PhysicalPinInput / outputGeneral suitabilityFunctionsImportant notes
JDIGITAL.1D0RX, PD0Input + Outputconditional
  • GPIO · fixed
  • UART · RX · fixed
  • Shared with the on-board USB-to-serial interface
  • Connected hardware can interfere with uploads and Serial Monitor traffic.
JDIGITAL.2D1TX, PD1Input + Outputconditional
  • GPIO · fixed
  • UART · TX · fixed
  • Shared with the on-board USB-to-serial interface
  • Connected hardware can interfere with uploads and Serial Monitor traffic.
JDIGITAL.3D2INT0, PD2Input + Outputrecommended
  • GPIO · fixed
  • Interrupt · INT0 · 0 · fixed
    JDIGITAL.4D3PWM, INT1, PD3Input + Outputrecommended
    • GPIO · fixed
    • PWM · OC2B · fixed
    • Interrupt · INT1 · 1 · fixed
      JDIGITAL.5D4PD4Input + Outputrecommended
      • GPIO · fixed
      • Interrupt · pin-change interrupt · fixed
        JDIGITAL.6D5PWM, PD5Input + Outputrecommended
        • GPIO · fixed
        • PWM · OC0B · fixed
        • Interrupt · pin-change interrupt · fixed
          JDIGITAL.7D6PWM, PD6Input + Outputrecommended
          • GPIO · fixed
          • PWM · OC0A · fixed
          • Interrupt · pin-change interrupt · fixed
            JDIGITAL.8D7PD7Input + Outputrecommended
            • GPIO · fixed
            • Interrupt · pin-change interrupt · fixed
              JDIGITAL.9D8PB0Input + Outputrecommended
              • GPIO · fixed
              • Interrupt · pin-change interrupt · fixed
                JDIGITAL.10D9PWM, PB1Input + Outputrecommended
                • GPIO · fixed
                • PWM · OC1A · fixed
                • Interrupt · pin-change interrupt · fixed
                  JDIGITAL.11D10PWM, SS, PB2Input + Outputrecommended
                  • GPIO · fixed
                  • PWM · OC1B · fixed
                  • SPI · SS · fixed
                  • Interrupt · pin-change interrupt · fixed
                    JDIGITAL.12D11PWM, MOSI, PB3Input + Outputrecommended
                    • GPIO · fixed
                    • PWM · OC2A · fixed
                    • SPI · MOSI · fixed
                    • Interrupt · pin-change interrupt · fixed
                      JDIGITAL.13D12MISO, PB4Input + Outputrecommended
                      • GPIO · fixed
                      • SPI · MISO · fixed
                      • Interrupt · pin-change interrupt · fixed
                        JDIGITAL.14D13SCK, LED_BUILTIN, PB5Input + Outputconditional
                        • GPIO · fixed
                        • SPI · SCK · fixed
                        • Interrupt · pin-change interrupt · fixed
                        • Connected to the on-board indicator LED
                        JDIGITAL.15GNDunavailable
                        • Ground · fixed
                          JDIGITAL.16AREFInputunavailable
                          • Power · ADC reference input · fixed
                            JDIGITAL.17SDAA4 duplicateInput + Outputconditional
                            • I2C · SDA · fixed
                            • Electrically the same signal as A4
                            JDIGITAL.18SCLA5 duplicateInput + Outputconditional
                            • I2C · SCL · fixed
                            • Electrically the same signal as A5
                            JANALOG.1NCunavailable
                              • Not connected.
                              JANALOG.2IOREFOutputunavailable
                              • Power · logic reference output · fixed
                              • Connected to 5 V on Uno Rev3
                              JANALOG.3RESETInputunavailable
                              • Reset · active-low reset · fixed
                                JANALOG.43V3Outputunavailable
                                • Power · 3.3 V regulated output · fixed
                                  JANALOG.55VInput + Outputunavailable
                                  • Power · 5 V rail · fixed
                                    JANALOG.6GNDunavailable
                                    • Ground · fixed
                                      JANALOG.7GNDunavailable
                                      • Ground · fixed
                                        JANALOG.8VINInputunavailable
                                        • Power · unregulated board input · fixed
                                        • absolute maximum: 20 V input — VIN board input only
                                        JANALOG.9A0D14, PC0Input + Outputrecommended
                                        • GPIO · fixed
                                        • ADC · ADC0 · 0 · fixed
                                        • Interrupt · pin-change interrupt · fixed
                                          JANALOG.10A1D15, PC1Input + Outputrecommended
                                          • GPIO · fixed
                                          • ADC · ADC1 · 1 · fixed
                                          • Interrupt · pin-change interrupt · fixed
                                            JANALOG.11A2D16, PC2Input + Outputrecommended
                                            • GPIO · fixed
                                            • ADC · ADC2 · 2 · fixed
                                            • Interrupt · pin-change interrupt · fixed
                                              JANALOG.12A3D17, PC3Input + Outputrecommended
                                              • GPIO · fixed
                                              • ADC · ADC3 · 3 · fixed
                                              • Interrupt · pin-change interrupt · fixed
                                                JANALOG.13A4SDA, D18, PC4Input + Outputrecommended
                                                • GPIO · fixed
                                                • ADC · ADC4 · 4 · fixed
                                                • I2C · SDA · fixed
                                                • Interrupt · pin-change interrupt · fixed
                                                  JANALOG.14A5SCL, D19, PC5Input + Outputrecommended
                                                  • GPIO · fixed
                                                  • ADC · ADC5 · 5 · fixed
                                                  • I2C · SCL · fixed
                                                  • Interrupt · pin-change interrupt · fixed