summaryrefslogtreecommitdiff
path: root/gr-blocks/grc
diff options
context:
space:
mode:
authorTim O'Shea <tim.oshea753@gmail.com>2014-02-15 22:21:44 -0500
committerTom Rondeau <tom@trondeau.com>2014-02-16 14:35:12 -0500
commit246ec97757c69d5296ebf56a273bf8e0e782a0b4 (patch)
tree878f08052223c54338a00f4526ca4bab3795a194 /gr-blocks/grc
parentabdc4fcb6cade9442aceb36e5ec7e0c93210b9f1 (diff)
blocks: random_pdu (speedup, also allow a byte mask), message_strobe_random (new block, send messages with a known timing distribution)
Diffstat (limited to 'gr-blocks/grc')
-rw-r--r--gr-blocks/grc/blocks_message_strobe_random.xml69
-rw-r--r--gr-blocks/grc/blocks_random_pdu.xml8
2 files changed, 76 insertions, 1 deletions
diff --git a/gr-blocks/grc/blocks_message_strobe_random.xml b/gr-blocks/grc/blocks_message_strobe_random.xml
new file mode 100644
index 0000000000..71c51322c5
--- /dev/null
+++ b/gr-blocks/grc/blocks_message_strobe_random.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0"?>
+<!--
+###################################################
+##Message Strobe
+###################################################
+ -->
+<block>
+ <name>Message Strobe Random-Delay</name>
+ <key>blocks_message_strobe_random</key>
+ <import>from gnuradio import blocks</import>
+ <import>import pmt</import>
+ <make>blocks.message_strobe_random($msg, $dist, $mean, $std)</make>
+ <callback>set_msg($msg)</callback>
+ <callback>set_dist($period)</callback>
+ <callback>set_mean($mean)</callback>
+ <callback>set_std($std)</callback>
+ <param>
+ <name>Message PMT</name>
+ <key>msg</key>
+ <value>pmt.intern("TEST")</value>
+ <type>raw</type>
+ </param>
+ <param>
+ <name>Distribution</name>
+ <key>dist</key>
+ <type>enum</type>
+ <option>
+ <name>Poisson</name>
+ <key>blocks.STROBE_POISSON</key>
+ </option>
+ <option>
+ <name>Uniform</name>
+ <key>blocks.STROBE_UNIFORM</key>
+ </option>
+ <option>
+ <name>Gaussian</name>
+ <key>blocks.STROBE_GAUSSIAN</key>
+ </option>
+ </param>
+ <param>
+ <name>Mean (ms)</name>
+ <key>mean</key>
+ <value>1000</value>
+ <type>real</type>
+ </param>
+ <param>
+ <name>Std (ms)</name>
+ <key>std</key>
+ <value>100</value>
+ <type>real</type>
+ </param>
+ <sink>
+ <name>set_msg</name>
+ <type>message</type>
+ <optional>1</optional>
+ </sink>
+ <source>
+ <name>strobe</name>
+ <type>message</type>
+ <optional>1</optional>
+ </source>
+
+ <doc>
+ Please note some peculiarities below:
+ - poisson does not care about your std
+ - gaussian operates as expected
+ - uniform is actually of the range (mean-std, mean+std) - thus we are lieing and it is not actually an std here
+ </doc>
+</block>
diff --git a/gr-blocks/grc/blocks_random_pdu.xml b/gr-blocks/grc/blocks_random_pdu.xml
index 83e3e65fd6..bd484d05d2 100644
--- a/gr-blocks/grc/blocks_random_pdu.xml
+++ b/gr-blocks/grc/blocks_random_pdu.xml
@@ -9,7 +9,7 @@
<key>blocks_random_pdu</key>
<import>from gnuradio import blocks</import>
<import>import pmt</import>
- <make>blocks.random_pdu($minsize, $maxsize)</make>
+ <make>blocks.random_pdu($minsize, $maxsize, chr($mask))</make>
<param>
<name>Min Bytes</name>
<key>minsize</key>
@@ -22,6 +22,12 @@
<value>2000</value>
<type>int</type>
</param>
+ <param>
+ <name>Byte Mask</name>
+ <key>mask</key>
+ <value>0xFF</value>
+ <type>int</type>
+ </param>
<sink>
<name>generate</name>
<type>message</type>