Talk: Erlang Embedded Simulation

Development for Embedded Systems
Day
Saturday 12th of November, 2011
Start
12:00
End
12:45
Duration
0:45:00
Room
2

by Reza Javaheri & Rickard Olsson

(This talk is preliminarily 20 minutes)

Frequently testing code on hardware is inconvenient, takes time and only is possible if you have access to the hardware. By simulating device drivers like serial ports, buttons and led, a better development environment can be created.

This spring we conducted a thesis called Erlang Embedded Simulation, which described how embedded development can benefit from simulation of device drivers. The code is written in the open source language Erlang, available at github(https://github.com/EmbeddedErlang/Embedded-Erlang-Simulation) and licensed under "Apache License Version 2.0". The target platform is Beagle Board (http://beagleboard.org/), an open source development board with an omap 3 chip including an arm Processor. The thesis is a continuation of the master thesis "Erlang Embedded" conducted by Fredrik Andersson, Fabian Bergström, Gustav Simonsson and Henrik Nord, which presented at FSCONS last year. Following our thesis we started couple of experiments in regard to simulation of embedded systems. Main focus of our talk would be the simulation of embedded devices, and we would also like to present the work we have done after the thesis. Our thesis report is available here: (http://www.scribd.com/doc/55697604/Erlang-Embedded-Simulation-Thesis-Report)

Here is an abstract from our thesis:

The goal of this thesis is to develop simulators for device drivers and to create and describe a work flow for developing on Erlang Embedded using simulators. The motivation is that frequently testing code on hardware is inconvenient, takes time and only is possible if you have access to the hardware. By simulating simple device drivers like serial ports, buttons and led, this thesis aims to prove that a better development environment can be created. A development work flow describes how the current work flow with Erlang Embedded can be improved by using simulators. The idea is that you should be able to switch between real hardware and simulated mode by just changing an environment variable and providing necessary configuration files. No changes in code are required. A recorder tool was developed to support simulation of devices that generate data such as sensors. The recorder can also be used to quickly create a simulator replaying data traffic that have been recorded from an application previously. Taking advantage of dbg module, the recorder captures messages that a process receives or sends off without any modification to the source code. Using the recorder tool, no API or application logic is needed to simulation a sensor. The thesis was conducted at Chalmers University of Technology under supervision of Erlang Solutions Ltd. Erlang Embedded Simulation is available at Github (https://github.com/EmbeddedErlang/Embedded-Erlang-Simulation) and is licensed under: Apache License Version 2.0, January 2004 (http://www.apache.org/licenses/LICENSE-2.0.html).

Concurrent events:

Next (up to 3) talks in the same room (2):

Events that start after this one (within 30 minutes):