There has been a buzz of Internet of Things (IoT) from the last decade. Community call it with different names, i.e., cyber physical systems, web of things, web of everything, etc. IoT refers to the interconnection of different electronic/sensory devices via Internet. These small devices are attached to different physical things in this world, and these devices continuously monitor the thing under observation and provide their virtual representation on the Internet. In IoT, we see the number of devices connected to the Internet increase day by day at an alarming rate and the predictions show that by 2050, 50 billion IoT devices will be connected to the Internet. There are a number of use cases of IoT. For instance, elderly care system - here an IoT system monitors the elder person 24X7 and provides information about walking, sleeping, eating patterns, etc. Apart from this it also provides live feed of body condition including heart-beat rate, blood pressure, etc. This also makes it possible for a doctor to provide remote assistance to the patient. Hence IoT makes it possible to reduce the unnecessary visits a patient/elder person has to made to ensure proper health. Furthermore, it also provides real-time information about frequent small accidents to other family persons in no time.

          With time, data generated from these IoT devices increase with different representations and modalities. Various challenges have arisen in IoT due to the inclusion of diverse (temperature, humidity, etc.) devices for monitoring different things. The main issues raised within IoT are due to the lack of proper boundaries, i.e., no fixed type of device with proper specification is used nor any unique data representation is followed.

        The complete working of IoT can be analyzed at different steps, i.e., information sensing, interconnection of IoT devices (mostly sensors), communication between devices, and processing of the information at the end-user interface. Technology has improved a lot and is continuously improving to make each step efficient. Some of the generic challenges found within IoT are:

Sensing: Most devices/things now have a minute embedded processor, microcontroller - which handles control via programming and performs the defined tasks as defined by the programmer. This shows how this small processor makes things happen with a deterministic control. But there are certain challenges with regard to this processor: (i) diverse scenarios demand for varied processors, i.e., one size does not fit all. Therefore, considering all possible use cases once and then developing required processors is not an easy task. Different reasons attributed for this diversity include different sensing/sampling rates, size constraint, energy requirement, switch on/off policies, environmental factors, etc. (ii) processing capabilities also serve as a major deciding factor, i.e., how much processing power and where to do computations – on processor or on the cloud.

Interoperability: IoT domain is very big; therefore there are not fixed number of manufacturers. As a result of this, the problem of connecting different devices with diverse interfaces always exist. Even for sensing similar phenomenon, devices from two different manufacturers do not communicate. The major reason for this interconnection/intercommunication problem is the interoperability. There are not well-defined standards, which ensure that different IoT devices from diverse manufactures within a home will communicate successfully. This defines the problem of interoperability at connection level, but we also face interoperability at the data level. We have n number of devices in IoT and we also have many options (JSON, XML, CSV, etc.) to transfer sensed information. On same IoT information, different applications can be built and this results in information sharing. This essentially depicts that information should be represented in a format that is understandable to any application developer. Furthermore, how can we ensure that transferred information is associated with full context information, i.e., sensitivity of sensing node, manufacturer of node, etc.? Therefore the challenge is to ensure unique data format for easy information consumption and for providing complete information about a sensed event.

Security/confidentiality: By secure information I mean - Information needs to be available when needed, information needs to be confidential and the integrity of data needs to be assured. For instance, an IoT device transmitting the working condition of your car to its manufacturer might lead to information breach as it continuously transmits the car location. The car manufacturer might sell this information to a third-party and the third party can do unethical things with this information. This shows that on one side, IoT is doing a great job, but on the other side this makes us to think about privacy and security of the whole system.

Communication: Exploiting communication options among IoT devices is also an important area to focus upon. Among the wired and wireless options we mostly use wireless, because IoT devices mostly carry required interfaces and it is easy to connect the required devices with wireless. But, for different scenarios we need to first analyze the scenario and then use most relevant option among NFC, Bluetooth, Wi-Fi, ZigBee, Z-Wave, etc. For instance, in portable medical and lifestyle devices mostly Bluetooth Low Energy is being used while as in industrial control and automation we use Wi-Fi or ZigBee. All these decisions are made while taking into consideration: cost-effectiveness, low power consumption, quality and reliability, and security.

         In addition to the discussed issues proper data analytics is also important. Information serves as a basis to end decision system and all the actuations are done entirely on processing the sensed information. Information generated by IoT devices has the characteristics of volume, variety, velocity and Veracity (4V's). Although current systems are able to handle velocity, but with the increasing number of IoT devices we need efficient systems which can handle the volume and variety properly.

         To see IoT as a reality, I think we should look into basic issues, which include: interoperability both at the device and at data level,  proper standardization at all  levels and get deep data insights via proper data analytics. Data is the most important currency of IoT as it make things to control, modify the behavior.