This paper presents an extension to the Arduino framework that introduces multitasking support and allows running multiple concurrent tasks in addition to the single execution cycle provided by the standard Arduino framework. The extension has been implemented through the ERIKA Enterprise open-source real-time kernel, while maintaining the simplicity of the programming paradigm typical of the Arduino framework. Furthermore, a support for resource sharing has also been integrated in the external Arduino libraries to guarantee mutual exclusion in such a multi-task environment.
['Pasquale Buonocunto', 'Alessandro Biondi', 'Marco Pagani', 'Mauro Marinoni', 'Giorgio C. Buttazzo']
ARTE: arduino real-time extension for programming multitasking applications