diff --git a/routes/listening_post/audio.py b/routes/listening_post/audio.py index b1567a4..20b165b 100644 --- a/routes/listening_post/audio.py +++ b/routes/listening_post/audio.py @@ -54,7 +54,7 @@ def start_audio() -> Response: if frequency <= 0: return jsonify({"status": "error", "message": "frequency is required"}), 400 - valid_sdr_types = ["rtlsdr", "hackrf", "airspy", "limesdr", "sdrplay"] + valid_sdr_types = ["rtlsdr", "hackrf", "airspy", "limesdr", "sdrplay", "usrp", "bladerf", "hydrasdr"] if sdr_type not in valid_sdr_types: return jsonify({"status": "error", "message": f"Invalid sdr_type. Use: {', '.join(valid_sdr_types)}"}), 400 diff --git a/routes/meteor_websocket.py b/routes/meteor_websocket.py index 72c6fa0..bde89bc 100644 --- a/routes/meteor_websocket.py +++ b/routes/meteor_websocket.py @@ -64,6 +64,9 @@ MAX_BANDWIDTH = { SDRType.LIME_SDR: 20000000, SDRType.AIRSPY: 10000000, SDRType.SDRPLAY: 2000000, + SDRType.USRP: 25000000, + SDRType.BLADE_RF: 40000000, + SDRType.HYDRA_SDR: 10000000, } @@ -87,6 +90,9 @@ def _resolve_sdr_type(sdr_type_str: str) -> SDRType: "limesdr": SDRType.LIME_SDR, "airspy": SDRType.AIRSPY, "sdrplay": SDRType.SDRPLAY, + "usrp": SDRType.USRP, + "bladerf": SDRType.BLADE_RF, + "hydrasdr": SDRType.HYDRA_SDR, } return mapping.get(sdr_type_str.lower(), SDRType.RTL_SDR) diff --git a/routes/waterfall_websocket.py b/routes/waterfall_websocket.py index ca929b5..715b76a 100644 --- a/routes/waterfall_websocket.py +++ b/routes/waterfall_websocket.py @@ -62,6 +62,9 @@ MAX_BANDWIDTH = { SDRType.LIME_SDR: 20000000, SDRType.AIRSPY: 10000000, SDRType.SDRPLAY: 2000000, + SDRType.USRP: 25000000, + SDRType.BLADE_RF: 40000000, + SDRType.HYDRA_SDR: 10000000, } @@ -330,6 +333,9 @@ def _resolve_sdr_type(sdr_type_str: str) -> SDRType: "lime_sdr": SDRType.LIME_SDR, "airspy": SDRType.AIRSPY, "sdrplay": SDRType.SDRPLAY, + "usrp": SDRType.USRP, + "bladerf": SDRType.BLADE_RF, + "hydrasdr": SDRType.HYDRA_SDR, } return mapping.get(sdr_type_str.lower(), SDRType.RTL_SDR) diff --git a/utils/ground_station/iq_bus.py b/utils/ground_station/iq_bus.py index 139e8ad..f1df16c 100644 --- a/utils/ground_station/iq_bus.py +++ b/utils/ground_station/iq_bus.py @@ -281,6 +281,9 @@ class IQBus: "limesdr": SDRType.LIME_SDR, "airspy": SDRType.AIRSPY, "sdrplay": SDRType.SDRPLAY, + "usrp": SDRType.USRP, + "bladerf": SDRType.BLADE_RF, + "hydrasdr": SDRType.HYDRA_SDR, } sdr_type = type_map.get(self._sdr_type.lower(), SDRType.RTL_SDR) builder = SDRFactory.get_builder(sdr_type)