Session
Schedule FOSDEM 2020
Internet of Things

Checkpointing in a real time OS for transiently-powered embedded systems

Checkpointing in a real time OS for transiently-powered embedded systems (MSP430)
UD2.218A
David Garriou
Some constrained embedded systems cannot use batteries, those are called transiently-powered embedded systems. They can be equipped with a non volatile RAM (NVRAM) and a super capacitor for gathering energy when available. Developing in such an environment is not straight. During this talk, we will expose our work on a constrained real time OS tolerant with power loss on a MSP430 based platform. This platform is a MSP430FR5994 Launchpad equipped with FRAM and a super capacitor.

This talk deals with constrained transiently-powered embedded systems equipped with non volatile RAM (NVRAM). Transiently-powered systems may be autonomous sensors, sensor networks, mobile devices without batteries, systems where the use of batteries is infeasible. In our case, such systems are equipped with a super capacitor that gathers energy and restitutes that energy to the system for a short time (from a few tens of milliseconds to a few minutes). Programming on such a device is difficult because it operates only intermittently, as energy is available. Such devices must not reboot but continue their computations all along successive powered periods, meaning that they must keep their states and values even when loosing power. Using NVRAM may seem to be an easy solution, but that is not the case. Indeed, using NVRAM as a kind of RAM is likely to lead the system to an altered behaviour, an inconsistent state.

Our motivation is to provide a transiently-powered computing platform to accommodate both usual sensing and transmission functions as well as as heavy as possible computations aka edge computing. This platform shall abstract the use of NVRAM or at least assist the user in the design of its application.

Our based test platform is an Autosar compliant open source real time OS, Trampoline (https://github.com/TrampolineRTOS/trampoline), already used inside high-end vehicles. Trampoline is very light, configurable, suitable for constrained devices. We have made some experimentations on a MSP430FR5994 platform, it is equipped with a MSP430 and a 0.22F super capacitor. Our device shall start just once, and then restart from the last checkpoint on each power recovery.

During this talk we will present the current state of our experimentations. That is to say : - Real-time and estimation of remaining energy; - Task scheduling model for such devices; - Platform energy consumption models: start and restart; - Peripherals states and initializations.

Additional information

Type devroom

More sessions

2/2/20
Internet of Things
Benjamin Henrion (zoobab)
UD2.218A
Welcome to the IOT devroom
2/2/20
Internet of Things
Dimitri del Marmol (ddm)
UD2.218A
We will demonstrate how to quickly develop simple tools to: check for a GPIO state, communicate with an I2C OLED screen or gdb into a running firmware.
2/2/20
Internet of Things
Philippe Coval
UD2.218A
Technical barrier to target low cost micro controllers can be too high for many developers already used to high level API. But did you know that those devices can support many operating systems like NuttX inspired by POSIX (same for Linux), but it goes even behind than C APIs, even JavaScript runtimes like IoT.js can be supported too. IoT.js can also support JS community modules such as Generic-sensor-lite to support sensors and actuators or webthing-iotjs to enable REST API for embedded ...
2/2/20
Internet of Things
Alexis DUQUE
UD2.218A
While Machine Learning is usually deployed in the cloud, lightweight versions of these algorithms that fit for constrained IoT systems such as microcontrollers are appearing. Using Machine Learning « at-the-edge » has indeed several advantages such as the reduction of network latency, it provides better privacy, and are working offline. In this presentation, we will demonstrate how to deploy Deep Learning algorithms on IoT devices thanks to TensorFlow Lite. We will see how to use it to design ...
2/2/20
Internet of Things
Arnaud Loonstra
UD2.218A
We propose a combined visual and text-based programming environment based on the actor model suitable for novice to expert programmers. This model encompasses simple communicating entities which easily scale from utilizing threads inside the computer to massive distributed computer systems. Our proposal is very suitable for IOT scenarios, creative coding practices and rapid prototyping. The prototype utilizes zeromq transports and embeds python for easy creation of actors.
2/2/20
Internet of Things
Artur Barsegyan
UD2.218A
We will have to talk about Tarantool Cartridge: it's framework for creating distributed applications. The application will be based on Tarantool – blazing fast in-memory database and Lua application server in one. Instances interconnect with each other by SWIM protocol – UDP Gossip protocol. We believe that our platform can bring brand new opportunities for the IoT world: we have the aggregated solution for many potential cases in IoT.
2/2/20
Internet of Things
Christian Paul
UD2.218A
Mozilla Webthing is a smart home platform built with Privacy by Design. It is an implementation of Web of Things concepts specified by W3C. The presentation explains how to create new things and interact with gateway using addon adapters.