Synchron -- An API and Runtime for Embedded Systems
Abhiroop Sarkar, Bo Joel Svensson, Mary Sheeran

TL;DR
Synchron introduces a high-level API and runtime system for embedded programming, simplifying concurrency, I/O, and timing concerns with abstractions and supporting microcontrollers, demonstrated through expressiveness and performance benchmarks.
Contribution
It presents Synchron, a novel API and runtime for embedded systems that combines high-level abstractions with low-level support, enabling easier programming of concurrent, timing-sensitive applications.
Findings
Expressive state machine examples demonstrated
Timing features validated with music programming
Benchmark results show acceptable response time, jitter, memory, and power usage
Abstract
Programming embedded systems applications involve writing concurrent, event-driven and timing-aware programs. Traditionally, such programs are written in low-level machine-oriented programming languages like C or Assembly. We present an alternative by introducing Synchron, an API that offers high-level abstractions to the programmer while supporting the low-level infrastructure in an associated runtime system and one-time-effort drivers. Embedded systems applications exhibit the general characteristics of being (i) concurrent, (ii) I/O-bound and (iii) timing-aware. To address each of these concerns, the Synchron API consists of three components: (1) a Concurrent ML (CML) inspired message-passing concurrency model, (2) a message-passing--based I/O interface that translates between low-level interrupt based and memory-mapped peripherals, and (3) a timing operator, , that marries…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
