eepyOS is a barebones, application-specific, single-tasking operating system in Rust for my Touchscreen E-Paper Input Module for the Framework 16, designed to allow safe execution of user programs. Currently a major work in progress.
Summary of crates:
eepy- eepyOS kerneleepy-sys- library defining the kernel's syscall interface and binary format and providing safe abstractionseepy-derive- proc macro crate for eepy-syseepy-launcher- the userspace component of eepyOS which handles the launcher UIeepy-gui- barebones UI library for eepyOS applications based onembedded-graphicseepy-example-app- example userspace application for eepyOSeepy-serial- library crate for the USB serial interfaceeepytool- CLI tool for interfacing with the input module over USB serialelf2epb- utility for converting ELF binaries to eepyOS's binary formatfw16-epd-bsp- Board Support Package for the Touchscreen E-Paper Input Modulepervasive-spi- Bitbanging driver for the 3-wire SPI protocol used by Pervasive Displays e-paper panels, such as the one on the Input Moduletp370pgh01- Driver for the specific display used on the Touchscreen E-Paper Input Module (display only; touch is handled directly in the kernel)
This repository is mirrored at GitHub and Tangled (alpha).