The Arduino Uno

In this article we look at the Arduino Uno, in my opinion still the best board to start with.

This is an easy to use board with an abundance of examples available online and the IDE works with the board out of the box.

There are a wide range of libraries for sensors and modules available, if you want to use these they can save a great day of development time. Of course you don’t have to use them.

As well as that there is a huge range of tutorials, code examples and help online – its about as well documented as it gets.

There are also many shields available which add functionality to this board – an important shield would be one that gives you network or Wifi capabilities as the Arduino Uno does not have this by default.


The ATmega328 has 32 KB (with 0.5 KB occupied by the bootloader). It has 2 KB of SRAM and 1 KB of EEPROM, you can use the EEPROM library to access the EEPROM.

Microcontroller ATmega328P
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limit) 6-20V
Digital I/O Pins 14 (of which 6 are PWM, Pins 3, 5, 6, 9, 10 and 11)
PWM Digital I/O Pins 6
Analog Input Pins 6
DC Current per I/O Pin 20 mA
DC Current for 3.3V Pin 50 mA
I2C 1
Flash Memory 32 KB (ATmega328P)
of which 0.5 KB used by bootloader
SRAM 2 KB (ATmega328P)
EEPROM 1 KB (ATmega328P)
Clock Speed 16 MHz


The Arduino Uno can be powered via the USB connection or with an external power supply. The power source is selected automatically.
External  power can come either from an AC-to-DC adapter or battery.
The board can operate on an external supply of 6 to 20 volts. If supplied with less than 7V, however, the 5V pin may supply less than five volts and the board may become unstable. The recommended range is 7 to 12 volts.

The power pins are as follows:

Vin. The input voltage to the board when it’s using an external power source. You can supply voltage through this pin, or, if supplying voltage via the power jack, access it through this pin.

5V. This pin outputs a regulated 5V from the regulator on the board. The board can be supplied with power either from the DC power jack (7 – 12V), the USB connector (5V), or the VIN pin of the board (7-12V). Supplying voltage via the 5V or 3.3V pins bypasses the on-board regulator, and can damage the board.

3V3. A 3.3 volt supply generated by the on-board regulator. Maximum current draw is 50 mA.

GND. Ground pins.

IOREF. This pin on the board provides the voltage reference with which the microcontroller operates. A properly configured shield can read the IOREF pin voltage and select the appropriate power source or enable voltage translators on the outputs for working with the 5V or 3.3V.


Each of the 14 digital pins on the Mega can be used as an input or output. They are all 5 volt tolerant.  A maximum of 40mA is the value that must not be exceeded to avoid damaging the microcontroller.

The Arduino Uno has 6 analog inputs, each of which provide 10 bits of resolution. By default they measure from ground to 5 volts, though is it possible to change the upper end of their range using the AREF pin.

Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data.

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

PWM: 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output.

SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support SPI communication using the SPI library.

LED: 13. There is a built-in LED driven by digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it’s off.

TWI/I2C: A4 or SDA pin and A5 or SCL pin.

AREF. Reference voltage for the analog inputs.

Reset. Bring this line LOW to reset the microcontroller. Typically used to add a reset button to shields which block the one on the board.

Here is a pinout of the board

arduino uno pinout
arduino uno pinout


The board works out the box with the desktop IDE and the online IDE.

Many examples online


The price varies wildly on these boards – these are all clone options and all affiliate links.

Site Link Price ELEGOO UNO R3 Board ATmega328P with USB Cable(Arduino-Compatible) for Arduino $14.99
Aliexpress UNO R3 Development Board $4.66 ELEGOO UNO R3 Board with USB Cable Compatible with Arduino IDE Projects RoHS Compliant £9.99



The best board to get on your Arduino development journey, you can even get a kit with an arduino and many components and modules for relatively low cost.