Arduino Confusion Continues
I am an Arduino fan. I love programming in C and the Arduino
platform lets me run my programs “on the metal” as they say. No whinging and
whining from an operating system just me and my code.
After a few months without a C “fix”, I recently revisited
the Arduino world by buying one of the new MKR boards. I plumped for the MKR
WiFi 1010 as that looked to be the one most likely to become the “Uno” of this
new generation of devices. I also wanted to see how the Internet browser based
development environment was coming along and then there was talk in odd places
about some new thing called the “IOT Cloud”. Having had a good look around, I
am more than a little confused.
First thing I tried was the Arduino Web Editor. I had an
elderly 11” Chromebook that is nice and light and I thought that might be a
great device for Arduino web based programming as, after all, it is really just
a (small Linux) container for the Chrome Browser. It was an interesting first
choice. When I signed into the Web Editor site using my Arduino Forum
credentials I quickly established that the Arduino Create app needed to manage
the USB link to an attached Arduino board had to be purchased from the Chrome
app store. To be fair, it could be used for free for 30 days but after that it
was a dollar (US) per month. The equivalent component to manage the same task
for a Windows or Linux machine is available without charge.
The Chromebook Arduino Create charge intrigued me. I could
be wrong, but I suspect that it is all about leveraging some money from the US
Education market where Chromebooks have become very popular. I just find it a
bit confusing that any charge should be device specific – and a minority device
at that.
The Web Editor worked very well when I hooked up an Arduino
Uno and ran some code. Very slick and the Web UI looks well organised. The
worrying feature is the big fat button with the caption “Upgrade Plan”. It
turns out there are limits associated with free access to this resource and
indeed limits even if you pay a monthly fee. Now I understand that a service
provider needs to get paid for processing and data storage resources one way or
another and charging the heaviest users is a popular model. What I don’t get is
the USP. Apart from those
Chromebooks, there are very few devices that can’t run the existing open source
Arduino IDE. Programs written using the IDE on a Mac, Windows or Linux device
can back up their creations to (say) DropBox if the “cloud” code storage was a
key issue. I am thus mystified by the Web Editor “offer” unless it is only really
about the IOT Cloud thingy.
I confess to also being very confused by the Arduino IOT
Cloud. I get the potential (maybe necessity) of an encrypted link between “a
cloud” and an Arduino. I get the potential to appify (is that a word) a user
interface but “things” and “widgets” and automated code generation leave me
cold. There has never been a true advance on “The Last One” hyped in its time as a computer program generator and the last piece of
software anyone would need to buy. Partly as a consequence of that marketing
hype TLO was an abject failure although the product quality left more than a
lot to be desired.
Automated code generation is always great for a few simple
demo tasks but suffers from the huge problem of leaky abstractions – and then
some. My personal experience suggests that any real life requirement demands
complexity which is an order of magnitude greater using some form of code
generator than delivering the same solution using a well-grounded computer
language. Any Arduino application more demanding than flashing an LED (which
was a twinkle in the eye of Hernando Barragán from the start) will
inevitably demand at least minimal C/C++ language skills and pretending
otherwise is going to lead to frustration and disappointment.
The Arduino MKR WiFi 1010 is a great bit of kit by the way.
It does not have a huge number of pins but they nearly all feature multiple
functionality. The WiFi is great when faced with a reasonably strong signal and
yes it works. I was able to prototype a hardware device with an interactive
user interface based upon HTML presented by a web server running on the board.
Plus there is plenty of program space and general memory – well, on the Arduino
scale. This board has the potential to be a genuine game changer.
Looking at value for money though, leads one to comparing
the headline features of this Arduino board to the closest equivalent Raspberry
Pi – the Pi Zero W.
MKR
WiFi 1010
|
Pi
Zero W
|
|
Processor
|
SAMD21
Cortex-M0+ 32bit ARM running at 48MHz
|
ARM11 running at 1GHz
|
Memory
|
256Kb Flash plus 32Kb RAM
|
512MB RAM
|
WiFi
|
2.4GHz 802.11 b/g/n
|
2.4GHz 802.11n
|
Bluetooth
|
BLE
|
4.1 and BLE
|
GPIO Pins (excl. power etc.)
|
22
|
28
|
Other
|
Encryption chip
|
Mini HDMI + Micro SD + Camera Serial Interface
|
Price (UK, August 2019)
|
£29.90
|
£9.30 plus shipping
|
A rough takeaway is that the Pi Foundation (through
Raspberry Pi Trading) ships a lot more capacity for a lot less cash.
Furtherevidence of shaky price/performance on the Arduino offerings here. OK, at a pre-order stage you have to take the price and spec with a small pinch
of salt but compare this to the Arduino MKR Vidor 4000 specification.
The Raspberry Pi Foundation is a charity. The Pi boards are
proprietary although all of the software is free and open source. The Pi Foundation
makes an income from selling the boards and is in a position to attract grants
and donations. Certainly, they ship a lot of Raspberry Pi boards in a range of
flavours.
The Arduino ecosystem was two commercial companies, now
merged into a single entity (I think). The Arduino boards are “open source” and
anyone can copy and make them if they so wish based upon the published
details. Arduino boards are sold by the
prime source(s) and presumably generate an income. I note though that an
“official” Arduino Uno lists at 20 Euros plus VAT and shipping while an
alternately branded copy is easy to find at £7.99 delivered next day and even lower
prices available if you are prepared to wait a bit. Does this imply that
hardware sales are not a great foundation for the Arduino businesses once any
given board becomes popular?
Does my confusion arising from the Arduino offerings reflect
an equal confusion within the Arduino ecosystem about how to remain viable?
Should Arduino reorganise on a similar basis to Raspberry Pi? There was talk of
a “foundation” back in 2017. Maybe there is room for multiple models but, let’s
face it, Arduino faltered rather badly over recent years and is only just
getting going again. A lot of us would be the poorer if the Arduino mojo was
lost just because there was not enough income to keep development reasonably
current or because they took completely the wrong turn commercially. I am not
surprised that the Arduino family is looking around for alternate revenue
streams – it is just that I am finding them less than coherent.
<November 2019>
I have found and ordered another device that helps press the price/performance point home.
It is an ESP32-CAM board that can be programmed using C and the Arduino IDE. I have some big plans for this little board,
The spec:
802.11b/g/n Wi-Fi and Bluetooth
32 bit CPU
160mhz clock
4mb of SRAM plus 512kb on chip
GPIO, external interrupts, PWM, ADC and DAC
SPI and I2C comms as well as serial
Built in microSD card slot
Camera port
Will run as a web server
All for £4.95 delivered.
The camera cost £1.99 delivered.
Negatives:<November 2019>
I have found and ordered another device that helps press the price/performance point home.
It is an ESP32-CAM board that can be programmed using C and the Arduino IDE. I have some big plans for this little board,
The spec:
802.11b/g/n Wi-Fi and Bluetooth
32 bit CPU
160mhz clock
4mb of SRAM plus 512kb on chip
GPIO, external interrupts, PWM, ADC and DAC
SPI and I2C comms as well as serial
Built in microSD card slot
Camera port
Will run as a web server
All for £4.95 delivered.
The camera cost £1.99 delivered.
Not bristling with IO pins
Needs a £2.90 USB to UART adapter to program it.
Will not retain programs on power off but can be put in deep sleep.
A small board with no mounting holes.
Comments
Post a Comment