WHITEPAPERS
What Are IoT Devices? Learn These Basics Before Building or Deploying
In this guide, we cover the basics that any company should understand about IoT devices before undertaking an IoT project.
Ask any CTO which technologies are poised to change the world and it’s likely that the Internet of Things (IoT) ranks at the top of their list. Indeed, IoT devices have the potential to fundamentally disrupt almost everything about the way we live: how we do business, commute to work, monitor our health, and even keep our pet fish alive. As a result, more companies are seeking to build and deploy their own IoT devices to outpace their competitors and step in time with the demands of Industry 4.0.
The term Internet of Things is used to describe the massive network of connected devices and systems that collect and exchange data — not to be confused with a connected device. We’ve been using connected devices, like printers hooked up to the internet, for example, for quite some time now. But IoT technology can transform connected devices to smart devices, which demonstrate intelligent behavior that enables them to react to real-world situations and even predict the needs of their users.
If that sounds complicated, that’s because it is. Creating and managing IoT devices is complex, but that shouldn’t stop innovators from taking the leap. As a service partner dedicated to developing some of the most innovative IoT projects out there, we’re here to help make the IoT more accessible to those ready to harness its potential.
In this guide, you’ll discover these basics that any company should understand about IoT devices before undertaking an IoT project.
- What Are IoT Devices, Anyway?
- The Types of IoT Devices
- How Do IoT Devices Work?
- The Benefits of IoT Devices
- What Does IoT Device Management Mean, And Why Does It Matter?
- IoT Device Connectivity and Networking
- IoT Device Security
- Approaches to Building and Deploying IoT Devices
What Are IoT Devices, Anyway?
An Internet of Things (IoT) device is any piece of physical hardware (a “thing,” if you will) that’s programmed to transmit data over the internet or other networks. IoT technology is often integrated with physical objects, like sensors and appliances. It can also be embedded directly into hardware such as industrial equipment, mobile devices, and other IoT devices.
IoT devices collect data from their environment — things like temperature, heart rate, etc. — and exchange that information with other devices and systems in an ecosystem. An IoT-enabled thermostat can detect the room temperature and adjust the heating or air conditioning appropriately, for example. As such, IoT devices create a new dimension of interactions between people and the everyday objects that make up their environment.
The Types of IoT Devices
When we talk about IoT devices, we’re not just referring to any device connected to the internet. IoT devices include products with real-world functionality that create a network of connected devices, and they vary in terms of connectivity methods and device capabilities. Devices include:
Microcontrollers, which range from low-cost, easy to implement, battery-powered devices with basic functionality to more powerful microcontrollers with flexible software and package management capabilities.
Microprocessors that can be as powerful as a server and connect with multiple devices to provide computing, analytics, software, and firmware updates. These can be integrated into an IoT solution and change functionality as a part of the ongoing development process.
Mobile devices, like smartphones and tablets, which can be used as Bluetooth gateways for powering and monitoring IoT-related applications.
As far as applications go, you’ll commonly see IoT devices used in consumer, enterprise, and industrial environments.
Consumer IoT
Consumer applications of IoT devices empower intelligent behavior in common household products, from smart appliances like TVs and refrigerators to home security systems like remote-controlled alarms and cameras. Smart devices for consumers also include wearable devices, like fitness trackers and Apple Watches, as well as virtual assistants like Amazon’s Alexa and Google Nest.
Commercial & Enterprise IoT
Commercial and enterprise applications can range from medical devices to transportation systems and building automation.
- Healthcare IoT devices span from wearable heart monitors to more advanced implanted technologies, like pacemakers and hearing aids. This connects healthcare professionals with a patient’s vital signs in real-time, enabling quick, accurate, and data-driven decision-making.
- Enterprise-level IoT devices extend from home automation to building automation, deploying anywhere from 10 to 100,000 sensors. Applications include managing safety and security, monitoring occupancy and operations, and maintaining internal environment and conditions.
- Infrastructure IoT devices can connect smart products across various infrastructure systems. For example, IoT devices interconnect a vehicle, infrastructure, and drivers in a transportation system by enabling smart traffic control, vehicle-to-vehicle communication, autonomous driving, road condition alerting, and more.
Industrial IoT
Industrial IoT devices are designed for collecting and exchanging data from manufacturing and other industrial environments. Common applications include using sensors to monitor connected equipment, assembly lines, and operational technologies. Furthermore, IoT devices can be utilized for optimizing manufacturing processes by monitoring for battery utilization, resource availability, or power quality. They can also help prevent unexpected downtimes through predictive maintenance and anomaly detection.
How Do IoT Devices Work?
The basic function of any IoT device, regardless of the context or application, can be boiled down to one fundamental goal: to collect data and share it across a network. Here’s how that works.
- IoT devices are connected to a network. In this way, they can communicate and interact with each other without actually establishing a physical connection. The network they communicate with may include cellular, satellite, WiFi to Bluetooth, low-power wide-area networks (LPWAN), or an ethernet cable. The most popular networks used, however, are WiFi and Bluetooth. Some devices are accessible directly over the public internet, but a majority are integrated over a local private network for security purposes.
- Data is collected by the devices and sent over the network to an IoT gateway or other edge device for centralized data storage. Depending on the application, that might look like reading air quality from a pollution sensor or recording a live video for a smart security system, for example.
- Next, the data is analyzed locally on the centralized device, or sent to the cloud for processing. At this point, the centralized device can synchronize the behavior of the other edge devices in the network, or orchestrate complex actions like making decisions based on what’s happening to the system as a whole. An example of this is turning on all of the lights outside when motion is detected from a single sensor, or calling emergency services when an edge device sends a specific signal.
- Finally, the data is made available to the end user in a way that’s easily understood (if the interface is designed well). That could look like receiving live video feeds directly to your phone from a remote monitoring camera, or getting a text alert when temperatures get too high in a certain area.
The Benefits of IoT Devices
IoT devices are designed to make life easier — and to make processes more intelligent. The benefits of integrating IoT devices into your business are many, including:
- Automation and control over otherwise manual data collection and processes
- Real-time monitoring capabilities at scale for any number of devices
- Improved productivity by reducing manual tasks
- Enabling predictive maintenance for machines and parts to reduce downtime
- Leveraging data and machine learning to increase operational efficiency and management
- Scheduled maintenance can ensure compliance with required regulations that are traditionally prone to human error
- Enhanced customer experience through:
- Customization and personalization of home and personal technology
- Various user interfaces (email, text, app notification)
- Understanding customer behavior
- Improving customer service through alerting to issues on a device, notifying customers of needed maintenance, identifying end of warranty dates, etc.
What Does IoT Device Management Mean, and Why Does It Matter?
Implementing IoT technology can quickly become a highly complex and resource intensive operation, and will only grow in complexity and scale as more is invested into the technology.
Just as smartphones and laptops need regular updates for security, features, and bugs, your IoT devices will require updates as well. To keep the system running at peak capacity, each individual IoT device requires regular management throughout its lifecycle to maintain device health, connectivity, and security.
To that end, IoT device management refers to the processes, approach, and tooling that help remotely handle the complex infrastructure of interconnected IoT devices. Successful IoT device management starts by planning for the entire lifecycle of devices and applications. After all, these solutions are intended to become an integral part of an enterprise’s technical ecosystem over several years.
This means that it’s critical to develop and maintain a robust IoT device management strategy — or to partner with a trusted IoT technology provider to oversee this strategy for your business.
Device Management Best Practices
A complex IoT device infrastructure requires a supportive power grid, reliable communication network access, data processing, and storage capabilities. Devices need to be registered, configured, integrated, maintained, and monitored. Additionally, devices need to uphold industry security standards to defend against breaches and protect private consumer data.
The elements of this device management system and lifecycle include:
- Initial provisioning of device software and configuration so as not to require user input
- Registering devices in the system before they are actually connected
- Dynamic partitioning for making changes to software and configuration without disrupting functionality
- Remote monitoring and diagnostics in a centralized dashboard where all device data and behavior can be observed
- Bulk device management through dynamic hierarchies and logical groupings to increase deployment and maintenance efficiency
- Remote configuration of devices already in use by the system
- Software and firmware updates via continuous integration and continuous deployment (CI/CD) pipelines
- Integration & extensibility for access to robust APIs and interfacing with platforms through software development kits (SDKs)
- Decommissioning old IoT devices that are no longer in use
IoT Device Management Platforms
Off-the-shelf services — known as IoT device management platforms — provide tools for building, managing, and deploying IoT applications, allowing enterprises to manage enterprise IoT solutions themselves. Depending on existing in-house expertise, that might look like implementing little to no coding, or requiring more complex development skills.
Popular cloud service products like Amazon Web Services (AWS), Google Cloud Platform (GCP), and Microsoft Azure offer products in their cloud ecosystem specifically designed for managing and building IoT-specific applications. These platforms can manage everything from IoT device registry, authentication and security, data storage, connectivity, and analytics.
Other popular device management platforms include:
Selecting the right platform will depend on the functionality and connectivity is required for a given use-case.
IoT Device Connectivity and Networking
IoT infrastructure consists of various layers. Devices in the physical world serve as one layer and IoT device management platforms serve as another. Connectivity and networking bridge the gap between the two.
There are several ways IoT devices can connect to a network and communicate with each other. Often, they’re connected to a centralized hub device or IoT gateway. From there, the data is processed and analyzed on the gateway itself, or it’s sent further upstream to the cloud or other IoT device management platform.
Deciding on a connectivity and networking option will depend on the power and resources available, reliability and security of the connection, and the nature of the IoT application itself. Some of these options include communication protocols such as:
- MQTT (message queuing telemetry transport), a lightweight open message protocol for machine-to-machine (M2M) communication in resource-constrained connections
- LwM2M (lightweight machine-to-machine), a communication protocol for remote device management and telemetry based on REST architecture, designed specifically for IoT and M2M applications
- LPWAN (low-power, wide area network), technologies such as Sigfox and LoRaWAN that minimize power usage and cost while maximizing coverage to cover large sensor networks like smart cities
- HTTP, an endpoint that checks updates and makes requests from a constant connection and web traffic deployments
- WiFi for larger stationary hubs, typically with direct access to a power source, to send large data files over a wide range with maximal speed
- Bluetooth, a wireless technology protocol for devices in close proximity to one another that doesn’t require devices to have a password and consumes less energy than WiFi
IoT Device Security
IoT devices are no stranger to security breaches, which is why the importance of IoT security can’t be overstated. Malicious actors have used various vulnerable IoT devices — from internet-connected gas pumps to medical devices — to infiltrate unwitting victims, launch botnets, and cause millions of dollars in damages.
IoT device security presents a unique challenge due to the sheer number of potential vulnerabilities. Your teams will need to secure:
- the devices themselves
- the devices’ firmware
- any applications that interact with the devices
- the cloud infrastructure that hosts or supports the product
Given the critical nature of IoT device security, it deserves more time and attention than what we can provide here. To learn about detailed best practices for securing your IoT devices, read this whitepaper prepared by our engineering team.
Approaches to Building and Deploying IoT Devices
Building and deploying IoT technology successfully requires various disciplines to work in chorus. You’ll need to create the framework for the physical object — the “thing” — with hardware engineering. The device will require software to connect to the internet and function the way it’s intended. Furthermore, integrating data science and Agile project management into the development process will ensure a more robust end result. Each of these disciplines provide unique contributions.
IoT Hardware Engineering
Hardware is the backbone of the “things” component to the “Internet of Things.” In addition to software and firmware, IoT devices require the physical components necessary to host the technology for sensing, measuring, and interacting with the physical world. This requires development from mechanical, electrical, and firmware engineers who can build, test, and deliver hardware that performs in real-world conditions.
IoT hardware is often bespoke to its specific applications. Prioritizing features, rapid prototyping, creating functional designs, and utilizing hardware debugging tools are just some of the techniques utilized by IoT hardware engineers.
There’s also an important distinction between IoT hardware engineering and traditional hardware engineering — the multidisciplinary nature of IoT projects. In order to work and integrate seamlessly with software and firmware, version control and interdisciplinary communication are paramount. IoT hardware engineers must ensure every member of a project has access to the latest files, designs, and prototype results.
IoT Software Engineering
IoT software engineering involves programming each device with high-quality IoT software and firmware. IoT software engineers leverage resilient, robust languages and frameworks like React, Ruby on Rails, and Python, for developing complex interfaces, maintaining high-quality application code, and implementing core functionality of an application.
For IoT development in particular, software engineers can harness the power of the Elixir programming language and the Phoenix framework for speed and maintainability. Open-source platforms and infrastructure like Nerves allows developers to build, deploy, and securely manage fleets of IoT devices at speed and scale.
Reliable cloud services for data hosting and management like AWS, GCP, and Microsoft Azure enable IoT software engineers to choose the best operating system, programming language, web application platform, and database for an IoT project’s particular needs.
Data Science in IoT Device Development
As you’ve likely gathered by this point, data is a critical component to the IoT. If a “thing” doesn’t send data over the internet — well, it’s not an IoT-enabled device.
Data science uses data to validate assumptions, test hypotheses, identify possibilities, and then help make what’s possible a reality. IoT device development requires strong, data-backed decision making to solve new problems and prototype faster solutions.
But the role of data science in developing IoT devices isn’t just limited to collecting and storing data. In the context of the IoT, data science usually includes data development in the realms of database architecture, data engineering, cloud development, machine learning, as well as applying development and cloud operations best practices to the lifecycle of the project and product itself.
What’s more, IoT devices don’t exist in isolation, so neither should the development process. Data scientists can work closely with hardware, software, firmware, and design to promote collaborative decision making and communication throughout an IoT project.
Agile Development Methodology
One of the keys to successfully building and deploying an IoT project is an iterative approach to both software development and hardware engineering.
At Very, for example, each project begins with a technical design sprint to define the roadmap and mitigate potential risks. We build on that original sprint with an Agile IoT development process to rapidly prototype and iterate on products.
Companies looking to innovate in the IoT space would be wise to follow the Agile methodology in their own IoT ventures. Why? Agile empowers companies to beat the competition to market by eliminating silos, gathering feedback quickly, testing early and often, and being able to adapt to change.
Tying It All Together – a Case Study in IoT Device Development
A good example of our process can be found in our work with Tattlebox, the provider of low-power security devices that can track assets and update owners from anywhere in the world. Thanks to our Agile hardware engineering methods, the Very team could prototype rapidly, enabling Tattlebox to test assumptions, generate data, and get the devices into the hands of potential customers as quickly as possible.