Embedded device, Networked sensor and actuators form the ground for IoT. An Embedded developer look IoT (Internet of Things) as area full of opportunity. IoT is not limited to any particular domain or business. IoT involves all the device which have a unique ID and can be configured with address to locate them. For An embedded developer IoT is not just limit to a single area, an embedded developer can design, develop & program, configure, debug and reprogram any device. He can independently design any his own device or concept on IoT. IoT requires so many expertise in the domain of Programming, networking, testing and maintenance. Thinking in a particular domain and restricting to that will not justice to embedded developer working in IoT.
IoT involves so many thing which are not possible for normal people to incorporate in their life to early. There are so many thing which need to be develop before being a part of the IoT inter-network. In order to understand and implement a IoT in our life, we need to learn some very basic thing. Being an embedded developer, knowledge in all the domain is must. For an embedded developer this is not a difficult task but he must possess the knowledge to interface all peripherals to the processor. His knowledge about various processor and microcontroller helps him to build a better device with high efficiency. Since IoT is made up of small and simple microcontroller based device connected together to form a complex network, it is obvious to find which microcontroller support connectivity. The small microcontroller must connect and compatible with the high end processor based server in order to exchange the data. The microcontroller based device will run small firmware with dedicated functionality whereas processor based server or PC run multi functionality software known as operating system. So for An embedded developer IoT is not just an interconnected network but lot more than that.
IoT can’t be defined by just PCs, server, mobiles, tablets, etc. connected with TCP/IP based network. We are living in a world where more than 1 billion device are connected. IoT deals with two major aspect i.e. is networking (internet) and device (embedded). Over the years there has been lots of advancement in the area of IoT. Networking deal with the amount of data being transferred and processed whereas the device deals with the acquisition of the data. This whole thing may look like finding needle in the haystack but considering the other aspect is we are always connected and getting the information from every part of the planet.
Server and sensor hub works continuously 24×7 giving and processing the information. The device act as interface for the end user the give or take the information. Embedded developer need to think from all the angle and then design the device and its architecture. Implementing IoT is not job of single person, but he can take small step in contributing toward IoT. For examples implementing IoT in home cars, etc. He can buy a simple Arduino or raspberry pi which ARM processor based ready to use development board available in market. An embedded develop can interface simple sensor to transform the house into smart home. He can interface light detector sensor, automated window and door, anywhere internet access, fire alarm & smoke detector, etc. These small sensor nodes with a TCP/IP enabled device will collect the data and send it to the main server (raspberry pi in our case). The raspberry pi will then compute and give a result based on the requirement of the end user. This is basic example which can b enhanced to create complex network of sensors and device in the house. We can create such small network in our car, office, shops, etc. And when these small network get connected to the internet, gives us the ability to access all the data from anywhere. And become the part of the IoT. IoT can be integrated in any kind of environment. Many offices and multi-national companies have implemented IoT in their premises which enable their employees to have better comfort of life and work at one place.
IoT can termed as network of smart devices and embedded developer is key person in making an Internet based network smarter. According to his perspective there is nothing he can’t do and there is no many need to done. Application of IoT which leads humanity to futures are smart city, smart house, smart environment, and smart agriculture, etc. IoT architecture is very complicated to understand. It involves layered architecture where sensor and device handles the lower level and server handles the upper level. The interconnection between these devices is handles by cloud having gateway and network layer. The embedded developer fits in all the domains which include application, cloud, device and network.
Let’s consider an example for implementing IoT for a small house. As we discussed above we can implement whatever we want, but we will look into a small application requiring internet access and automated lighting in the house. For this an embedded developer will require the application hardware (TCP/IP enabled processor), sensor node and a server (PC). The sensor will send the data to the server continuously and application hardware will connect to the server to access the information. To develop an application we need to program our application hardware to read the data. For that we need to develop a firmware for the base of our app hardware. On this layer we can develop our application which will access the data. To develop such a coding we need some sort of IDE/tool like eclipse or keil, etc. Now these code must be secured so that no intruder cannot access the data. For that we must implement secure booting and encrypt our data. Cryptography provides best solution for such issues where security is our major concern. Once the application hardware is developed and implemented we need work on the connectivity. if the device or application hardware is mobile or portable then wireless connectivity is preferred whereas for device like sensor hub and server which stay fixed wired connectivity is preferred. Wired connectivity provided safe and faster data transfer at very less maintenance cost. Wireless connectivity provides the foundation for the IoT because it allows the user to access its resources from anywhere without getting wired connection. Wireless connectivity use radio waves which can be short range wave and long range waves also. Few device which use radio waves are RFID device, WiFi, Bluetooth, etc. IoT must be implement using these as connectivity medium to connect different sensor hubs and user device with server. This connectivity follow standard OSI model for communication with other devices. Since OSI protocol stack is available we can directly implement those on all the node to provide compatibility. Having standard protocol on all the nodes helps us connect all the existing tool and it saves lots of money. Having backward compatibility increase the no of device which can be the part of this IoT Inter-network communication.
In this era if we talk about IoT, then it’s natural to consider both mobile and PC but we must include all the embedded device like GPS, networked printing, satellite TV (DTH), wireless headset etc. getting connected independently to provide comfort to us. However all these device are nothing but embedded device which are developed by an embedded developer. So without an embedded developer it very hard to implement such a concept and make it a reality.
Filed Under: Arduino, ARM, Tech Articles