IoT Metadata. Beautiful, beautiful metadata. July 2, 2014 | by Sean Lorenz
IoT metadata will play a critical role in the near future
Both Google (Nest) and Apple (HomeKit) recently announced developer programs that gave us a sneak peek into future directions for how these two tech behemoths plan to build a smarter connected home. These companies have inherently different strategies,one being primarily a sleek consumer hardware company and the other a software/machine learning/data company, but I found one thing that both the HomeKit and Nest Developer Programs have in common — beautiful, thoughtful data structures that will lend itself to adding key bits of metadata to drive context.
Being both a minimalist freak obsessed with orderliness AND a total nerd, exploring the single Nest JSON data object was like I died and went to IoT API heaven. It’s simple to understand with only two main hierarchy elements: 1) devices and 2) structures. Within devices, you get a breakdown of each product (i.e., thermostats, smoke alarms, etc.). The final level under devices is where the metadata resides for each device so that you can view device IDs, lifecycle status, permissions, sensor readings, setting forecasts, etc. The structures element simply gives a high-level representation of what is connected to the home itself and away/ETA fields that would be important for, say, a car to easily tell your home when you’ll pulling up the driveway. Apple’s HomeKit framework, on the other hand, seems to be clustering their API data hierarchy in a similar fashion to Google, but focusing more on the locations within the home itself. This is reflected in their top-level object structure: Homes, Rooms, Accessories, Services, and Zones.
The Nest Developer Program’s metadata structure had me thinking about how much more we can do with contextual metadata across the Internet of Things. Take Twitter’s REST API for example. I was shocked at the treasure trove of metadata hidden inside each and every one of the 500 million tweets sent across the globe every day. Those 140 characters are just the gateway to the castle for developers. Knowing the number of user mentions, geolocation, URLs, profile statistics, friend counts and dozens of other metadata fields opens up a realm of possibilities. What if, like Twitter and Nest, we could begin attaching more robust metadata to other IoT datastreams as well?
So how would this utopian metadata schema work in the real world? Imagine you own a vending machine company and you want to connect all of your machines to the Internet so that you can begin tracking things like consumer dwell time, product popularity, machine part breakdowns, whether or not the machine was tipped to release a Snickers bar (you know you’ve done it), location manager apps, food brand supply level notifications, and on and on. Your vending machine sends accelerometer, motion, temperature, and row supply count sensor data up to Xively, but what next? How can we couple this sensor data with external, context-based information that is correlated in time with data events happening at the vending machine itself?
Metadata fields like geolocation, third party services that have access to that vending machine (SFDC, SAP, vendor management, billing), device status, admin and user access arrays, the local temperature outside, inputs from other connected devices in the vicinity, publish and/or subscribe access, a list of each sensor or actuator on the machine along with their statuses…. Okay, I will stop there but you get the picture. The point here is that no connected product is an island. The more we connect humans and things together, the more interconnected their relationships get. And that means our connected products or services will need more context outside of their own sensors and actuators to better interact with the people using them.
Collecting all this metadata begs the question: What do you do with it all? Just like the Twitter metadata mentioned earlier, the real magic for companies is how they explore and make sense of all that data to create meaningful and useful services and actions for end users, partners, vendors, technicians, and any other human being interacting with that product on a daily basis. Companies like Twitter, Google and Apple get this concept and are looking to other companies to take advantage of the vast amounts of metadata out there in order to create smarter, more context-rich connected products and services.