This tool talks to Bouffalo Lab SoC mask ROMs over serial, currently supporting:
- BL808 (NOTE: There is no official vendor website documenting the SoC; see also the OpenBouffalo wiki)
Have a Rust toolchain installed with Cargo.
cargo build --release
To run a given flat binary c906.bin
on the D0 aka MM (C906) core:
cargo run --release -- --d0-binary c906.bin
For more options, see the help:
cargo run --release -- -h
This tool is written in Rust 🦀 using well-known libraries from the Rust community for connecting via serial, defining the CLI, and parsing/instantiating data structures, including:
Based on the vendor SDK, their bflb-mcu-tool and smaeul's bouffalo-loader as well as the documentation of fields and structs in the OpenBouffalo project, we were able to create a rather comprehensive tool that is simple to use. Big thanks go out to everyone in the community who helped us out and shared their findings.