diff --git a/CHANGELOG.md b/CHANGELOG.md index d99f12f..c94d039 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ - Removed `port` configuration option; `rtltcp_compat` takes the port number with the new connectors - New devices supported: - BBRF103 / RX666 / RX888 devices supported by libsddc + - Devices using the EB200 protocol **0.20.0** - Added the ability to sign multiple keys in a single request, thus enabling multiple users to claim a single receiver diff --git a/debian/changelog b/debian/changelog index 1e8e81e..3990ebd 100644 --- a/debian/changelog +++ b/debian/changelog @@ -5,6 +5,7 @@ openwebrx (0.21.0) UNRELEASED; urgency=low with the new connectors * New devices supported: - BBRF103 / RX666 / RX888 devices supported by libsddc + - Devices using the EB200 protocol -- Jakob Ketterl Sun, 11 Oct 2020 21:12:00 +0000 diff --git a/owrx/feature.py b/owrx/feature.py index 5bf614f..39c6c20 100644 --- a/owrx/feature.py +++ b/owrx/feature.py @@ -70,6 +70,7 @@ class FeatureDetector(object): "fcdpp": ["soapy_connector", "soapy_fcdpp"], "sddc": ["sddc_connector"], "hpsdr": ["hpsdr_connector"], + "eb200": ["eb200_connector"], # optional features and their requirements "digital_voice_digiham": ["digiham", "sox"], "digital_voice_dsd": ["dsd", "sox", "digiham"], @@ -256,7 +257,7 @@ class FeatureDetector(object): ) def _check_connector(self, command): - required_version = LooseVersion("0.3") + required_version = LooseVersion("0.4") owrx_connector_version_regex = re.compile("^owrx-connector version (.*)$") @@ -501,7 +502,7 @@ class FeatureDetector(object): You can find more information [here](https://github.com/jketterl/sddc_connector). """ - return self.command_is_runnable("sddc_connector") + return self._check_connector("sddc_connector") def has_hpsdr_connector(self): """ @@ -509,3 +510,11 @@ class FeatureDetector(object): (https://github.com/jancona/hpsdrconnector). """ return self.command_is_runnable("hpsdrconnector -h") + + def has_eb200_connector(self): + """ + To use radios supporting the EB200 radios, you need to install the eb200_connector. + + You can find more information [here](https://github.com/jketterl/eb200_connector). + """ + return self._check_connector("eb200_connector") \ No newline at end of file diff --git a/owrx/source/eb200.py b/owrx/source/eb200.py new file mode 100644 index 0000000..026237c --- /dev/null +++ b/owrx/source/eb200.py @@ -0,0 +1,14 @@ +from owrx.source.connector import ConnectorSource +from owrx.command import Argument + + +class Eb200Source(ConnectorSource): + def getCommandMapper(self): + return ( + super() + .getCommandMapper() + .setBase("eb200_connector") + .setMappings({ + "remote": Argument(), + }) + )