From 16529a97026782506ef184d0b3619976b8559611 Mon Sep 17 00:00:00 2001
From: c vw <dl1ycf@darc.de>
Date: Tue, 18 Jan 2022 20:11:14 +0100
Subject: [PATCH] "Brutal" solution to the "OZY hangs when changing the number
 of receivers" problem.

---
 old_protocol.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/old_protocol.c b/old_protocol.c
index 56a794e..3bff3fa 100644
--- a/old_protocol.c
+++ b/old_protocol.c
@@ -828,6 +828,19 @@ static int how_many_receivers() {
   int ret = receivers;   	// 1 or 2
   if (diversity_enabled) ret=2; // need both RX channels, even if there is only one RX
 
+#ifdef USBOZY
+  //
+  // Always return 2 so the number of HPSDR-RX is NEVER changed.
+  // With 2 RX you can do 1RX or 2RX modes, and it is
+  // also OK for doing PURESIGNAL on OZY.
+  // Rationale: Rick reported that OZY's tend to hang if the
+  //            number of receivers is changed while running.
+  // OK it wastes bandwidth and this might be a problem at higher
+  //    sample rates but this is simply safer.
+  //
+  if (device == DEVICE_OZY) return 2;
+#endif
+
 #ifdef PURESIGNAL
     // for PureSignal, the number of receivers needed is hard-coded below.
     // we need at least 2, and up to 5 for Orion2 boards. This is so because
-- 
2.45.2