Project Alava: Programming Webs of Microcontrollers

The goal of Project Alava is to enable the easy construction, programming and debugging of microcontroller-based systems, followed by refinement to an optimized realization. High-level programming of the desired system in TypeScript using capability-based APIs translates into requirements on the hardware, allowing for many kinds of hardware components to be used with no code changes. A web-based hardware simulator allows for program testing, debugging and performance estimation before deployment. Alava compiles the high-level program into an executable containing a compatible hardware manifest, which greatly aids the configuration and debugging of the resulting system. To facilitate rapid prototyping, Alava leverages JACDAC which provides a lightweight but powerful bus-based communication protocol for embedded systems. JACDAC allows boards and modules to be combined simply and quickly. The first application of Project Alava to fashion technology (Project Brookdale) took place in May 2019.

James Devine, Teddy Seyed
Microsoft Research