summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gr-blocks/grc/blocks_udp_source.xml1
-rw-r--r--grc/python/Generator.py12
2 files changed, 10 insertions, 3 deletions
diff --git a/gr-blocks/grc/blocks_udp_source.xml b/gr-blocks/grc/blocks_udp_source.xml
index bca1dff8b8..3b434c107e 100644
--- a/gr-blocks/grc/blocks_udp_source.xml
+++ b/gr-blocks/grc/blocks_udp_source.xml
@@ -7,6 +7,7 @@
<block>
<name>UDP Source</name>
<key>blocks_udp_source</key>
+ <throttle>1</throttle>
<import>from gnuradio import blocks</import>
<make>blocks.udp_source($type.size*$vlen, $ipaddr, $port, $psize, $eof)</make>
<callback>set_mtu($mtu)</callback>
diff --git a/grc/python/Generator.py b/grc/python/Generator.py
index eb24b75732..92f36cf30b 100644
--- a/grc/python/Generator.py
+++ b/grc/python/Generator.py
@@ -59,11 +59,17 @@ class Generator(object):
def write(self):
#do throttle warning
- throttled = any(map(lambda b: b.throttle(), self._flow_graph.get_enabled_blocks()))
- if not throttled and self._generate_options != 'hb':
+ throttling_blocks = filter(lambda b: b.throttle(), self._flow_graph.get_enabled_blocks())
+ if not throttling_blocks and self._generate_options != 'hb':
Messages.send_warning('''\
-This flow graph may not have flow control: no audio or usrp blocks found. \
+This flow graph may not have flow control: no audio or RF hardware blocks found. \
Add a Misc->Throttle block to your flow graph to avoid CPU congestion.''')
+ if len(throttling_blocks) > 1:
+ keys = set(map(lambda b: b.get_key(), throttling_blocks))
+ if len(keys) > 1 and 'blocks_throttle' in keys:
+ Messages.send_warning('''\
+This flow graph contains a throttle block and another rate limiting block, e.g. a hardware source or sink. \
+This is usually undesired. Consider removing the throttle block.''')
#generate
open(self.get_file_path(), 'w').write(str(self))
if self._generate_options == 'hb':