insert-coin/notes.md

29 lines
1.3 KiB
Markdown

# ENVIRONMENT
there is a docker image that contains the entire toolchain + flashing utility. first, you need to build the base docker image with the following script located in the ch32v-insert-coin directory:
```shell
$ ./init.sh
```
once built, you won't need to build this again. for the remainder of your development, you can use the following script:
```shell
$ ./build-run.sh
```
this will build the firmware image, and attempt to upload it to the board using `wlink`. once uploaded, it will attach a serial debugger.
# FLASHING
flashing is done using the [`wlink`](https://github.com/ch32-rs/wlink?tab=readme-ov-file#install) utility. `probe-rs` also works, but can be flaky, and does not support SDI prints very well.
the `wlink` utility will automatically detect the correct chip, but if it doesn't you can specify it with an additional argument.
`wlink --help` lists all the options to the `wlink` utility.
## DEVELOPMENT
when building using the rust toolchain, you can simply add the following to your `.cargo/config.toml`:
`runner = "wlink -v flash`
if you want to monitor prints via SDI, you can use the following instead:
`runner = "wlink -v flash --enable-sdi-print --watch-serial"`
## STANDALONE
when flashing standalone with the `wlink` utility, you can simply run the following:
`wlink -v flash <PATH_TO_BINARY>`