When you write an IoT firmware, there are different things you may never forget to think about… The coming 10 things you can’t ignore are coming from my experience of smart object creation and the associated field experience.
The field experience is unfortunately the real step where you will improve your firmware and discover all you have forgotten when you have written the firmware and tested it in your laboratory. In laboratory everything is perfect.
The following 10 things you can’t ignore when writing a Firmware is a non exhaustive checklist of points to verify before pushing your code to the field. It is also a list of test conditions you can execute to validate a Firmware / device made by a third party.
Announced in 2015 and mostly delivered in 2016, the 9$+ computers are now a reality. The first one to be delivered was Domino.io with a price of 14$ it is actually the most expensive device but also one with a nice list of addon. The kickstarter campain was a success even if it raised only 46K$.
CHIP was in the same period of time a great success with 2M$ raised on Kickstarter for 50K requested. And actually it still incredible to me to reach a such cheap price for a device with a such complexity.
Last but not least, the famous RaspberryPI zero is just starting to be distributed at the incredible price of $5 and is actually impossible to obtained under $20 on ebay auctions.
As a owner of these 3 different platform, I will publish in this post the difference we have between them and what we can expect from them.
If you my blog and the lesson section you may notice my interest for 80×51 micro-controller family. Silicon Labs has recently launch a new 8b family based on this core.
With price less than 1 euros, they are interesting candidates for low cost hacking and hardware design. Even the programming cable is not really expensive ( $35 + port + Tax ) and the development environment is free.
EFM8 provides a 50MHz core with all the usual I/O – Serial, I2C, SPI. Plus 12 bit ADC, voltage regulator, oscillator…
I do not usually post more than a tweet when backing on a KickStarter project but as for this time there is a French guy included in the project, it is a good opportunity to do it !
The Domino IO project is an interesting platform to connect one of your home stuff ! It contains a powerful CPU, the network connectivity and all what you need to quickly make your own design.
This platform is really looking like the SparkCore under steroïd having eaten a Carambola engine. The chip is provided for $10 on Kickstarter ; this is 2.5 time less than carambola and 2 times less than Sparkcore. Sound like the missing element between RaspberryPi and Arduino.
For one of my projects, I want to have a really low power consumption device to be able to use a battery for many month. For this I implemented a low power solution as described here. I’ll try to simplify it a little bit and document it a little more …
Really interesting tweet I just saw about the Odroid-U3 platform you can find following this link. This platform with the size of a Raspberry PI board is a 4 ARM core 1.7Gb (cortex A9) with 2GB included. Video is HDMI 1080p.Storage is MicroSD slot. The price is really low : 58$
You can ran even Android & Linux on it.
Compared to a RPI, this sound good for video/media box applications, better than RPI. For hacking this is largely different, as you can see on the picture, GPIO connector are not so easy to access. But, you can also purchase an extension shield providing all what you are expected with 36 GPIO. To build your own shield it could be more complicated than RPI. This let me go to a question I have since months … Why RPI is not becoming less and less expensive or more & more powerful ? it have now about 2 year old.
Less negative point : like any new board coming after Raspberry, the ecosystem is actually really smaller and all third party components (box, shields) is really limited.
Galileo is an Intel platform compatible with arduino ; more of that it is an embedded Pentium class platform. With 400MHz and 800mA and 55€ with Ethernet but no video out, I’m not totally sure this platform provides a real new thing in the embedded world.
By the way, it have some interesting advantages :
Compared to usual arduino platform, you have a really more powerfull system for the price of a small arduino + ethernet shield. Making this board interesting.
Compared to ARM based board, for a couple of Euro more, you have a full x86 compatible platform (32b) where you can run most of the existing x86 code.
I let you have your own advice, to take a look to the detailed description here and buy it here (actually 9w delay)
MQTT (MQ Telemetry Transport) is a Message Queuing system for machine to machine communications. It allows communication of mobile systems over high latency, low bandwidth and poor quality networks. It manage communications over TCP (not over Http) to optimize the size of messages and it manages different quality of services. Depending of it, messages can be dropped, received multiple times of you can have the insurance to receive the message one and only one time.
It makes this protocol really interesting for the communication between a raspberry PI and a server when this communication is event driven and the communication link looks like a Edge/3G channel.
Mosquitto is an open source implementation for MQTT.
Here are some tips on how I implemented it, for a demonstration purpose