Home
Softono
bern-rtos

bern-rtos

Open source MIT Rust
20
Stars
4
Forks
0
Issues
1
Watchers
9 months
Last Commit

About bern-rtos

A real-time operating system for microcontrollers written in Rust. (GitLab Mirror)

Platforms

Web Self-hosted

Languages

Rust

bern-kernel

crates.io docs.rs book

Bern RTOS preemptive real-time kernel for microcontrollers written in Rust.

Documentation

The API Documentation is not up to date, please prefer the Bern RTOS Kernel Book for now.

Semantic Versioning

This project follows Semantic Versioning 2.0.0.

Currently the version is below 1.0.0 meaning that everything is very much unstable and the API could change completely.

Cargo Features

  • time-slicing (default): A task runs at max for one system tick period if there are other tasks of equal priority
  • log-defmt: Activate system log messages using defmt. The user must select a log transport in the application, e.g. defmt-rtt.
  • log-rtt: Activate system log messages with core formatting and RTT transport.
  • log-global: Activate system log messages using the log facade. The use must provide a global logger.
  • trace: Activate system tracing. The user must provide a global tracer, e.g. systemview-target.

License

Supported Architectures

Core Name Architecture Rust Target
ARM Cortex-M3 w/MPU Armv7-M thumbv7m-none-eabi
ARM Cortex-M4 w/MPU Armv7E-M thumbv7em-none-eabi
ARM Cortex-M7 w/MPU Armv7E-M thumbv7em-none-eabi

Quickstart

cargo generate --git https://gitlab.com/bern-rtos/templates/cortex-m.git