summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorailurux <me@ailurux.au>2025-05-01 16:41:53 +1000
committerailurux <me@ailurux.au>2025-05-01 16:41:53 +1000
commit05c1dd8e32184a055e10ccac70eda8131e01139c (patch)
treef3310995020a714432f4714d5192a3df6a26bb8f /src
parenta4ab23d622ef6f15ed0ee85671816693e57a80e4 (diff)
downloadtangara-fw-05c1dd8e32184a055e10ccac70eda8131e01139c.tar.gz
Check output before pausing on bt disconnect
Diffstat (limited to 'src')
-rw-r--r--src/tangara/audio/audio_fsm.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/tangara/audio/audio_fsm.cpp b/src/tangara/audio/audio_fsm.cpp
index 7c1b010d..a52d8427 100644
--- a/src/tangara/audio/audio_fsm.cpp
+++ b/src/tangara/audio/audio_fsm.cpp
@@ -287,9 +287,11 @@ void AudioState::react(const system_fsm::BluetoothEvent& ev) {
if (bt.connectionState() !=
drivers::Bluetooth::ConnectionState::kConnected) {
// If BT Disconnected, move to standby state
- events::Audio().Dispatch(audio::OutputModeChanged{
- .set_to = drivers::NvsStorage::Output::kHeadphones});
- transit<states::Standby>();
+ if (sOutput == sBtOutput) {
+ events::Audio().Dispatch(audio::OutputModeChanged{
+ .set_to = drivers::NvsStorage::Output::kHeadphones});
+ transit<states::Standby>();
+ }
return;
}
auto dev = sServices->bluetooth().pairedDevice();