Skip to content

WyliodrinEmbeddedIoT/tockloader-rs

 
 

Repository files navigation

TockLoader

This is a work-in-progress port to Rust for Tock Loader.

Please use the original Python version of TockLoader.

Adding support for a new board

If you want to add support for a new board, you have 3 options:

  1. Implement support for the bootloader for your board. For this, please see the tock-bootloader repo for more details.

    Note: this approach will limit you to use the bootloader for all operations (using the --serial flag).

  2. Add support for your board in probe-rs. This should be a straight-forward process if a CMSIS packs is available for your board.
  3. Implement a custom debug probe for your board. This is the most complex option, but it will give you the most flexibility:
    • First, add your debug probe to the Connect enum in tockloader-lib/src/connection.rs.
    • Then, implement each command individually. There is no predefined interface for this, as debug probes can be very different from each other. You can take a look at the existing implementations for inspiration, and feel free to contact us if you need help.

Install Dev Prerequisites

All distrubitions

For all distributions, you must install tauri prerequisites if you want to work on tock-ui, or to have rust-analyzer work out of the box. You can go without installing these if you configure rust-analyzer to ignore the tock-ui project.

Linux

sudo apt update
sudo apt install libudev-dev

WSL

sudo apt update
sudo apt install libudev-dev pkg-config

License

Licensed under either of

at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

About

No description, website, or topics provided.

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 91.9%
  • Vue 6.2%
  • TypeScript 0.8%
  • Shell 0.5%
  • Makefile 0.3%
  • JavaScript 0.1%
  • Other 0.2%