Blog coding article

Knurling-rs changelog #22

Johann
Article

Knurling-rs changelog #22

Published on 2 min read
Knurling icon
Knurling
A tool set to develop embedded applications faster.
❤️ Sponsor

    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 and Debug2Format in defmt-book
    • #438 defmt_decoder: Extend doc-comments and make Frame public

    probe-run

    • #179 Add --max-backtrace-len option to probe-run as workaround for #127

    Fixes 🔨

    defmt

    • #436 defmt-test: Rm outdated setup steps
    • #439 Remove migration page from defmt-book

    Internal Improvements 🧽

    defmt

    • #432 Simplify defmt_parser
    • #440 Update dependencies
    • #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!