The Big and the Small of IoT
The world of the Internet of Things (IoT) is commonly described within a swirl of superlatives: ”billions of devices,” “brand new business models,” “the destruction of business as we know it,” and the list goes on. Such a technological revolution seems too big to be tamed. So how is a cloud platform developer to approach and assimilate such a beast?
Our customers have posed this same question to us here at Apcera. Interestingly, some of these customers already have pretty specific desires or “proof points” in mind as they approach the whole concept of purpose-built IoT.
Notice I said purpose-built.
The IoT discussions and discoveries we are engaged in are all about tackling real world challenges involving business assets, processes and optimizations—all within a framework of governance, risk management and compliance. It’s very clear when examining their business strategies that addressing the former without regard for GRC is simply a non-starter for IoT in their enterprises.
Fortunately, the delivery of scalable cloud-native functionality within an environment of trust is Apcera’s prime market differentiation. The challenge, however, was that customers wanted us to show them (instead of tell them) how Apcera delivered a enterprise-grade, IoT-ready environment. And because customer need around IoT is limitlessly diverse, it wasn’t practical (or scalable) to create proof-of-concept demos on an ad hoc basis.
After several conversations with internal and external customers, I was able to identify and distill a broad set of purpose-built architecture requirements as illustrated by the following graphic:
With this design as my guide, I began to architect a physical device that could provide a sandbox environment to prototype and demonstrate an expansive array IoT use cases for customers all over the globe. I built “IoT in a Box”.
IoT in a Box
Despite its small size the IoT in a Box packs plenty of computing muscle. As part of making it business-relevant, I wanted to ensure that our Secure Channel IoT was leveraging the full Device-to-Cloud functionality—employing all the attributes that make IoT a game changer. I wanted the end devices to instrument four key data and event representations, move those representations through diverse network topologies to a cloud environment in which the scaling, application optimization and integration would seamlessly execute on the “Instrument, Evaluate, Inform and Act” prescription. Ensuring demonstrable trust compute was in place to support the IoT prescription was of paramount importance for our clients.
To accurately emulate IoT functionality, I needed to use a broad array of software and hardware technologies. It may seem overwhelming, but building IoT in a Box wasn’t as difficult you would think. The Apcera Platform is unopinionated and served as the foundation/glue that seamlessly connected all the technologies together. Here is a list of some of the tech used in the build:
5x Raspberry Pi’s
2x Barcode readers
1x Magnetic stripe reader
1x Video camera
1x 4-digit 8-segment display
1x 4 digit 1,2,3,4 keypad
1x Fingerprint reader
1x 64x32 LED display
1x Power supply
1x Ethernet switch
The Apcera Platform
ASC (Apcera Serverless Compute)
REST / JSON
SoftEther VPN Bridge
Devices & Gateways
Our IoT in a Box is built around five Raspberry Pi boards. For those that don’t know about these little wonders they are small (approximately 2.5” x 3”), inexpensive computers that run a Debian-based version of Linux called Raspbian. They each have 4 Core Arm CPU, 1GB RAM, 4 USB ports, built in WiFi, an Ethernet port, HDMI port and power port. Did I mention they were inexpensive? Each one costs only about US$40.
These particular devices allow us to create different scenarios to demonstrate how best to use Apcera as a backend for IoT. With this set up I can:
Use the two barcode readers to represent the checking in and out of baggage at an airport.
Leverage those same barcode readers in a supply chain logistics scenario.
Use the magnetic stripe reader could represent environmental security on a door.
And chain multiple devices together to create a larger demo, like scan a fingerprint, enter a PIN and use video face recognition to unlock a door (or in our case, to unlock the individual locks in the display in the above picture).
When I explain what’s inside this little box and what it can do, the first question customers ask is “How did you get this through airport security?” Thankfully, it hasn’t proven to be any trouble yet. Let’s hope this blog post doesn’t jinx me! The airport question is usually followed by a number of questions around networking, security and functionality.
Apcera provides secure blockchain communications from IoT devices to backend databases using GuardTime and NATS. This takes security to the next level—stay tuned for a followup blog post where I’ll do a deep dive on the security features.
The Apcera backend is leveraged to run a series of microservices and each of these stateless applications can be scaled individually to handle expected load.
The WiFi microservice, written in Python, is a great example of Apcera Serverless Computing (ASC). As each IoT device pumps data to Apcera, a Python function is started to process the data package and terminates when that data is successfully inserted into Cassandra. The serverless computing component within Apcera can also be setup so that there are a specified number of pre-running functions. In this way, the serverless computing environment doesn’t have to “pay the tax” of starting a container for each data payload, allowing for much faster processing of the data. Apcera also fits into an existing ecosystem of SaaS applications, including Apigee, SumoLogic, AppDynamics and many others.
Functions & Processes
As these examples make abundantly clear, our IoT in a Box can be leveraged across multiple verticals: Healthcare (expected to be a 400 billion-strong IoT market by 2022), Shipping, Supply Chain, Energy (smart meters anyone?), Automotive (Autonomous parking payments or oil changes?). The possibilities are nearly endless.
One of the RPIs in our IoT in a Box is dedicated to gathering WiFi signal strength data and GPS location data. Utilizing these sensors, the IoT device could be attached to a wheelchair that is moving around an airport and sampling WiFi signal strength every few seconds. With this data, the airport can track their wheelchairs and know the WiFi signal strength at any given time. This data can then be pumped to a Cassandra or any backend database correlating this information with flight arrival data. What is the end result? Detailed reporting on the airport WiFi Customer Experience. This could lead to the airport having a higher Airport Service Quality (ASQ) rating, providing financial benefits to the airport.
Stay tuned to the Apcera Blog as I’ll be following up with more ways we’re using IoT in and Box and will do some deep dives on it’s functionality. If you have a specific question about or comment about IoT in a Box, reach out to us on Twitter @Apcera.
July 07, 2016