6 releases (breaking)

new 0.5.1 Dec 5, 2024
0.5.0 Nov 23, 2024
0.4.0 Sep 27, 2024
0.3.0 Mar 2, 2024
0.1.0 Feb 19, 2023

#424 in Embedded development

Download history 1253/week @ 2024-08-19 812/week @ 2024-08-26 1082/week @ 2024-09-02 884/week @ 2024-09-09 1083/week @ 2024-09-16 1431/week @ 2024-09-23 1051/week @ 2024-09-30 1520/week @ 2024-10-07 1646/week @ 2024-10-14 1417/week @ 2024-10-21 1249/week @ 2024-10-28 1228/week @ 2024-11-04 698/week @ 2024-11-11 865/week @ 2024-11-18 518/week @ 2024-11-25 1301/week @ 2024-12-02

3,402 downloads per month
Used in embedded-test

MIT license

6KB
52 lines

rtt-log

Log facade implementation for the Segger RTT protocol supported by the J-Link, ST-Link and other debug probes. It is based on rtt-target.

[!NOTE]

rtt-target introduced log integration with version 0.6.1, making this crate obsolete.

Please refer to the rtt-target docs for further details.

Usage

// Init the logger with maximum level (Trace).
rtt_log::init();

// Alternatively, init the logger with specific level.
rtt_log::init_with_level(log::LevelFilter::Debug);

// Log something.
log::debug!("Application started");

Use a tool like probe-rs on the host to print the messages.

[!NOTE]

RTT uses a global symbol _SEGGER_RTT that can only appear once in a compiled binary. Therefore, if you want to use functions from rtt-target directly, import them from rtt-log instead of adding rtt-target as a separate dependency. Otherwise, a linker error about duplicate symbols will occur.

use rtt_log::rtt_target::rprintln;

rprintln!("Hello, world!");

License

Published under the MIT license.

Author: Oliver Rockstedt info@sourcebox.de

Dependencies

~1.5MB
~22K SLoC