This is the 22th 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!
Highlights 🎉
probe-run --max-backtrace-len
Our first highlight of today is the new --max-backtrace-len
command line option. You are now able to limit the backtrace length, with a default of 50.
This will look like following:
$ probe-run --max-backtrace-len=3 --chip nRF52840_xxAA rtc_async.elf
(HOST) INFO flashing program (11.52 KiB)
(HOST) INFO success!
────────────────────────────────────────────────────────────────────────────────
0 INFO Hello World!
└─ rtc_async::__cortex_m_rt_main @ /src/bin/rtc_async.rs:42
1 INFO tick
└─ rtc_async::run2::task::{{closure}} @ /src/bin/rtc_async.rs:31
2 INFO BIG INFREQUENT TICK
└─ rtc_async::run1::task::{{closure}} @ /src/bin/rtc_async.rs:22
3 INFO tick
└─ rtc_async::run2::task::{{closure}} @ /src/bin/rtc_async.rs:31
4 INFO tick
└─ rtc_async::run2::task::{{closure}} @ /src/bin/rtc_async.rs:31
5 INFO tick
└─ rtc_async::run2::task::{{closure}} @ /src/bin/rtc_async.rs:31
6 INFO tick
└─ rtc_async::run2::task::{{closure}} @ /src/bin/rtc_async.rs:31
────────────────────────────────────────────────────────────────────────────────
stack backtrace:
0: HardFaultTrampoline
<exception entry>
1: rtc_async::run1::task::{{closure}}
at /src/bin/rtc_async.rs:24
2: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
at /.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/future/mod.rs:80
3: embassy::executor::Task<F>::poll
at /src/executor/mod.rs:71
(HOST) WARN Maximum backtrace length of 3 reached; cutting off the rest
note: re-run with `--max-backtrace-len=<your maximum>` to extend this limit
(HOST) ERROR the program panicked
Shoutout to @antvangelder
The second highlight is antoinevg/hello-nucleo-h7xx. @antvangelder created a rust starter project for the STMicroelectronics Nucleo-H745ZI-Q board. They based this on our app-template.
Thank you for this contribution to the embedded rust community!
Improvements 🦀
defmt
- #437 Document adapter types
Display2Format
andDebug2Format
in defmt-book - #438
defmt_decoder
: Extend doc-comments and makeFrame
public
probe-run
Fixes 🔨
defmt
Internal Improvements 🧽
defmt
flip-link
- #28 Refactor code and update dependencies
Sponsor this work
Knurling-rs 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!