Table of Content
- What is Internet of Things (IoT)?
- IoT Components—Ecosystem
- IoT Connectivity & Protocols
- Software Systems
- IoT Edge Gateway
- IoT Applications
- IoT Architecture
- IoT Platforms
- Microservices in IoT
- Analytics & Data Management
What is Internet of Things (IoT)?
The Internet of Things (IoT) consists of everyday physical objects with embedded sensors connected to the internet through application programming interfaces (APIs) that create large volumes of data that must be collected, stored, and analyzed.
IoT creates opportunities to develop new solutions for consumers and businesses in connected homes, businesses, and industries.
With innovative business models, improved user experiences, increased workforce productivity, efficient operations, maintenance, security, and other factors, many companies are evolving into sophisticated organizations and leaving traditional players behind.
IoT projects must be carefully designed as they come with significant challenges. As a first step at the organizational level, companies must implement a leadership style that fosters the right culture, attitude, team collaboration, skill level, and synergy across functional departments. It is a good practice to begin by focusing on a company’s strengths and implement IoT progressively while developing IoT expertise.
Businesses must keep in mind interoperability and connectivity standards when designing IoT architectures. Best practices require careful consideration with regard to the coexistence of systems with complex device interrelationships, sensors, multiple protocols and networks, locations, languages, formats, and time-dependent information across various data models. Also, connectivity issues such as latency, bandwidth, and data frequency must be considered.
Krasamo supports the development of IoT ecosystems with open standards—platform-agnostic, interoperable, and flexible—thus providing an architecture that allows seamless connectivity across devices and applications.
IoT architectures must also consider standardization initiatives currently taking place in the IoT world of providers, such as Project Connected Home, for example.
Important IoT components include:
Things (Devices). Things are objects and devices with embedded microcontrollers (integrated circuits), system-on-chip (SoC), sensors, actuators, and/or modules that communicate and perform actions. Devices are designed and require a program or code to perform functions.
Microcontrollers (MCUs). An MCU is an integrated circuit embedded in a device that implements and controls the functionality of the device or product.
Embedded Connectivity. A chip provides and controls embedded connectivity—a high-level protocol loosely coupled to the main MCU that is not dependent on it to function. If the device has no connectivity, the main MCU continues to work without a problem with a well-defined interface between the two.
IoT Connectivity & Protocols
Devices are connected and deployed using IoT connectivity protocols which allow a variety of technologies and provide protocol-agnostic integration from device-to-cloud or edge-to-cloud.
Wi-Fi. (IEEE 802.11) A wireless network protocol that works with Wi-Fi integrated circuit chips such as wireless microcontroller SoC (system on a chip), low-power network processors, Wi-Fi modules, and wireless MCUs. Wi-Fi uses 2.4Ghz and 5Ghz.
Wi-Fi has generations that correspond to Wi-Fi technology. The last generations of Wi-Fi are:
Wi-Fi 4. (IEEE 802.11n) Operates in 2.4GHz and 5GHz bands. Used for products that don’t require extensive bandwidth, such as thermostats and lighting. Many IoT products in the market run on Wi-Fi CERTIFIED n and work with other Wi-Fi versions.
Wi-Fi 5. (IEEE 802.11ac) A dual-band operation (2.4 GHz/5GHz) with high capacity, improved power management, and low latency. The 5GHz band is used for high-performance applications and the 2.4GHz for IoT applications.
Wi-Fi 6. (IEEE 802.11ax) The newest Wi-Fi standard with multi-gigabit per second data rates for demanding applications such as multimedia streaming, rapid file transfer, 4K video, and Ultra HD.
Wi-Fi HaLow. (IEEE 802.11ah) A protocol that operates in the sub-1 GHz radio frequency spectrum, providing long-range and low-power connectivity for IoT applications. It can be incorporated into 2.4GHz and 5GHz Wi-Fi radios, penetrating walls and supporting a high number of devices per access point.
Bluetooth Low Energy (BLE). (IEEE 802.15.4) A low-powered wireless protocol stack that operates at 2.4 GHz, using a short-range radio frequency transmission in a wireless personal area network (WPAN). Bluetooth wireless connectivity usage is the leading choice in smart buildings, manufacturing, commercial and home applications.
HTTPS (Hypertext Transfer Protocol). A lightweight HTTP client messaging protocol standard that runs on top of TCP/IP and is used to create connected MCU applications.
MQTT Protocol. An open-source lightweight connectivity protocol (Machine-to-Machine or M2M) used for sensor communication in small device scenarios. MQTT connections are established securely using TLS (Transport Layer Security) between client and server. MQTT sits on the chip that provides the embedded connectivity.
ZigBee. (IEEE 802.15.4 Standard) A low power consumption, two-way wireless protocol communication standard embedded into devices, providing interoperability between millions of ZigBee products in the wireless marketplace. Its stack architecture is made of layers that perform services to the layer above with a reliable transmission mechanism.
Thread. (IEEE 802.15.4 Standard) A low-power mesh networking protocol based on internet protocol (IP), enabling device-to-device and device-to-cloud (IPv6-based) network solutions.
Cellular IoT Technologies. (3G/4G/LTE) The use of cellular networks to connect IoT devices has gained traction for certain types of applications (such as industrial IoT and home use), mostly in remote areas without infrastructure. Large telephone operators are advancing in the IoT by offering services which charge low prices for connectivity.
5G Technologies. The next generation technology for cellular networks, featuring high-speed connectivity and low latency communication among sensors and mMTC devices (massive machine-type communication). Although expensive, 5G technology will revolutionize the IoT scenario with speeds up to 10 times faster than LTE.
Data generated by devices is structured, analyzed, and managed through software. The software programs define device behaviors.
Device Software: Low-Level Stack
Embedded Applications. Software placed inside a device to perform high-level functions and meet real-time requirements.
Firmware. A code that runs inside a device to control low-level functions, communicating instructions and service to other software.
RTOS Operating System. An open-source real-time operating system for solutions that involve direct connectivity of microcontroller/microprocessor to the internet.
To connect microprocessor-controlled devices to the cloud and collect data, Krasamo designs and builds efficient open-source embedded applications (real-time kernel) that meet real-time requirements and support microcontrollers’ capacities and powers. Using the FreeRTOS open-source standard solution for microprocessors and microcontrollers can connect devices to cloud services, edge devices, and mobile devices directly with Bluetooth.
Benefits of a kernel include task prioritization, time-related API, independent modules, easier testing, code reuse, event-driven executable code, etc.
Edge Computing. The deployment of storage and processing resources close to the point where data is generated. The main benefits are reduced latency for real-time applications and reduced network loads by processing data locally.
IoT Edge Gateway
A gateway is a hardware device that receives and processes data from devices, bridges communication between devices (managing protocol translation and interoperability tasks), and controls field devices before sending data to the cloud.
IoT applications are the software that creates the functionality and user experience associated with IoT products, improving efficiency in operations and controlling the equipment. Applications run on-premises, in the cloud or the IoT platform. Application and analytics software provide high value to IoT projects.
IoT Apps: Mobile Apps. A Mobile App is a software application that runs on a mobile device and is used to monitor, manage, and control IoT devices. Mobile Apps in IoT provide a next level of control and flexibility to business operations.
There are many IoT solutions examples. One illustration could be an airline worker moving around a large airport, accessing a Mobile App to locate a moving asset; or, perhaps, a factory worker is notified through a Mobile App about a machine malfunctioning.
The Mobile App is where the user experience (UX) and user interface (UI) takes place and interacts with the IoT solution. Since the Mobile App is the main point of user interaction, developing a well-designed application that customers will identify as delightful and highly reliable is crucial for success.
IoT projects have unique architectures that vary by use case and context, each with particular requirements. There are many ways to connect and manage devices, applications, technologies, technical skillsets, and financial resources, for example. The IoT architecture considers these requirements and capabilities to maintain consistent results. IoT architects ensure they build and IoT architecture considering the insecure nature of IoT devices taking into considerations common attacks techniques and vulnerabilities of IoT devices.
IoT platforms are the middleware or software that provides services to deploy the IoT strategy. Many vendors offer platform-as-a-service (PaaS) targeted to specific segments and use cases or industry focus, with differing capabilities and strengths. This can become complex depending on the business case and the requirements of the project.
Cloud vendors must have a flexible deployment model that allows the IoT model to grow. Also, they must provide capabilities such as device management, connectivity, network management, application development, integration tools, monitoring, security, access control, event processing, developer resources, and a marketplace for partners solutions.
IoT environments must be designed with robust IoT device security standards as well, such as end-to-end security and privacy as a fundamental feature to secure users and networks.
Private Cloud (On-Prem or Corporate Cloud). Computing services with on-premises computer infrastructure. With dedicated resources and customization, private clouds provide many of the benefits of public clouds.
Public Cloud. Computing on-demand services offered by third-parties. Public clouds provide cost savings when compared with maintaining on-premise infrastructures. In addition, security is more sophisticated when using public clouds.
Google Cloud Platform/Cloud IoT Core. A complete solution that runs on Google’s serverless infrastructure and supports IoT operations efficiently by building integrated IoT models with advanced analytics services. Devices are connected through MQTT and HTTP protocols.
Microsoft Azure/Azure IoT. A fully open, flexible platform that provides services to build and customize IoT solutions with full support and partner community.
Amazon AWS/AWS IoT. An IoT platform built on a secure cloud infrastructure offering all the services needed to build a complete IoT solution. Includes services such as data management, analytics, artificial intelligence, security, etc.
Other Software Platforms. These are open-source platforms that run on top of Google Cloud, AWS, or Azure to analyze and visualize data in real-time—specialized in niche applications such as artificial intelligence and virtual reality.
Hybrid Cloud. A computing environment that shares data and applications between public and private clouds with savings, higher flexibility, and scalability.
Microservices in IoT
Considered the best way to evolve and obtain scalability in IoT projects, microservices includes a collection of services with business capabilities for application deployment. Identifying and defining microservices is a key aspect of IoT architecture design that makes business sense and enables development and independent deployment of applications in the cloud. Services collaborate through application programming interfaces (APIs).
Analytics & Data Management
Big Data & Analytics. Large amounts of data are generated by connected devices. These data are analyzed in real-time through automated actions, insights, and intelligence—all of which lead to better decisions in business.
Descriptive Analytics. Describes and interprets historical data within a set period.
Predictive Analytics. Identifies and analyzes historical data to assess future events.
Prescriptive Analytics. Analyzes data collected from algorithm models to make complex decisions.
Artificial Intelligence/Machine Learning (AI/ML). IoT integrates data streams with AI systems for better decision-making. AI/ML helps build models based on data that capture customers’ behaviors and patterns in order to improve existing products or build new products.