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-graphics
eepy-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).