Publication:

cactOS: An Operating System for Executable Selection on a Microcontroller

Loading...
Thumbnail Image

Files

written_final_report.pdf (3.28 MB)

Date

2026-04-16

Journal Title

Journal ISSN

Volume Title

Publisher

Research Projects

Organizational Units

Journal Issue

Access Restrictions

Abstract

The standard way to use an Arduino microcontroller is by compiling an embedded executable and uploading it to the Arduino board, and these microcontrollers are used in various robotics, IoT, and learning environments. However, this process involves reuploading the executable to the Arduino board every time the executable is changed or the user wants to change what program the Arduino board is currently running, and this may be difficult depending on the environment that the Arduino board is placed in as an embedded processor. To address this problem, this thesis describes the development of cactOS, an operating system for the Arduino Due, and its uploader. These systems are working towards allowing the user to upload the operating system and additional Arduino executables, connect a keyboard and display from a choice of a few different communication protocols, and use the shell program on cactOS to select the executable to run on the Arduino board, and the user will be able to return to the operating system at any point by resetting the Arduino board. Thus, cactOS intends to bypass the limitation of one executable being used on an Arduino board, allowing for more flexibility in designing physical systems for multiple uses.

Description

Type of resource

Princeton University Senior Theses

Keywords

Location

Citation