Getting started with INTERNET OF THINGS (IOT)
- Rahul Singh

- Mar 22, 2018
- 3 min read
2017 saw the rise of smart home assistants, home streaming devices, and cloud-based gadgets. And 20.4 billion connected “things” will be in use by 2020.
Internet of Things or IoT basically is connecting Embedded System to internet.So before we understand IoT, let us understand Embedded System a little.
EMBEDDED SYSTEMS :
The heart of the embedded system is a RISC family microcontroller like PIC 16F84/Atmel 8051/ Motorola 68HC11 and so on. Most important thing that differentiate these microcontrollers with microprocessors like 8085 is their internal read/writable memory(EPROM). So You can develop your light weight program ( in Assembly language or using Embedded C with software like Keil) and "burn" the program into the hardware. These programs keep on running in a loop.
Interestingly in most embedded system a single program is burn with several subroutines. So unlike your PC, microcontroller device in an embedded system runs a single program infinitely.You can connect several input and output devices with these microcontrollers which are either memory mapped or IO mapped. These simple hardware includes LCD display, buzzers, keypad (numpad) or even a printer.

Following diagram explain what is IoT all about :

Open Hardware platforms will help you build your thing :
It's amazing to see that only a few years back, it was virtually impossible for someone to have access to actual hardware to run IoT solutions. That is, cheap and reasonably-sized equipment that you could easily deploy in a house, a car, ... Nowadays, platforms like BeagleBone, Raspberry Pi, Arduino and ESp8266 (images below), are providing IoT developers with a wide ecosystem of hardware that can be used to easily prototype and even go to production for small batches.
Arduino is probably the best starting point for embedded based IoT. Basic Arduino boards don't come with Ethernet shield and for Arduino to be able to work as IoT device, you need to select Arduino with Ethernet shield. Arduino Yun on the other hand is a board that comes ported with ethernet shield. You can actually order a basic board of Arduino like Arduino Decimilia or Dueminolova and learn the hardware basics like connecting sensors, working with actuators, serial communication and then you can go for Ethernet shield and look for more web based application for Arduino.
Raspberry Pi is probably one of the best things to happen in DIY IoT. A wide range of Data driven applications like Home Automation Server toHome Multimedia server, File Server, MQTT server can be developed withPi. PI like Arduino has general purpose IO pins. But seamless working with sensors is bit tedious in Pi.
BeagleBoard family was originally designed to provide a relatively low-cost development platform for hobbyists to try out the powerful new system-on-a-chip (SOC) devices that were essentially capable of performing all the duties of a computer on a single chip.
ESP8266 is a low-cost Wi-Fi microchip with full TCP/IP stack and microcontroller capability produced by Shanghai-based Chinese manufacturer, Espressif Systems.This small module allows microcontrollers to connect to a Wi-Fi network and make simple TCP/IP connections using Hayes-style commands.
Get your hands dirty with at least any one of them.
Learn about IoT standards :
What is really interesting in the Internet of Things space is that we're talking about millions of devices that are pretty limited in terms of processing power and communication capabilities — think a tiny battery-powered microcontroller monitoring a solar panel in the middle of the Death Valley! — and yet, one needs reliable ways to access sensor data or manage the software running in the device, all of this usually happening over the air and with limited human intervention.
Some protocols that are used for IOT data transmissions are :
MQTT :
In order to allow IoT data to flow from producers (sensors on the field) to consumers (IT backends, web apps, etc.), MQTT is an OASIS standard that implements a publish-subscribe communication model. It has several QoS levels making it easy to find the perfect tradeoff between reliability and resources/bandwidth usage. MQTT is basically used in the concept of home automation.
LoRa :
LoRa: Long range, low power wireless platform is the prevailing technology choice for building IoT networks worldwide.LoRa is mainly used in the concept of smart cities.
ZigBee :
Zigbee is an IEEE 802.15.4-based specification for a suite of high-level communication protocols used to create personal area networks with small, low-power digital radios, such as for home automation, medical device data collection, and other low-power low-bandwidth needs, designed for small scale projects which need wireless connection. Zigbee is basically used in the concept of home automation.
Understand at least any one of them deeply.
Understanding IOT devices hierarchy :













Comments