In Support of the Older AVR Arduino Boards

The Arduino website lists 27 different board models, with 5 currently marked as “sold out”. We will assume for these articles that the ones that are sold out will return. Of the 27, three use the very old, but not quite original for Arduino, ATmega328P microcontroller.. Two of these are the still popular, and widely available as low cost “clones”, the Arduino Uno R3 and Arduino Nano.

Reasons not to use these include:

  • Low capability (minimal memory and slow clock speed)
  • Higher prices for Arduino branded boards than newer technology replacements

Now doing a project design, these reasons alone would be sufficient to rule out using any board with an ATmega328P. However this is not the case for the hobbyist. Consider:

  • Vast numbers of example projects that use these boards.
  • Large number of 5 volt peripherals (3.3 volt peripherals are less prevalent and most other Arduino board models use 3.3 volt microcontrollers).
  • Most hobbyist projects are simple enough that the capability is sufficient.
  • The Arduino software library (the Arduino “Framework”) was built around  a predecessor to this microcontroller. It underutilizes the capabilities of the microcontrollers that came later.
  • Clones of these boards are very inexpensive. Clones of more recent boards are harder or impossible to find.

ATmega328P Boards

In the  photo below of two clones, the Uno clone is on the top. It has the advantage of convenient headers to connect jumper wires, a socketed microcontroller which can be easily replace if accidentally destroyed, and compatibility with the largest number of Arduino projects. There is a functionally identical version of this board with an SMD packaged microcontroller instead of the socketed one.

IMG_2339.jpg

The Arduino Nano clone is on the bottom. It has two extra analog input pins and a mini USB-B connector which is more convenient. There are a few different design details, but is almost 100% compatible with the Uno, so there is usually no concern. The Nano has components on both sides of the board. There is also a very small Pro Mini which doesn’t have the USB interface which makes it cumbersome to use. The Pro Mini is not an official Arduino board.

ATmega32U4 Boards

There are also boards using the ATmega32U4. This microcontroller has a built-in USB interface which simplifies the board design as well has allowing the serial port to be easier to use as it isn’t needed during the  boot-up and programming process. The boards include the Leonardo, which can replace the Uno, the Micro which can replace the Nano, and the Pro Micro which is only available as a clone (Arduino doesn’t make them).

The Pro Micro is very small and sacrifices some pins as well as a reset button.

Except for the pinout variation, these five boards can generally be substituted for each other and will have identical performance. When programmed directly to the hardware, the 32U4 microcontroller may require small changes because of a slightly different architecture.

ATmega2560 Board

One additional board I’m covering in this post is the Arduino Mega 2560, a clone pictured in the photo below. This is the “go to” board when the Uno isn’t quite sufficient. The Mega has three additional serial ports and many more digital and analog pins. It also has more memory. For some reason I seem to own more of these than any other board although I’ve never needed it for anything other than needing two serial ports. Its major disadvantage is the large size. Again the slightly different architecture means that small changes may be required when programmed directly to the hardware.

IMG_2341.jpg

These boards are covered in depth in my books Far Inside The Arduino and Still Far Inside The Arduino.