use esp-println for logging to UART

This commit is contained in:
2026-05-27 02:03:21 -07:00
parent 3e25dd380b
commit cdac9c3e5d
3 changed files with 40 additions and 27 deletions
Generated
+33 -17
View File
@@ -557,7 +557,7 @@ dependencies = [
"document-features", "document-features",
"enumset", "enumset",
"esp-config", "esp-config",
"esp-sync", "esp-sync 0.1.1",
"linked_list_allocator", "linked_list_allocator",
"rlsf", "rlsf",
] ]
@@ -626,7 +626,7 @@ dependencies = [
"esp-metadata-generated 0.3.0", "esp-metadata-generated 0.3.0",
"esp-riscv-rt", "esp-riscv-rt",
"esp-rom-sys", "esp-rom-sys",
"esp-sync", "esp-sync 0.1.1",
"esp-synopsys-usb-otg", "esp-synopsys-usb-otg",
"esp32", "esp32",
"esp32c2", "esp32c2",
@@ -676,6 +676,19 @@ version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42c2ee95b945a4780796e4359e72c033aed3b45073880e8029458f538532db8a" checksum = "42c2ee95b945a4780796e4359e72c033aed3b45073880e8029458f538532db8a"
[[package]]
name = "esp-println"
version = "0.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42dee1e9ac7c3539bf6464db1707b0edd7557168f98278cf3c84fe70e63c6ce6"
dependencies = [
"defmt 1.1.0",
"document-features",
"esp-metadata-generated 0.4.0",
"esp-sync 0.2.1",
"log",
]
[[package]] [[package]]
name = "esp-radio-rtos-driver" name = "esp-radio-rtos-driver"
version = "0.2.0" version = "0.2.0"
@@ -726,7 +739,7 @@ dependencies = [
"esp-hal-procmacros", "esp-hal-procmacros",
"esp-metadata-generated 0.3.0", "esp-metadata-generated 0.3.0",
"esp-radio-rtos-driver", "esp-radio-rtos-driver",
"esp-sync", "esp-sync 0.1.1",
"portable-atomic", "portable-atomic",
] ]
@@ -746,6 +759,22 @@ dependencies = [
"xtensa-lx", "xtensa-lx",
] ]
[[package]]
name = "esp-sync"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b4736bfbbb9e3f6353344e14fc61b6d18d3b877c3286914cf8c0a037be0ed224"
dependencies = [
"cfg-if",
"document-features",
"embassy-sync 0.6.2",
"embassy-sync 0.7.2",
"embassy-sync 0.8.0",
"esp-metadata-generated 0.4.0",
"riscv",
"xtensa-lx",
]
[[package]] [[package]]
name = "esp-synopsys-usb-otg" name = "esp-synopsys-usb-otg"
version = "0.4.2" version = "0.4.2"
@@ -1086,12 +1115,11 @@ dependencies = [
"defmt 1.1.0", "defmt 1.1.0",
"embassy-executor", "embassy-executor",
"embassy-time", "embassy-time",
"embedded-io 0.7.1",
"esp-alloc", "esp-alloc",
"esp-bootloader-esp-idf", "esp-bootloader-esp-idf",
"esp-hal", "esp-hal",
"esp-println",
"esp-rtos", "esp-rtos",
"rtt-target",
"static_cell", "static_cell",
"ws2812-rs", "ws2812-rs",
] ]
@@ -1263,18 +1291,6 @@ dependencies = [
"svgbobdoc", "svgbobdoc",
] ]
[[package]]
name = "rtt-target"
version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e7afed1f4302eeba88c601636cf2c554c45e1cbb464bab44c6012bab0e71473c"
dependencies = [
"critical-section",
"defmt 0.3.100",
"portable-atomic",
"ufmt-write",
]
[[package]] [[package]]
name = "rustversion" name = "rustversion"
version = "1.0.22" version = "1.0.22"
+1 -2
View File
@@ -24,12 +24,11 @@ esp-bootloader-esp-idf = { version = "0.4.0", features = ["defmt", "esp32s3"] }
embassy-executor = { version = "0.9.1", features = ["defmt"] } embassy-executor = { version = "0.9.1", features = ["defmt"] }
embassy-time = { version = "0.5.0", features = ["defmt"] } embassy-time = { version = "0.5.0", features = ["defmt"] }
esp-alloc = { version = "0.9.0", features = ["defmt"] } esp-alloc = { version = "0.9.0", features = ["defmt"] }
rtt-target = { version = "0.6.2", features = ["defmt"] } esp-println = { version = "0.17.0", features = ["colors", "defmt-espflash", "esp32s3", "uart"], default-features = false }
critical-section = "1.2.0" critical-section = "1.2.0"
static_cell = "2.1.1" static_cell = "2.1.1"
ws2812-rs = "0.3.1" ws2812-rs = "0.3.1"
embedded-io = "0.7.1"
[profile.dev] [profile.dev]
+6 -8
View File
@@ -10,13 +10,12 @@
use defmt::info; use defmt::info;
use embassy_executor::Spawner; use embassy_executor::Spawner;
use embassy_time::Timer; use embassy_time::Timer;
use embedded_io::Write;
use esp_hal::Blocking; use esp_hal::Blocking;
use esp_hal::clock::CpuClock; use esp_hal::clock::CpuClock;
use esp_hal::spi::master::{Spi, Config as SpiConfig}; use esp_hal::spi::master::{Spi, Config as SpiConfig};
use esp_hal::time::Rate; use esp_hal::time::Rate;
use esp_hal::timer::timg::TimerGroup; use esp_hal::timer::timg::TimerGroup;
use esp_hal::uart::{Config, Uart}; use esp_println::println;
use ws2812_rs::{WS2812SPI, SendColorBySPI, Color}; use ws2812_rs::{WS2812SPI, SendColorBySPI, Color};
#[panic_handler] #[panic_handler]
@@ -40,8 +39,6 @@ const LED_SPI_HZ: u32 = 3_200_000;
async fn main(spawner: Spawner) -> ! { async fn main(spawner: Spawner) -> ! {
// generator version: 1.2.0 // generator version: 1.2.0
rtt_target::rtt_init_defmt!();
let config = esp_hal::Config::default().with_cpu_clock(CpuClock::max()); let config = esp_hal::Config::default().with_cpu_clock(CpuClock::max());
let peripherals = esp_hal::init(config); let peripherals = esp_hal::init(config);
@@ -57,8 +54,7 @@ async fn main(spawner: Spawner) -> ! {
let led = WS2812SPI::new(spi); let led = WS2812SPI::new(spi);
spawner.spawn(heartbeat_task(led)).unwrap(); spawner.spawn(heartbeat_task(led)).unwrap();
let uart0: Uart<Blocking> = Uart::new(peripherals.UART0, Config::default()).unwrap(); spawner.spawn(logging_task()).unwrap();
spawner.spawn(serial_task(uart0)).unwrap();
info!("Padmapper initialized!"); info!("Padmapper initialized!");
@@ -86,9 +82,11 @@ async fn heartbeat_task(mut led: WS2812SPI<Spi<'static, Blocking>>) {
} }
#[embassy_executor::task] #[embassy_executor::task]
async fn serial_task(mut uart: Uart<'static, Blocking>) { async fn logging_task() {
let mut i = 0u64;
loop { loop {
let _ = uart.write_all(b"Hello from Padmapper!\r\n").unwrap(); info!("Hello from Padmapper! {}\r\n", i);
Timer::after_secs(1).await; Timer::after_secs(1).await;
i += 1;
} }
} }