The concept of the Internet of Things lends itself well to the DIY crowd. Whether you’re a tinkerer, a maker, a student, or a prototype engineer at NASA, getting started with an IoT project is easy. The very properties of what makes IoT are the same properties that enable almost anyone to get started on an IoT project.
The en-masse arrival of cheap SoC (“System on Chip”) devices, such as the Raspberry Pi, combined with a plethora of cloud-based services that allow access to analytics or aggregation services for next to nothing allows anyone to get their hands dirty with an IoT project no matter what their experience.
A “Maker” in his home environment
Here’s an overview of some of the most popular IoT devices as well as some free (or close to free) cloud services to take those devices’ readings and output them to the world—all without getting bogged down in the non-IoT work (in other words, using MQTT).
The Raspberry Pi
The one we’ve all heard of, The British-built Raspberry Pi is classed as one of the best selling personal computers in British history. It has this status as a PC because of its many standard connectors already built into the board, such as USB, HDMI, and ethernet. The Pi has gone through many evolutions and people are using it for an extraordinarily varied array of things —from automated cat feeders and pot plant moisture sensors, to going into space (otherwise known as the AstroPi).
The Pi has its own version of Debian Linux, however many operating systems (mostly based around Linux) are available, for example a media player which can run a home entertainment system, or an emulator for retro video games.
The Arduino consists of both a physical programmable circuit board (often referred to as a microcontroller) and a piece of software, or IDE (Integrated Development Environment). The IDE runs on your computer, and is used to write and upload computer code to the physical board. The Arduino differs in that it has its own development environment and is more about developing code on the PC and then “publishing” it to the Arduino.
The advantage of this is that very specific applications can be written for the Arduino without having the extra “bloatware” (if you want to call it that) of a full blown operating system, as found on the Raspberry Pi or a similar device.
Going slightly left-field here but I’d thought to include this because its Lego and its COOL! Lego really took a great direction when developing the Mindstorm series, which is all about enabling traditional lego with sensors, CPU’s, motors, and connectivity. There are some amazing Mindstorm solutions out there, for example on youtube – Huge LEGO MINDSTORMS EV3 Packaging Line.
Once again the Mindstorm is not a PC but rather a ecosystem of sensors, actuators, controllers and gateways which enable connectivity to the IoT cloud, via MQTT.
Losant is a platform that can aggregate many data stream inputs into actionable analytics (if you want to read more about analytics in the SME, click here). It’s particularly powerful when dealing with REST and MQTT communications.
To develop a Losant solution you would first define your device estate and authenticate devices to set them up for communication. Then, using the workflow builder (in the picture), you would define how to work with and display the data.
Amazon AWS, Azure IoT Hub
The big cloud providers such as Google, Amazon, and Azure (at the drop of a hat, but there are many more) all are in the game of aggregating data from your single workshop Raspberry Pi, or scaling up to millions of devices. The great part of building the middle and front end of an IoT solution using provider frameworks is that they’re optimised to talk within your own systems and services in the same cloud.
AWS IoT Core is a managed cloud platform that lets connected devices easily and securely interact with cloud applications and other devices. AWS IoT Core can support billions of devices and trillions of messages, and can process and route those messages to AWS endpoints and to other devices reliably and securely.
Common IoT applications either collect and process telemetry from devices or enable users to control a device remotely. Devices report their state by publishing messages, in JSON format, on MQTT topics. Communication between a device and AWS IoT is protected through the use of secure certificates.
Azure IoT Hub
Similar to AWS IoT, The Azure IoT Hub allows aggregation of millions of devices’ data without having to be concerned about handling the administration of managing devices, verifying messages, or building middleware to handle low level comms, once again using protocols such as MQTT or REST to move data from edge to cloud.
In most cases, providers usually offer starter kits, such as a Windows 10 IoT enabled Raspberry Pi, to help fast track development and lock one into an ecosystem.
And many others
Various research papers or marketing analysis routinely put the number of “IoT devices” in the world by 2020 in the billions. I get that same feeling when I look at the number of available devices or platforms out there! The listings I gave in the blog are the very tip of the iceberg—to really see what is out there I would encourage you to jump into your browser and have a look for yourself.
Don’t forget – it ain’t IoT if it ain’t connected
A Generic IoT diagram. Seen in PowerPoint presentations around the world.
Once you have your device, and you have your platform in mind (with dreams of retiring early from vast analytical data sets being sold to the largest corporations in the world, and hailed as a pioneer who spearheaded a new digital renaissance), you still have to think about how to connect that device to the platform (which likely resides in the cloud). In this realm you have a number of options:
- WiFi – great for in the house while prototyping, but not so great elsewhere. Too much reliance on the underlying network being stable and accessible, which you may or may not have control of.
- Cellular – having a SIM card in the device allows you to be in total control of the end to end solution. You aren’t reliant on a 3rd party provider to troubleshoot or be left in the dark if there is an issue. A good cellular SIM card, combined with a good portal with effective management tools is best here (Pangea does all of this!)
- LPWAN – Covering Sigfox, LoRA, and NB-IoT (all of which Pangea can support with) – these technologies find their strengths where things like signal penetration, battery life, and cost take precedence over raw bandwidth or latency. A lot of IoT applications just don’t require these things to have the application perform, and LPWAN solutions which are “built downwards” are the ideal choice in these situations.
If you want to know more about Pangea, M2M or IoT, globally roaming SIM cards, customised solutions, or analytics, drop us a line at firstname.lastname@example.org.