7 Reasons Why Not to use Arduino

Published by Aakash Kumar on

seven reasons why not to use arduino

Using Arduino boards look appealing as it’s easy to program and pretty much straightforward. You don’t need additional programmer, circuit, or much of setup or configuration, just a USB cable. But this article will change your mind.

Intro

Being easy doesn’t mean it’s good, Arduino boards are made for hobbyist, means it will not be easy to produce commercial products, academic project work or even some serious project. Let see how.
When I say Arduino, I mean Arduino boards, IDE, tool chains and pretty much everything that comes under ardunio.cc.

Bulky

Arduino UNO, MEGA 2560, LEONARDO, etc. These boards take huge space for no reason (maybe some).
Where as Arduino Nano and Pro Mini has exactly the same micro controller (i.e Atmega328) as in Arduino UNO R3. But have a look at the size in image below.
I will talk about this boards laters in this blog.

Arduino UNO R3 vs Arduino Nano vs NodeMCU
And Arduino Pro Mini is bit smaller than Arduino Nano (Not shown in photo).
Dimensions shown is approx.


Other boards that are very small includes,

Note : Prices may vary by country (For rest of the article also).

  1. Digispark attiny85, a coin-sized Arduino compatible board.
  2. NodeMCU, a 2-3$ Wi-Fi board ! And its Arduino compatible.
  3. STM32 — ARM32 board with lots of GPIO and Analog Input pins.

More on alternatives on this page

It’s Expensive

The microprocessor used in Arduino Uno R3 is Atmega328p which will cost you lesser than 2$, but Arduino Uno is of 20+ $ (at the time of writing).
Ya it includes programmer, complete circuitry required to run Atmega MCU, a led ? and Arduino logo ;).
Not only in Arduino UNO R3, every Arduino hardware is expensive (I mean genuine one).
That price is for supporting the Arduino project.
By the way, you can get clone for 3 – 4$ on eBay, AliExpress, Banggood. 
Or you can build your Arduino under 4$, including programmer.

Inbuilt programmer

This is specially for Arduino UNO, MEGA 2560, LEONARDO, etc
An inbuilt programmer is good when you have to test it by frequently uploading sketches, just plug, flash, play.
But when you want to make a sketch permanent, programmer will stay redundant, which is a waste of money, space and power.
BUT
Arduino boards like Arduino Pro Mini don’t come with a programmer, but connecting programmer is easy. Also, pretty small board.

Cheaper alternative

Other than cloned Arduino boards there is some cheaper alternative with more power. These are listed below.

  • ESP8266 : A high performance Wi-Fi board with a lot small size and Arduino compatible (i.e it can be programmed in Arduino IDE and Arduino language).
  • NodeMCU is ESP8266 based development board, just plug and program, at just 2$ more.NodeMCU that I got from AliExpress have developed problems and died as I continued to upload sketches more than 60-70 times. To avoid that you can use OTA update, I will talk about it in an upcoming blog post.
  • Arduino boards Clone : I found no problem in clone except it’s not pretty in looks.
  • STM32 : This is arm board and arm is known for its performance, STM32 is a product line. In this model you can find powerful boards with unmatched features like DAC (Digital to analog Converter), 12 Bit ADC etc.

Given below a quick spec comparison.

FeatureArduino Uno/Pro Mini/Nano
(Same micro processor)
Arduino Mega 2560 R3ESP8266 12F/ESTM32F103C8 or
STM32F103xx
Storage32 KB Flash256 KB including 8K boot loader4 MB including EEPROM64 or 128  KB
Memory2 KB8 KB128 KB20 KB
Clock Speed16 MHz16 MHz80 MHz, 160 MHz overclocked72 MHz
GPIO Pins14 including 6 PWM54 including 15 PWM12 including 9 PWMAround 19
Analog Input Pins6161 ?16
CostGenuine :
UNO R3 : 22$
Nano : 22$
Pro Mini : Discontinued
Clone on AliExpress:
UNO R3 : 3-4$
Nano : 1-2$
Pro Mini : 1-2$
Genuine : 38.5$
Clone on AliExpress : 8 – 10$
NodeMCU : 2-4$
On AliExpress
2-3$
On AliExpress

It’s clear from here that ESP8266 12F/E has more processing power, but lacks GPIO and analog input pins.

Power inefficient

Almost every Arduino boards come with a voltage regulator, that is why it supports input voltage higher than 3.3 or 5v mostly micro controller run at this voltage. 
But the regulator provided is not power efficient. It’s not highly inefficient, it’s just not friendly for batteries. 
For example, if an Arduino board runs 10 days on battery, bare Atmega MCU may run 4-10 days extra.
Inbuilt programmer consumes some power as well.
For simplicity and power efficiency you can use Attiny MCUs, like Attiny 13a,85,2313A.
If you want some adventure you can make Arduino nano, pro mini for power efficient by cutting LED trace and desoldering voltage regulator. Visit this great tutorial ARDUINO LOW POWER – HOW TO RUN ATMEGA328P FOR A YEAR ON COIN CELL BATTERY

Too Easy

Arduino language is way too easy, just look at the code to turn on LED (on GPIO 13).

void setup(){
pinMode(13,OUTPUT); 
}
digitalWrite(13,HIGH);
void loop(){//Nothing here }

Now look at AVR C code (actually it’s called AVR code in C),

#ifndef F_CPU
#define F_CPU 16000000UL // Clock speed = 16 Mhz
#endif
#include <avr/io.h>
#include <util/delay.h>
int main()
{
    DDRC = 0b00100000; // Data direction register of port C
                       // Set pin 5 on port C to output 
    PORTC = 0b0010000; //turn on pin 5 on port C
    return 0;
}

Definitely it will hinder your learning on micro controllers.
Don’t get me wrong, I am not discouraging use of Arduino. It’s good for prototyping, turning imagination into reality. And for leaning as well.

Not good if you are into serious learning of micro controllers. And also you will hardly find Arduino libraries for low performance (and cheap) micro controllers like Attiny13. So you will have to write your own code (Or copy other’s code from GitHub ?)

Not for commercial use.

Not free for commercial use unless you public your object files so someone could recreate your firmware.

Read more to know why it is not used much in commercial products.


Aakash Kumar

This is Aakash Kumar, most of the time just gone in playing with those little modules. Most of them got burned, blasted and some got passed through my intestines. Interested in embedded systems, gaming, and electronics, pursuing B.Tech. in Electronics and Communication Engineering and still in a play.

0 Comments

Leave a Reply