#logging-framework #log-messages #defmt #knurling #defmt-transport

no-std defmt-rtt

Transmit defmt log messages over the RTT (Real-Time Transfer) protocol

7 unstable releases

0.4.1 May 13, 2024
0.4.0 Oct 6, 2022
0.3.2 Mar 10, 2022
0.3.1 Nov 26, 2021
0.1.0 Nov 11, 2020

#147 in Embedded development

Download history 8678/week @ 2024-08-08 7122/week @ 2024-08-15 10851/week @ 2024-08-22 10958/week @ 2024-08-29 11338/week @ 2024-09-05 9065/week @ 2024-09-12 9613/week @ 2024-09-19 6891/week @ 2024-09-26 5809/week @ 2024-10-03 6541/week @ 2024-10-10 8194/week @ 2024-10-17 7632/week @ 2024-10-24 8153/week @ 2024-10-31 7333/week @ 2024-11-07 7512/week @ 2024-11-14 10426/week @ 2024-11-21

34,544 downloads per month
Used in 65 crates

MIT/Apache

90KB
1.5K SLoC

defmt-rtt

Transmit defmt log messages over the RTT (Real-Time Transfer) protocol

defmt ("de format", short for "deferred formatting") is a highly efficient logging framework that targets resource-constrained devices, like microcontrollers.

The fastest way to get started with defmt is to use our app-template to set up a new Cortex-M embedded project.

For more details about the framework check the book at https://defmt.ferrous-systems.com

Memory use

When in a tight memory situation and logging over RTT, the buffer size (default: 1024 bytes) can be configured with the DEFMT_RTT_BUFFER_SIZE environment variable. Use a power of 2 for best performance.

Support

defmt-rtt is part of the Knurling project, Ferrous Systems' effort at improving tooling used to develop for embedded systems.

If you think that our work is useful, consider sponsoring it via GitHub Sponsors.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be licensed as above, without any additional terms or conditions.

Dependencies

~0.5–1MB
~23K SLoC