defmt-serial
A defmt target for logging over a serial port. Have a look at examples to see how to use library example-artemis or example-pi-pico. You can also try it out in a hosted environment: example-std. To parse the logs have a look at parsing logs.
static SERIAL: = new;
!
Remember to set the DEFMT_LOG variable when testing, e.g.:
$ cd example-std/
$ DEFMT_LOG=debug cargo run
Parsing logs
The easiest way to parse the logs is to use socat and defmt-print together.
For example:
socat ${PORT},rawer,b${BAUDRATE},crnl STDOUT | defmt-print -e ${ELF}
Just replace ${PORT}, ${BAUDRATE} and ${ELF} with correct values.
To install the tools on Ubuntu 22.04 run these commands:
apt install socat
cargo install defmt-print