With this post we wanted to compare the latest arrived boards in the world of hobbyists electronics with devices that were already on the market. We highlighted the pros and cons of the most prominent alternatives with the aim of helping our readers to choose the one better fitting with their requirements.
Here’s the list of platforms we took in consideration:
- Arduino Uno
- Arduino Due
- Rasperry PI
- Android based Mini PCs based on MK802II/MK802III
As you may know there’s plenty of platforms for you to use: we decided to present a quick overview of some of the most accessible platforms.
By far the better known among those analyzed in this post, the Arduino Uno – a simple 8 bits board – contributed to widespread among fans all over the world the culture of open hardware. Arduino allowed newbies in the world of electronics and microcontrollers, to obtain tangible results quickly, in a repeatable and customizable fashion, thanks to gradual, and relatively rapid learning, thanks to the large amount of documentation, tutorials, examples, books and tips available in forums and blogs like ours.
The consequent push for a more capable hardware pushed the Arduino’s team to build Arduino Due, the first board of the family to use a powerful ARM Cortex-M3 microcontroller. This choice forced the team to make a new version of the IDE, the 1.5, containing an ARM compiler in addition to the AVR one.
A credible alternative to Arduino Due is the MBED, that is available both with a Cortex M0 or M3, by NXP. The model comparable to the Due uses a LPC1768.
Apparently, by directly comparing costs, the Arduino Due seem cheaper but that’s not really true. If we look at the diagrams in detail, we immediately notice that the two boards both use a Cortex M3 chip equipped with an Ethernet MAC compliant with standard IEEE 802.3. Unlike the Due, the MBED has been designed so as to allow the direct connection of the device to LANs in a simple manner. For this purpose, the pcb contains also a small integrated circuit, the DP83848J by National Semiconductor (now TI), responsible for ensuring physical access to the network(OSI/ISO Layer 1).
By looking at the official Eaglecad files of the Arduino Due, you can notice that the team took into account this extended connectivity opportunity: you can see the connections to an “ETH” connector which is headed as seen in the Ethernet MAC fromSAM3X. The connector is also clearly visible on the right side of the PCB, outside of the printed circuit board.
We can figure out that the development of the relative SW libraries would have required too much time and would have delayed further the the Due, whose distribution began fourteen months after its official announcement (also notice that it’s already at the third revision while having just entered the market.
Another important difference between MBED and the Due is that while both are powered at 3.3V the first is 5V tolerant, while the latter is not.
If we consider the need to use a level shifter to ensure full compatibility with the shields made for the Uno and the lack of an Ethernet interface… the cost of Due actually become higher than MBED. Also Due cannot still be considered very mature from the in terms of IDE and libraries. The will to keep the backward compatibility with the code and libraries written for the Uno, makes software development for the Due rather complex since the two cards are actually much more different.
In the meanwhile also ST created several development boards for virtually every type of ARM microcontroller that it sells. In this post we consider the Discovery F0 with ST32 that uses a Cortex M0 microcontroller with performances that are comparable to those of the NXP 11U24 equipped MBED.
An immediately evident peculiarity of this device is its really low price: about 8 euros. But why should we spend 65 euro for the MBED or 47 for the Due if we can have the power of a 32-bit F0 at a significantly lower price? Primarily there is no IDE for the Discovery as: ST only provides a list of recommended development toolchains for programming
IAR™ Embedded Workbench for ARM (EWARM) available from www.iar.com
RealView Microcontroller Development Kit (MDK-ARM) toolchain available from www.keil.com
Atollic TrueSTUDIO® STM32 available fromwww.atollic.com
Altium™ TASKING VX-toolset for ARM® Cortex-M available from www.tasking.com
This is a clear sign that the product wasn’t really developed with hobbyists in mind. The software tools listed here are not free: one must use the limited versions or purchase a license that can cost as much as several thousand euros.
By the way, let’s analyze further the hardware: size matters as the device developed by ST and is about three times bigger than an MBED. It’s then easy to understand that IDE and miniaturization come at a cost.
Let’s now consider just a simple code example – the acquisition and visualization of a temperature measured by a analog transducer as the MCP9700A might be. Using the libraries developed to make Arduino code compatible with the ST board. The code for the Discovery will be:
For mor detail: The Ultimate Comparison of IOT Development Boards