Home

Awesome

imtomu-rs

Board support crate targeted for Tim's Open Micro USB

Includes support for tomu-bootloader config (toboot v2).

work in progress

dependencies

To build embedded programs using this template you'll need:

$ rustup target add thumbv6m-none-eabi
$ rustup component add llvm-tools-preview

usage

cargo run --example blink --release

toboot config

Application can interact with tomu bootloader by using toboot_config macro. It's fully typesafe so there's no need to worry you're putting wrong config. It will even warns you if you're trying to lock bootloader entry like this:

toboot_config! {
    lock_entry: true,
}

warns

Full config as the following:

toboot_config! {
    config: [autorun_enable, irq_enable],
    lock_entry: false,
    // efm32hg309f64 has 64KiB flash memory,
    // each bit below represent 1 sector (1KiB)
    // which will be erased when tomu load its bootloader
    erase_mask_lo: 0, // 32bit uint
    erase_mask_hi: 0, // 32bit uint
}

Toboot api ref: here.

examples

There are some examples on how to use tomu in examples folder.

license

Licensed under 2-clause BSD.