This is the tenth changelog for Knurling-rs, our push to sustainably build better tooling for developing and debugging Rust software for embedded systems. Knurling-rs includes a suite of tools that make it easier to develop, log, debug, and test your embedded Rust libraries and applications!
Knurling-rs is supported by our sponsors on GitHub. If you're interested in seeing more projects like this, consider becoming a sponsor today!
New knurling-sessions content
In this week's knurling-sessions we start working with the ePaper display.
Sponsors can check the new content in the ePaper display chapter of knurling-books (check this sponsors dashboard thread for credentials and discussions)
Upcoming break
We'd like to let you know that the knurling team will be taking a break during the last two weeks of 2020 so next week's changelog blog post will be the last one of 2020. We'll be back, fully recharged, on the week of January 4, 2021.
New features
probe-run
- #119
probe-run
has gained a--connect-under-reset
command line flag. When used, the probe drives the NRST pin of the microcontroller to put it in reset state before establishing a SWD / JTAG connection with the device. If you are experiencing connection issues try this new flag.
If you are using our Cargo project template (app-template
) apply this change to .cargo/config.toml
[target.'cfg(all(target_arch = "arm", target_os = "none"))']
-runner = "probe-run --chip nrf52840"
+runner = "probe-run --chip nrf52840 --connect-under-reset"
rustflags = [
Note that if you are using a standalone probe then you'll need to electrically connect the probe's NRST pin to the microcontroller's NRST pin (if you haven't already). If you are using a development board with an "on-board debugger" then probably no extra wiring is required but we suggest you double check your dev board's manual.
Improvements
app-template
- #32 don't pass the
--defmt
flag toprobe-run
. This flag was deprecated some time ago and is currently ignored byprobe-run
flip-link
- #18 document, in the README, how stack overflows can corrupt the memory of embedded applications and how
flip-link
prevents the problem
Fixes
probe-run
- #117 wait for breakpoint before switching RTT from non-blocking mode to blocking mode.
Internal improvements
defmt-test
- #299 we are now testing our embedded test runner (
defmt-test
) as part of our CI setup.
Version Update Notification
We've bumped the versions of our crates.io releases as a result of the changes listed above. They have changed as follows:
probe-run
has been updated to v0.1.8
Sponsor this work
Knurling is mainly funded through GitHub sponsors. Sponsors get early access to the tools we are building and help us to support and grow the knurling tools and courses. Thank you to all of the people already sponsoring our work through the Knurling project!