No content found


This is first of a three-part series on the Internet of Things with Atmel’s Tom Vu and Internet of Things Council member Michael Koster

Tom Vu (TV):  What inspired you to build the IoT Toolkit and educate the IoT community about data models for the Internet of Things?

Michael Koster (MK):

Screen Shot 2013-04-18 at 1.58.41 PM

Michael Koster.

A little over a year ago my partner and I started researching the Internet of Things (IoT), with the idea of creating a system as a sort of “valet” to help manage things in our lives. At the time we lived off the grid, and generated our own energy, maintained our own water system, and spent significant time away from home. We looked at what was available, and there was nothing available in ready-to-use systems that would not require at least a layer of programming to work together in the ways we imagined.

Interoperability between multiple devices is quickly becoming a common feature as people try to build their own ‘Internet of Things’—getting all their smart, devices to be connected to the “cloud.” Once they buy the device on Kickstarter, they can easily enjoy the remote control ability and automation afforded for a while. We found a lot of vendors selling devices that connected to services—services such as the Internet.  Some vendors offered open source clients but still tied the devices to their service. We wanted to pull together devices with multiple services, such as combining the home environmental control, energy management, and water, garden, and livestock automation. This requires multiple devices connected together by algorithms, controlling valves, doors, fans, lights, blinds, batteries, etc.  Very often, the vertically integrated devices and services didn’t allow all the devices to be connected because they weren’t built on a standard that was interoperable.

Soon they started to think about ideas on how they could create new relationships and interactions between devices and humans by integrating devices from two or three of these systems together. They quickly found out connecting the systems were quite complex.

This is becoming more common as people try to build their own Internet of Things. Once they buy the device on Kickstarter, they enjoy the remote control ability and automation afforded for a while. Soon they start to think up ideas about how they could create new relationships and interactions between things and between themselves and things by integrating devices from two or three of these systems together. They quickly find out that it’s not straightforward.

There is a service, IFTTT (IF This Then That) which has software connectors that hook up to the APIs of some popular IoT services and provides a rule engine to apply simple logic predicates to conditions and generate actions, if this, then that. All well and a good proof of the need, but not sufficient for the general use case.

We then decided to investigate the DIY approach, and started from the bottom, through online resources like Sparkfun and Evil Mad Science. We also used components like Arduino, many of which are driven by ATmega or ARM Cortex-M3, both are AVR and ARM microcontrollers with a strong open hardware, IDE and ecosystem tied to it. We put together a few networkable connected sensors, like a weather station, environmental sensors, ambient LED displays, and power monitoring. We found it relatively easy to connect these to Pachube, for monitoring and recording, and quickly discovered a number of limitations to what we wanted to accomplish.

We discovered the same situation with the vertically integrated systems, that there was no open, standard way to connect many different devices together and build a larger application to manage things together. Some Platform-As-A-Service vendors run rules engines, similar to IFTTT, and other application logic inside their platform, but we were looking for a way that enabled us to choose where we wanted to run the software, particularly in both the cloud service and in a local hardware gateway. This allowed more embedded devices and connected sensors to potentially grow into a larger system without a central hub, where IoT is being driven.

This is important because our network connection was often impacted by weather and other variables. We realized that everyone would be impacted to some degree, even with DSL or cable service. Our experience with frequent service interruptions taught us the importance of being able to tolerate interruptions in the network connection. Even if the network connection could be made reliable enough, the services are subject to outages and “latency events”, which make them unsuitable for critical services without backup.

After a few months of inquiry and investigation, we decided a robust, common way of interacting between all devices and things was a requirement. It felt like the early days of the Internet. Before the web, before the invention of hyperlinking, HTML and the http protocol, there were no common ways for people to interact within a document, such as creating hyperlinks.

The Internet of Things is at a similar stage of development. IoT needs a standard to interact with other machines; the standard enabling software for easier interaction is essential.

A platform that provides a base set of common tools and services, similar to an operating system, is also a requirement for IoT users. This platform would enable them to get started quickly with their IoT ideas.

