[Back] [Impressum, Datenschutz]

rupsched

rupsched is a small operating system for 8-bit AVR microrontrollers. It uses the Linux kernel build system and Kconfig, and the rest is also very Linux-like. It features a scheduler, timers and rolls its own interrupt support. All components are optional, even the scheduler.

Directory structure, names of header files, functions and macros, as well as coding style are oriented on the Linux kernel, whoever is used to hack the Linux kernel will feel at home in rupsched.

History

I managed the configuration of first my AVR projects with the Linux kernel's menuconfig, but for a very long time I only used a binary of menuconfig. I managed my projects in a single SVN repository and so it slowly grew infrastructure which supports the programming model used in the Linux kernel.

One of the first things I implemented was the scheduler and that's where the name comes from.

Features

rupsched contains a parser for atpack files, theoretically supporting all ATMega devices, but currently only a few models are used at the moment. To add your own device, change the DEVICES variable in arch/avr/scripts/decode_packs, and remove arch/avr/devs to force a rebuild.

Planned features

I have started working on these, but they are not yet ready for release

Extended wishlist features (not yet started to work on it)

I have not yet started working on these features. I will start working on that when the above list is implemented.

Requirements

To build rupsched, a Linux environment is required, with the following packages installed:

It should also be possible to compile using Cygwin on Windows, however I never tested that.

License

Most of this work is licensed GPL v2, however some files have a different but compatible license.

Download

To get the latest version of rupsched, clone the git repository:

git clone https://www.rupert-eibauer.de/rupsched.git rupsched

Releases