The CeBIT 2014 Computer Trade Show
RIOT: an open source operating system for the Internet of Things
© Inria / Photo G. Maisonneuve
At the occasion of CeBIT (the largest computer trade show in the world, held from March 10th to 14th in Hanover, Germany), Emmanuel Baccelli, researcher at Inria and invited professor at the Freie Universität in Berlin, will present the RIOT operating system, which has been specially designed for the Internet of Things.
What exactly is the Internet of Things (IoT)?
The IoT aims to facilitate large-scale communication between all kinds of objects on the one hand, and the interaction between humans and objects on the other hand. Achieving this aim involves not only equipping objects with communication functions at low cost, but also fine-tuning the software programs that govern interaction between objects so as to satisfy interoperability criteria and constraints in terms of memory size, computation capacity and energy consumption. Currently, the most widespread examples of IoT are found in the field of home automation and stock management, but automation of the human environment opens up numerous other possibilities. I believe that the Internet of Things will transform our societies as radically as the advent of the Internet itself has done over the last two decades. Our interface with the Internet will no longer predominantly be a screen, but rather objects themselves.
What will your presentation at CeBIT consist of?
It will feature a cheap watch, based on a 16-bit micro-controller, that interacts with its environment thanks to a simple application on the operating system (OS) that we have developed, called RIOT. This watch, together with sensors equipped with an accelerometer, control the colours of the lights of our booth. The important thing is to show the simplicity of programming with RIOT, and how, using the same code base, this platform can establish communication between a wide range of IoT hardware.
Was this adaptability one of your priorities?
Yes, there is a need to adapt to the specific features of IoT hardware. In particular, RIOT requires a very little random-access memory (RAM) to be able to operate (a minimum of 1.5 kB). A manufacturer that produces an object that was not originally designed to be connected to the Internet, such as a watch or a refrigerator, will only be prepared to add IoT connectivity to a device if the additional price is negligible. Thanks to RIOT and to recent progress on hardware, everyday objects will be able to interconnect very easily, and to communicate with other Internet hosts such as smartphones. It is expected that many applications will be able to use this extension of the Internet. The strength of RIOT is that it can efficiently connect and operate a very wide range of objects that are heterogeneous in terms of dedicated memory resources and calculation capacity and in architectural terms, ranging from 16 bit to 32 bit.
Positioning RIOT as the Linux of the IoT
Why did you choose to make RIOT open source?
RIOT is of course free and its code is available online. This is a key pre-requisite to develop robust and durable software, on a global scale. Open source makes it possible for the code base to benefit from continuous contributions and fixes from a lively community of developers. The choice of the name RIOT (and its connotations) was not neutral, aside of an obvious association with IoT (Internet of Things). The team of researchers and hackers who started the project wished to give it a revolutionary, organic and collective character.
How do you see your contribution to the IoT?
Just a few years ago, each mobile phone manufacturer used its own proprietary, fairly primitive OS. It was only when two of them, i.e. Android and iOS, became dominant, that this sector took on a coherent structure and underwent a revolution by giving third-party developers the opportunity to develop applications freely, thus multiplying enormously the sophistication and speed of development of these software platforms. In the case of RIOT, we seek to foster a similar revolution in the field of the Internet of Things, which is still currently at the stage of a myriad of primitive operating systems. Our aim is to give birth to a vibrant, efficient software ecosystem for the IoT, and in this context we believe that RIOT can be the catalyst, in a way similar to how Linux, in another field, was in its day also an enabler.