Skip to content

Commit b49ddc5

Browse files
committed
Avoid hiding import errors outside GRC
1 parent 5884f60 commit b49ddc5

3 files changed

+31
-35
lines changed

secplus_rx.grc

+29-29
Original file line numberDiff line numberDiff line change
@@ -664,26 +664,26 @@ blocks:
664664
\ See the\n# GNU General Public License for more details.\n#\n# You should\
665665
\ have received a copy of the GNU General Public License\n# along with secplus.\
666666
\ If not, see <http://www.gnu.org/licenses/>.\n#\n\nimport numpy as np\nfrom\
667-
\ gnuradio import gr\ntry:\n import secplus\nexcept:\n pass\n\n\nclass\
668-
\ blk(gr.sync_block):\n \"\"\"Decoder for Chamberlain garage door openers\"\
669-
\"\"\n\n def __init__(self, samp_rate=10000, threshold=0.02):\n gr.sync_block.__init__(\n\
670-
\ self,\n name='Security+ Decoder',\n\n in_sig=[np.float32],\n\
671-
\ out_sig=[]\n )\n self.samp_rate = samp_rate\n \
672-
\ self.threshold = threshold\n self.last_sample = 0.0\n self.last_rise\
673-
\ = 0\n self.buffer = []\n self.last_pair = []\n self.pair\
674-
\ = []\n\n def work(self, input_items, output_items):\n for n, sample\
675-
\ in enumerate(input_items[0]):\n current_sample = self.nitems_read(0)\
676-
\ + n\n if self.last_sample < self.threshold <= sample:\n \
677-
\ # rising edge\n self.last_rise = current_sample\n \
678-
\ elif self.last_sample >= self.threshold > sample:\n \
679-
\ # falling edge\n on_samples = current_sample - self.last_rise\n\
680-
\ self.process_symbol(on_samples)\n if current_sample\
681-
\ - self.last_rise > 3.25e-3 * self.samp_rate:\n self.buffer\
682-
\ = []\n self.last_sample = sample\n return len(input_items[0])\n\
683-
\n def process_symbol(self, on_samples):\n if on_samples < 0.35e-3\
684-
\ * self.samp_rate:\n self.buffer = []\n elif on_samples <\
685-
\ 0.75e-3 * self.samp_rate:\n self.buffer.append(0)\n elif\
686-
\ on_samples < 1.25e-3 * self.samp_rate:\n self.buffer.append(1)\n\
667+
\ gnuradio import gr\nif __name__ != \"builtins\": # Don't import within GRC\n\
668+
\ import secplus\n\n\nclass blk(gr.sync_block):\n \"\"\"Decoder for Chamberlain\
669+
\ garage door openers\"\"\"\n\n def __init__(self, samp_rate=10000, threshold=0.02):\n\
670+
\ gr.sync_block.__init__(\n self,\n name='Security+\
671+
\ Decoder',\n\n in_sig=[np.float32],\n out_sig=[]\n \
672+
\ )\n self.samp_rate = samp_rate\n self.threshold = threshold\n\
673+
\ self.last_sample = 0.0\n self.last_rise = 0\n self.buffer\
674+
\ = []\n self.last_pair = []\n self.pair = []\n\n def work(self,\
675+
\ input_items, output_items):\n for n, sample in enumerate(input_items[0]):\n\
676+
\ current_sample = self.nitems_read(0) + n\n if self.last_sample\
677+
\ < self.threshold <= sample:\n # rising edge\n \
678+
\ self.last_rise = current_sample\n elif self.last_sample >= self.threshold\
679+
\ > sample:\n # falling edge\n on_samples = current_sample\
680+
\ - self.last_rise\n self.process_symbol(on_samples)\n \
681+
\ if current_sample - self.last_rise > 3.25e-3 * self.samp_rate:\n \
682+
\ self.buffer = []\n self.last_sample = sample\n \
683+
\ return len(input_items[0])\n\n def process_symbol(self, on_samples):\n\
684+
\ if on_samples < 0.35e-3 * self.samp_rate:\n self.buffer\
685+
\ = []\n elif on_samples < 0.75e-3 * self.samp_rate:\n self.buffer.append(0)\n\
686+
\ elif on_samples < 1.25e-3 * self.samp_rate:\n self.buffer.append(1)\n\
687687
\ elif on_samples < 1.75e-3 * self.samp_rate:\n self.buffer.append(2)\n\
688688
\ else:\n self.buffer = []\n\n if len(self.buffer)\
689689
\ == 21:\n self.process_buffer()\n self.buffer = []\n\n\
@@ -723,15 +723,15 @@ blocks:
723723
\ See the\n# GNU General Public License for more details.\n#\n# You should\
724724
\ have received a copy of the GNU General Public License\n# along with secplus.\
725725
\ If not, see <http://www.gnu.org/licenses/>.\n#\n\nimport numpy as np\nfrom\
726-
\ gnuradio import gr\ntry:\n import secplus\nexcept:\n pass\n\n\nclass\
727-
\ blk(gr.sync_block):\n \"\"\"Decoder for Chamberlain garage door openers\"\
728-
\"\"\n\n def __init__(self, samp_rate=10000, threshold=0.02):\n gr.sync_block.__init__(\n\
729-
\ self,\n name='Security+ 2.0 Decoder',\n\n \
730-
\ in_sig=[np.float32],\n out_sig=[]\n )\n self.samp_rate\
731-
\ = samp_rate\n self.threshold = threshold\n self.last_sample\
732-
\ = 0.0\n self.last_edge = 0\n self.buffer = []\n self.pair\
733-
\ = [None, None]\n self.pair_time = [None, None]\n\n def work(self,\
734-
\ input_items, output_items):\n for n, sample in enumerate(input_items[0]):\n\
726+
\ gnuradio import gr\nif __name__ != \"builtins\": # Don't import within GRC\n\
727+
\ import secplus\n\n\nclass blk(gr.sync_block):\n \"\"\"Decoder for Chamberlain\
728+
\ garage door openers\"\"\"\n\n def __init__(self, samp_rate=10000, threshold=0.02):\n\
729+
\ gr.sync_block.__init__(\n self,\n name='Security+\
730+
\ 2.0 Decoder',\n\n in_sig=[np.float32],\n out_sig=[]\n\
731+
\ )\n self.samp_rate = samp_rate\n self.threshold = threshold\n\
732+
\ self.last_sample = 0.0\n self.last_edge = 0\n self.buffer\
733+
\ = []\n self.pair = [None, None]\n self.pair_time = [None, None]\n\
734+
\n def work(self, input_items, output_items):\n for n, sample in enumerate(input_items[0]):\n\
735735
\ current_sample = self.nitems_read(0) + n\n if self.last_sample\
736736
\ < self.threshold <= sample:\n # rising edge\n \
737737
\ self.process_edge(True, current_sample - self.last_edge)\n \

secplus_rx_secplus_decode.py

+1-3
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,8 @@
1919

2020
import numpy as np
2121
from gnuradio import gr
22-
try:
22+
if __name__ != "builtins": # Don't import within GRC
2323
import secplus
24-
except:
25-
pass
2624

2725

2826
class blk(gr.sync_block):

secplus_rx_secplus_v2_decode.py

+1-3
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,8 @@
1919

2020
import numpy as np
2121
from gnuradio import gr
22-
try:
22+
if __name__ != "builtins": # Don't import within GRC
2323
import secplus
24-
except:
25-
pass
2624

2725

2826
class blk(gr.sync_block):

0 commit comments

Comments
 (0)