Your first project in Internet of Things: where to start? 

569-iot.jpg

We are all standing on the threshold of the long-expected Internet of Things (IoT) and accompanying technologies boom. The idea of IoT was first introduced in the early 80s but only in the second decade of the 21th century, devices became small and cheap enough to allow for the realization of the Internet of Things projects. As technologies evolved, it became possible to create affordable and powerful microcontrollers with ultra-low consumption. The price for RFID tags went down, and cloud platforms allowed storing and processing huge amounts of information from different types of devices. According to the forecasts, more than 50 billion devices are expected to be interconnected by 2020.

So what are the most useful IoT functions besides switching lights on and off in your room? The specter of the IoT applications is so huge that in the next few years it will be easier to list areas where the IoT technologies are not yet being used. In the retail space, the IoT will allow you to integrate your fridge, washer, and closet with delivery services from your favorite Internet stores. Your lawn watering system will be connected to a meteorological service to select the necessary mode of watering based on a weather forecast.

Now, the electronics market provides inexpensive sets for Home IoT, making it possible to realize many ideas within limited budget and with the help of ready-made devices. Shall we review some of the cool IoT devices currently on the market?

Internet of Things Development Services for Connected Success Transform your business with Svitla Systems’ advanced IoT development expertise and tailored solutions. Get a Consultation

Let’s start with the cheapest controller for IoT, ESP8266. The advantage of this 25-cent size device is that you can connect several devices or indicators with two (or more in some models) GPIO connectors. The second advantage is support of 802.11 b/g/n. You will be able to write very simple code that will work on this controller and send REST requests via HTTP to the server using 1MB of internal memory and 32-bit processor. And all this will cost you only $6.95!

Fig. 1. ESP8266. Yes, this is WiFi.

Raspberry PiThe next one, more powerful and comparatively inexpensive solution for building an IoT system with great range of functions, is known as Raspberry Pi. There are several versions of this product, which is a small and effective computer and actually presents the System on Chip (SoC). This solution is based on the ARM architecture of processors and, depending on the model, it has big amount of memory and compute cores. The cheapest device, Raspberry Pi Zero, is available for $5!

The most expensive and productive device, Raspberry Pi 3, has 1GB memory and 64-bit 4-core processor. You can buy Raspberry Pi 3 for $39.95. The simple usability of this microcomputer is achieved due to Linux usage and programming in multiple languages, in particular Python, the most popular language for prototyping and quick development. You can also use free Windows 10 IoT Core. Moreover, the device also includes Integrated 802.11n wireless LAN and Bluetooth 4.1, 4 USB 2.0 port, and 40 pin GPIO connector!

Fig. 2. Raspberry Pi 3. Amazing 64-bit microcomputer for IoT.

Raspberry Pi 3Once you have the devices, the question becomes how do you connect them with a server for IoT? The easiest, most effective, and cheapest way to build a server for a small project is to use cloud technology, for instance, Google Application Engine. To program applications of PaaS level in the cloud, you can create a free account and start coding. And when needed (for example, if you work with thousands IoT) you will be able to deposit to the Google Application Engine account and get more Internet traffic, computing resources, and volumes of data base.

The simplicity and reliability of such solution/architecture is guaranteed on the platform level, which you can easily program for information reception from the Internet of Things via HTTP requests using any language (Java, Python, or Go). For prototyping, use Python to write a working IoT server for collecting and processing information with a few lines of code.

You can find gigabytes of manuals and tutorials about these systems on the Internet. There are also ready-made examples that you can easily find and use as a basis for your own system.

So, which Internet of Things project are you going to launch next weekend?

FAQ

What is IoT for beginners?

The IoT refers to such a network with everyday appliances talking to the internet and to each other. They could be as simple as your refrigerator, washing machine, or garden sprinkler that shares information and optimizes operation. Meanwhile, newcomers will understand that IoT is nothing more than a simple job with the help of very cheap microcontrollers like ESP8266 or Raspberry Pi for managing, controlling, and automating several aspects of life; it’s not only about lighting; it’s covering areas in residences, commerce, health care, etc, and further on. To cut it short, IoT is an infrastructure of a network of connected devices and all the related applications with communication between them, aiming at improving various aspects of life.

What language is used in IoT?

Python is the most popular language for developing IoT solutions. People love it because everything related to prototyping and fast development falls within its capabilities. The language is simple, yet some libraries are extensive, thus making it very good for code meant to run microcontrollers such as Raspberry Pi and server-side applications collecting and processing data from IoT devices. Other languages used include Java and Go, but due to the ease of use and quickness offered by Python, try finding someone who would develop an IoT project without it.

What is an example of an IoT project?

An IoT project is, for example, envisaged within the framework of a smart home system with interconnected devices. Your fridge, washing machine, and wardrobe that work with online delivery services would automatically order groceries or laundry supplies at the moment these are needed. Another tangible example is a smart lawn watering system that can communicate with a meteorological service and adjust its watering schedule according to the real-time weather forecast for achieving perfect hydration for your plants. These take advantage of small, affordable units and cloud platforms in the provisioning of intelligent, further convenient living spaces.

How does IoT work step by step?

A sensor-equipped device collects data or detects an event, then sends it over Wi-Fi, Bluetooth, or any other network itself as a lightweight HTTP/REST message to the cloud platform. The cloud stores and processes this information, applying any rules that might be necessary, as well as analytics, and then determines if any action needs to be taken. It issues commands or notifications – either to the original device or to another service – returning to make a continuous feedback loop possible for keeping the system intelligent and automated.

Which is the most popular IoT application?

Among such clever applications are remote home devices for automation of such operations as lighting and temperature control, etc., commonly creating IoT infrastructures for the sake of comfort, energy saving, and convenience, such as lighting control through a smartphone, or automatic temperature adjustment. Apart from residential buildings, it is possible to note the active implementation of IoT solutions in the retail sector, healthcare industry, agriculture, and other areas; nevertheless, “smart home” solutions can be regarded as the basic use-case scenario.

How many IoT projects fail?

A great number of IoT projects do not succeed, essentially due to reasons such as costs or complexities involved, and thus do not scale beyond prototyping into actual usage. Most ideas are small in their infancy and work well during testing, but face issues when they have to connect thousands of devices, handle huge amounts of data, and maintain consistent performance. Achieving success entails a deliberate plan in the choice of hardware and cloud solution, together with long-term scalability considerations.