I'm new to Arduino and I saw on their website that there are many different kinds of boards. What are the differences, or to be more specific, how would I know which board meets my requirements? I understand that the shields can be connected to the board, but are some boards that do not support certain shields?

Another thing, is it possible to connect external sensors to an Arduino board or there are special sensors that can communicate with the board? I want to use weight sensors.

4 Answers 4


Things to consider when picking an Arduino board:

  • Do I want native keyboard/mouse support? If yes: you'll need the Leonardo (or it's breadboard mountable equivalent) or the TRE (not released, dual MCU board).
  • Do I want a small form factor and/or have it breadboard mountable? If yes, choose a board like the Mini/Micro/Nano/etc.
    • If you want to make it even smaller, either get a board without USB built in or try using an ATTiny
  • Am I computing large numbers with it? If yes: use the Due, Galileo, or TRE (not released yet)
  • Do I want video/audio? If yes: TRE is the only way to go as of now (but it's not released yet).
  • Do I need a USB host (and not want to have an external shield)? If yes, use the Mega ADK (limited support), Yun, TRE (again, not released yet), or Galileo.
  • Do I need WiFi/ethernet built in? If yes; use the Yun, TRE (still, not released yet), Ethernet board, or Galileo.
  • How many pins do I need (and how many of each type)?

    • Digital: simple ON or OFF. Use these for buttons, simple lights, some communication, etc.
      • Stay away from the Due if you don't want to mess with 3.3V logic. Most other boards are 5V. You can work around this with either voltage dividers (doesn't always work) or level shifters. As far as I know, you can't really do much if a sensor provides max 5V; level shifters AFAIK only work with digital signals.
    • UART Pins: these are the pins that you can use the serial library on. (Note: this doesn't include the software-serial library). One of these on most boards is connected to a USB chip.
    • SPI Pins: These are pins which are used by a form of communication (like on the Ethernet shield).
    • Inturupt Pins: These can trigger an event when the signal getting sent to the board changes. There are a couple of different settings, but this can be used for near-instant response time when low latency is critical.
    • PWM Pins: pins that go on and off to simulate a lower voltage. It does this by turning it on and off very rapidly. This is used often for dimming LEDs and controling the speed of a motor.
    • Analog pins: pins that can read a voltage and convert it into a number.
      • The Arduino Due has a much higher precision rate, as it has more possible values and it has less voltage, thus much more accuracy.

    All of these types of pins can act as a digital pin. All of these, except the analog pins, are under the "digital pin" section of your Arduino board. I didn't go into the technical aspects of the pins; I explained then in the simplest way I could.

I left a lot of boards out of this list, but this should give you some things to think about when choosing a board. There's a lot of weird quirks with this list, so it's incomplete, especially with the types of pins. You'll just have to do research and figure out what you need and if a board can meet your needs. Just make sure to not plan two things on the same pin, especially when mixing different shields and sensors! Shields do take up pins.

Shields: they are pretty much compatible with every board except for if the board is 3.3V (newer shields can adapt automatically) OR if it's a breadboard mounted board, like the Nano. There are ways to work around this problem, but it's very difficult.


To start with arduino you need to have some factors in consideration, for example the board you will chose, arduino UNO being the starting board for most beginners, if you are already an experienced programmer in C++ you might want to try more powerful boards. You have a pretty good overview of all of them in this link : http://arduino.cc/en/Main/Products Also there are hundreds of shields out there, you will find some in the link above. Adafruit also has some interesting ones, https://www.adafruit.com/search?q=arduino, you can even find them on ebay, and you can always buy individual sensors, LEDs, buttons etc, and plug them in directly or in a breadboard. Sparkfun has a big variety of very interesting sensors. There is also a lot of open source shields out there, you can check a very simple one i designed myself : http://electropepper.org/projects/prototyping/item/proto-i-os-arduino-v1-0

  • thanks for the help :) , I am familiar with C++, I just want to know if any board is supporting on the various shields or there are some special requirements?
    – Elior
    Commented May 26, 2014 at 17:58
  • I forgot to say most, if not all shields are compatible across the several arduino boards, that’s supose to be the idea at least. Commented May 26, 2014 at 20:54

The usual suggestion I give to people new to Arduino is to get a Starter Kit (either from the store or from a local reseller): it contains an UNO, plenty of sensors and actuators and a projects book.


There are some good answers already, but here are a some secondary considerations

  1. Many Arduino boards use a ceramic resonator rather than a crystal as their timing source. This rules out using them in critical timing applications. For instance you might need to add a real time clock board if you need to keep track of time of day.
  2. The boards based on the Atmega328 chip only have three timers, and one of these (Timer 0) is used by the delay() function, which is in turn used by other libraries. Timer 1 and timer 2 get used if you include the PWM and tone libraries. The boards based on the 2560 chip have 6 timers, which is a lot more generous.
  3. If you want to count external inputs at speed (i.e. up to 4MHz), you need to access the Tn pin of the appropriate timer counter(s). On the UNO, only T0 is exposed to the outside world, and the timer is already in use. Even the Mega2560 boards only seem to expose T0 and T5.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.