Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/seanmlyons22/cc13x4-cc26x4-flash
Flash algorithm for cc13x4_cc26x4 microcontrollers for probe-rs
https://github.com/seanmlyons22/cc13x4-cc26x4-flash
Last synced: 10 days ago
JSON representation
Flash algorithm for cc13x4_cc26x4 microcontrollers for probe-rs
- Host: GitHub
- URL: https://github.com/seanmlyons22/cc13x4-cc26x4-flash
- Owner: seanmlyons22
- License: mit
- Created: 2024-06-02T12:47:06.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-06-02T12:47:42.000Z (8 months ago)
- Last Synced: 2025-01-28T04:31:55.904Z (15 days ago)
- Language: Rust
- Homepage:
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE.txt
Awesome Lists containing this project
README
# Flash Algorithm for cc13x4_cc26x4
This is a flash algorithm for the TI cc13x4_cc26x4 devices. It is intended
for use with `probe-rs`, but since it follows the CMSIS-PACK standard it could
also be used with other debuggers such as PyOCD. That is not tested.![CI](https://github.com/seanmlyons22/cc13x4-cc26x4-flash/actions/workflows/ci.yml/badge.svg)[![chat](https://img.shields.io/badge/chat-probe--rs%3Amatrix.org-brightgreen)](https://matrix.to/#/#probe-rs:matrix.org)
## Dependencies
Run the following requirements:
```bash
cargo install cargo-generate cargo-binutils target-gen
rustup component add llvm-tools-preview
```Ensure you have the right toolchain:
```
rustup target add thumbv8m.main-none-eabihf
```## Setting up sub-modules
This template uses TI's driverlib functions to access the flash.
This is battle tested by TI, so no need to rewrite the lowest level access in
Rust. Instead, we invoke the driverlib functions using the FFI.To do that, we need to get TI's driverlib. For that, we use TI's SDK
on github. We consume that as a submodule.For first time clone:
```
git clone --recurse-submodules
```If you have have an existing checkout (and forgot to run with recurse submodules):
```
git submodule update --init --recursive
```## Build Script
This repo uses a build script to copy driverlib from TI's git based SDK into
the `target` dir. It also renames the library to match LLD's search expectations.See `build.rs` for more. This runs on the host machine when `cargo build` is run.
## Developing the algorithm
Just run `cargo run`. It spits out the flash algo in the probe-rs YAML format and downloads it onto a target and makes a test run.
You will also be able to see RTT messages.You can find the generated YAML in `target/definition.yaml`.
# License
This is licensed under MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)