Streamlining IoT Device Provisioning

By Phil Dawsey

With elegant solutions, companies can overcome challenges to scalability, enabling billions of devices to enter the field.


At this point, we’ve heard over and over about how big the Internet of Things (IoT) will be. Intel estimates that up to 200 billion devices will be connected by 2020. That’s a lot of things we need to connect.

Many of these devices will be in an enterprise setting, with McKinsey estimating 70 percent of value to be captured by business-to-business applications like monitoring a gas pipeline, tracking building energy use or measuring soil moisture on a farm—not the cool smart-home gadgets like thermostats and refrigerators.

To reach these heady forecasts, there are a variety of challenges to overcome, one of which is how to provision all these new devices and bring them online. The process of provisioning involves getting each device configured to send data to the right place and authenticate it on the network. This establishes a trusted identity for each device, be it a laptop, a database, a tiny sensor or any other data-producing or -receiving node.

Provisioning is difficult and time-consuming at large-scale. We can all agree that typing in security tokens, configuring connectivity and installing firmware for tens of thousands of sensors on farms owned by a commercial grower would cost a lot and take a long time. Let’s look at how devices are configured and brought online now, and how we might be able to simplify and speed up this process in the future.

Embedded Hardware for Makers
For the makers community that works with raw embedded hardware like Raspberry Pis, Arduinos and BeagleBones, there’s a bit of manual work involved in getting data from a sensor to the cloud using an IoT platform. At a high level, the process includes:
• Installing an operating system
• Installing firmware
• Defining the data format and who should receive the data
• Creating a virtual device in the platform device management dashboard
• Applying a security key to the device for authentication
• Configuring network connectivity

Of course, this list is very simplified and inevitable troubleshooting will be required as each step has myriad possibilities—choose from many platforms, operating systems, network protocols, etc. It’s easy to see why these do-it-yourself projects take a lot of tinkering, but this process isn’t meant to be scalable.

Consumer Products
Most of us are more familiar with the process of getting a consumer product up and running. This generally involves downloading an app and going through a setup wizard. Setting up an Amazon Echo, for example, requires this process and is fairly painless, as long as you’re only doing it once. Consumer products have actually done a good job of simplifying this process and making it as easy and fail-proof as possible, but a single uniform product connecting via Wi-Fi only and not interacting with devices from other vendors is a bit simpler than what most IoT implementations will be looking for.

Enterprise Implementations
Most IoT projects for companies are in early stages, so the number of devices hasn’t yet ballooned. Current processes are not too far from the process the maker community goes through, except that hardware and software is customized for each implementation. For a sensor that tells you if a parking spot is full or not, the maker process is followed to work out any kinks and is then repeated many times over, using configurations that have been vetted and tested. While the initial vetting and testing will always be required for any new hardware and software combination, the scaling of a known configuration is where the greatest impact can be made as projects grow and a greater diversity of things are connected.

The Future of Provisioning
Once hardware, software, configuration, network and other decisions have been made, there are several parts of the provisioning process that can be streamlined and automated for large-scale enterprise implementations. These techniques require significant planning up front to execute, which is why most project don’t implement them initially, as most IoT projects begin small but eventually grow large. As enterprise becomes more comfortable with IoT and project size and scope increase, these are some of the steps that will streamline device provisioning and overall project execution:
• Flashing firmware with a generic configuration onto hardware at the factory
• Pre-authenticating certain networks that are trusted and secure—the device can then connect and automatically update configuration files from a server based on device information, such as a serial number or another identifier
• Pre-configuring a gateway to connect and configuring devices with specific certificates
• Including a cloning feature and ability to import device IDs in the IoT platform device manager

These changes, along with further advances in software and hardware, can make scaling IoT implementations feasible when numbers reach tens of thousands and even millions of devices. For example, take the commercial grower mentioned before, with hundreds of farms across the country who wants to install soil moisture sensors and smart irrigation systems. If that grower could simply perform the physical installation, power up the devices and have it show up on the IoT platform device manager for a final check, the time and cost savings would be immense. This automation of the provisioning process will be vital as projects increase in size, and we already have the tools available to us.

In the end, scale and profitability of projects often end up hinging, to some degree, on mundane details like device provisioning. To make a more seamless provisioning process a reality, a lot of parties need to work together, from hardware manufacturers to software developers to network providers and more. With elegant solutions, we can expect to overcome challenges to scalability posed by device provisioning that will enable us to get those billions of devices into the field.

Phil Dawsey is a creative technology professional with more than 10 years of global experience leading diverse teams in solar, energy efficiency and pharmaceuticals. He currently leads marketing for infiswift, developing go-to-market strategy and evangelizing infiswift’s enterprise IoT solutions. Phil graduated from Northwestern University with a Bachelor of Science degree in mechanical engineering and an MBA degree from Berkeley-Haas.