Watch
0
0
Fork
You've already forked esp32-c_its-companion
0

TMP: Show common screens at startup

This commit is contained in:
Jannik Beyerstedt 2026-09-07 12:36:25 +02:00
commit a7c49ca939

View file

@ -176,6 +176,92 @@ async fn main(spawner: Spawner) -> ! {
screen screen
}; };
{
let _ = screen
.update(screen::ScreenState::Initial)
.inspect_err(log_screen_error);
embassy_time::Timer::after(embassy_time::Duration::from_secs(2)).await;
let _ = screen
.update(screen::ScreenState::GlosaSearching(
applogic::GlosaSearching {
known_intersection_ids: alloc::vec![123],
},
))
.inspect_err(log_screen_error);
embassy_time::Timer::after(embassy_time::Duration::from_secs(2)).await;
let _ = screen
.update(screen::ScreenState::GlosaFound(applogic::GlosaFound {
intersection_id: 1234,
approach_id: Some(42),
}))
.inspect_err(log_screen_error);
embassy_time::Timer::after(embassy_time::Duration::from_secs(2)).await;
let _ = screen
.update(screen::ScreenState::GlosaLocked(
applogic::GlosaSignalInfo {
intersection_id: 1234,
signal_groups: alloc::vec![
applogic::SignalGroupData {
phase: applogic::SignalPhase::Red,
maneuver: applogic::v2x::map::Maneuvers {
left_allowed: true,
staight_allowed: false,
right_allowed: false
},
timing: Some(applogic::TimingData {
min_end_sec: 23,
likely_end_sec: None,
max_end_sec: None
}),
usages: alloc::vec![applogic::v2x::map::UsageType::Vehicle]
},
applogic::SignalGroupData {
phase: applogic::SignalPhase::Red,
maneuver: applogic::v2x::map::Maneuvers {
left_allowed: true,
staight_allowed: false,
right_allowed: false
},
timing: Some(applogic::TimingData {
min_end_sec: 23,
likely_end_sec: None,
max_end_sec: None
}),
usages: alloc::vec![applogic::v2x::map::UsageType::Vehicle]
}
],
},
))
.inspect_err(log_screen_error);
embassy_time::Timer::after(embassy_time::Duration::from_secs(2)).await;
let _ = screen
.update(screen::ScreenState::GlosaLocked(
applogic::GlosaSignalInfo {
intersection_id: 1234,
signal_groups: alloc::vec![applogic::SignalGroupData {
phase: applogic::SignalPhase::Red,
maneuver: applogic::v2x::map::Maneuvers {
left_allowed: true,
staight_allowed: false,
right_allowed: false
},
timing: Some(applogic::TimingData {
min_end_sec: 23,
likely_end_sec: Some(24),
max_end_sec: Some(42)
}),
usages: alloc::vec![
applogic::v2x::map::UsageType::Vehicle,
applogic::v2x::map::UsageType::Bike,
]
}],
},
))
.inspect_err(log_screen_error);
embassy_time::Timer::after(embassy_time::Duration::from_secs(2)).await;
}
// Setup UART I/O channel // Setup UART I/O channel
#[cfg(feature = "uart")] #[cfg(feature = "uart")]
setup_uart0( setup_uart0(