From 86296c187f799eb94fe504e2491d7d991640fadc Mon Sep 17 00:00:00 2001 From: jacqueline Date: Tue, 12 Sep 2023 14:11:40 +1000 Subject: Use interrupt-based spi for the display This solves our "audio stutters while scrolling" problem better! Turns out the real root cause was the polling SPI driver blocking a whole CPU during playback. --- src/ui/include/ui_fsm.hpp | 4 ++-- src/ui/ui_fsm.cpp | 7 ------- 2 files changed, 2 insertions(+), 9 deletions(-) (limited to 'src/ui') diff --git a/src/ui/include/ui_fsm.hpp b/src/ui/include/ui_fsm.hpp index de97354e..b8d2b1a0 100644 --- a/src/ui/include/ui_fsm.hpp +++ b/src/ui/include/ui_fsm.hpp @@ -49,8 +49,8 @@ class UiState : public tinyfsm::Fsm { void react(const tinyfsm::Event& ev) {} virtual void react(const system_fsm::BatteryStateChanged&); - virtual void react(const audio::PlaybackStarted&); - virtual void react(const audio::PlaybackFinished&); + virtual void react(const audio::PlaybackStarted&){}; + virtual void react(const audio::PlaybackFinished&){}; virtual void react(const audio::PlaybackUpdate&) {} virtual void react(const audio::QueueUpdate&) {} diff --git a/src/ui/ui_fsm.cpp b/src/ui/ui_fsm.cpp index 70a77c2a..eeaea500 100644 --- a/src/ui/ui_fsm.cpp +++ b/src/ui/ui_fsm.cpp @@ -91,13 +91,6 @@ void UiState::react(const system_fsm::BatteryStateChanged&) { UpdateTopBar(); } -void UiState::react(const audio::PlaybackStarted&) { - vTaskPrioritySet(NULL, 0); -} -void UiState::react(const audio::PlaybackFinished&) { - vTaskPrioritySet(NULL, 10); -} - void UiState::UpdateTopBar() { auto battery_state = sServices->battery().State(); bool has_queue = sServices->track_queue().GetCurrent().has_value(); -- cgit v1.2.3