6 releases (breaking)

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

#326 in Embedded development

Download history 1419/week @ 2024-09-25 1061/week @ 2024-10-02 1562/week @ 2024-10-09 1849/week @ 2024-10-16 1005/week @ 2024-10-23 1423/week @ 2024-10-30 1064/week @ 2024-11-06 605/week @ 2024-11-13 968/week @ 2024-11-20 568/week @ 2024-11-27 1466/week @ 2024-12-04 1503/week @ 2024-12-11 1641/week @ 2024-12-18 956/week @ 2024-12-25 719/week @ 2025-01-01 940/week @ 2025-01-08

4,430 downloads per month

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