From 0c6de7cf2a2566a60a2328d5399cb9eebc89a944 Mon Sep 17 00:00:00 2001 From: Jakob Ketterl Date: Fri, 1 Sep 2023 23:37:40 +0200 Subject: [PATCH] first shot at decoding ISM data with rtl_433 --- csdr/chain/rtl433.py | 15 ++++++++ htdocs/css/openwebrx.css | 7 ++-- htdocs/index.html | 1 + htdocs/lib/DemodulatorPanel.js | 7 ++-- htdocs/lib/MessagePanel.js | 63 ++++++++++++++++++++++++++++++++++ htdocs/openwebrx.js | 2 ++ owrx/dsp.py | 3 ++ owrx/feature.py | 11 ++++++ owrx/ism/rtl433.py | 28 +++++++++++++++ owrx/modes.py | 8 +++++ 10 files changed, 139 insertions(+), 6 deletions(-) create mode 100644 csdr/chain/rtl433.py create mode 100644 owrx/ism/rtl433.py diff --git a/csdr/chain/rtl433.py b/csdr/chain/rtl433.py new file mode 100644 index 00000000..6b9f5704 --- /dev/null +++ b/csdr/chain/rtl433.py @@ -0,0 +1,15 @@ +from owrx.ism.rtl433 import Rtl433Module, JsonParser +from csdr.chain.demodulator import ServiceDemodulator + + +class Rtl433(ServiceDemodulator): + def getFixedAudioRate(self) -> int: + return 250000 + + def __init__(self): + super().__init__( + [ + Rtl433Module(), + JsonParser(), + ] + ) diff --git a/htdocs/css/openwebrx.css b/htdocs/css/openwebrx.css index c3a9699f..7ee47ef9 100644 --- a/htdocs/css/openwebrx.css +++ b/htdocs/css/openwebrx.css @@ -1273,6 +1273,7 @@ img.openwebrx-mirror-img #openwebrx-panel-digimodes[data-mode="q65"] #openwebrx-digimode-content-container, #openwebrx-panel-digimodes[data-mode="msk144"] #openwebrx-digimode-content-container, #openwebrx-panel-digimodes[data-mode="adsb"] #openwebrx-digimode-content-container, +#openwebrx-panel-digimodes[data-mode="ism"] #openwebrx-digimode-content-container, #openwebrx-panel-digimodes[data-mode="ft8"] #openwebrx-digimode-select-channel, #openwebrx-panel-digimodes[data-mode="wspr"] #openwebrx-digimode-select-channel, #openwebrx-panel-digimodes[data-mode="jt65"] #openwebrx-digimode-select-channel, @@ -1285,7 +1286,8 @@ img.openwebrx-mirror-img #openwebrx-panel-digimodes[data-mode="fst4w"] #openwebrx-digimode-select-channel, #openwebrx-panel-digimodes[data-mode="q65"] #openwebrx-digimode-select-channel, #openwebrx-panel-digimodes[data-mode="msk144"] #openwebrx-digimode-select-channel, -#openwebrx-panel-digimodes[data-mode="adsb"] #openwebrx-digimode-select-channel +#openwebrx-panel-digimodes[data-mode="adsb"] #openwebrx-digimode-select-channel, +#openwebrx-panel-digimodes[data-mode="ism"] #openwebrx-digimode-select-channel { display: none; } @@ -1302,7 +1304,8 @@ img.openwebrx-mirror-img #openwebrx-panel-digimodes[data-mode="fst4w"] #openwebrx-digimode-canvas-container, #openwebrx-panel-digimodes[data-mode="q65"] #openwebrx-digimode-canvas-container, #openwebrx-panel-digimodes[data-mode="msk144"] #openwebrx-digimode-canvas-container, -#openwebrx-panel-digimodes[data-mode="adsb"] #openwebrx-digimode-canvas-container +#openwebrx-panel-digimodes[data-mode="adsb"] #openwebrx-digimode-canvas-container, +#openwebrx-panel-digimodes[data-mode="ism"] #openwebrx-digimode-canvas-container { height: 200px; margin: -10px; diff --git a/htdocs/index.html b/htdocs/index.html index 0c147d2b..8a9b3535 100644 --- a/htdocs/index.html +++ b/htdocs/index.html @@ -75,6 +75,7 @@ +