Accessibility and interoperability were key to enable a user to start building smart, connected devices in the era of the Internet of Things.

It became clear that if we could find a standard way to do what everyone expects the Internet of Things to do, and make it as easily accessible and usable as the web is today, that we could help enable the Internet of Things to scale and evolve into what conceivably is the next stage of the internet.

We studied a number of IoT use cases, collaborated with the IoT community, and began to map out what was needed in a common set of tools everyone could use, share, contribute, distribute, and enhance. We wanted to take what already existed in standards, infrastructure, and system components, and build an open source platform that we, and others, could use to create our own end-to-end IoT systems and products.

In the platform, we wanted to provide machine to machine (M2M) connections from sensors and devices, along with application software, and re-use common data models that can easily span across devices and other IoT data streams to build out a common language for descriptions and connections.

We started this process with Social Media, reaching out to like-minded people on LinkedIn. During our investigation, we learned that the issues we discovered weren’t widely known and discussed. Many people there were using no common tools for IoT.

We realized community learning was required to an already steep learning curve on some technologies like RDF and Linked Data. This was one of the reasons we started this IoT blog series to educate people about semantic data modeling and Linked Data driven APIs. Around the same time, we started the Open Source Internet of Things Meet Up in Silicon Valley to meet other like-minded people and build the community.

The founding principle is to create a community around Open Source and Internet of Things.  The gravitating principles follow two successful fundamentals: community and interoperability.  In fact, the very nature of Internet of Things resonates well with open source and Conway’s Law. We want to build a system. Create the structure we envision, based on community and sharing.

Tomorrow Read Part 2: The IoT Toolkit.

Tom Vu joined Atmel in 2012 as Digital Marketing Extraordinaire looking to help transform and optimize the conductivity of Atmel’s digital landscape.  Tom is an avid maker and leader in the many digital facets of marketing.  Tom’s traversal into the semi-conductor space stems from a diverse start-up background, where the hyper-ideation brewing from the software space are vital to his keen technology compass for direction and execution.  

  • Lascar Anderssen

    Another overcomplicated attempt to “standardize” un-standardizable ever changing communications. There is a reason data integration and translation (eg. languages) are some of the oldest and persistent industries since ancient times. I doubt that will change.

    However the solution has been found and it is not making sure everyone talks the same language (that usually involves a big army and force). The solution has to take reality of many languages/data coexisting as part of solution. All that is needed is to know closest dude X who can translate the meaning from your language to foreign dialect, or at least point/ask next closes dude Z who can help and so forth…

    With abundance of online agent services there will be always close enough (in dude to dude hops) agent to translate the meaning, Whether these translators are centralized (Google translate anyone?) or decentralized (mash-able APIs), specialized (protocol A to protocol B only) or generic library does not matter.

    How dose a IoT thing finds one – now that is the only thing you might want to standardize and make as simple as HTTP. Torrent “Magnet Links” solve exactly that problem, btw.

    Now that will work on M2M communication from data meaning translation point of view. For hardware comms it clearly will be wireless/light and there is only that many pretty good standards already in place, pick your favorite dongle.

  • chuck

    Slightly off topic but here goes-
    In the picture that accompanies this post on the main page there’s an IC mounted on a board. What are these particular boards called and is there another source besides Radio Shack? The ones I use are labeled DIP-1. I want to buy some in bulk but RS is too high.

    • Pedro

      Protoboard/perfboard/PC board/stripboard/veroboard/breadboard.

      I buy from RS/DigiKey/Farnell/Mouser in the UK.

    • Daniel

      Another good source is protostack (

  • Michael Holdmann

    XMPP has been standardized since 2004, it is an open standard and predicted by #Gartner to be the de-facto communications protocol for the Internet by 2015. Coversant inc wrote a white paper on this SoapBox: A Platform to Power the Industrial Internet and can be accessed at the Coversant web site. The paper discusses:

    – proliferation of smart devices on the internet
    – protocols that will allow the communication of those devices in real time
    – the security of the connections and data
    – Design challenges and solutions in a multi-core architecture
    – the need for more devices to communicate in a reduced lower cost infrastructure