summaryrefslogtreecommitdiff
path: root/gr-blocks/examples/ctrlport/simple_copy_controller.py
diff options
context:
space:
mode:
authorTom Rondeau <tom@trondeau.com>2015-10-16 13:59:28 -0400
committerTom Rondeau <tom@trondeau.com>2015-10-16 15:48:47 -0400
commit1563fa4d3b5d785f4337f8ed992d7fd4bbf570a9 (patch)
treea6d260d7842c89ccf9122f835cec0118dde3ced4 /gr-blocks/examples/ctrlport/simple_copy_controller.py
parent7c587f08234712e884fccb77b595b432548e3173 (diff)
ctrlport: adding new examples.
Explore simple cases of passing messages to message handlers over controlport. Installed into standard examples directory.
Diffstat (limited to 'gr-blocks/examples/ctrlport/simple_copy_controller.py')
-rwxr-xr-xgr-blocks/examples/ctrlport/simple_copy_controller.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/gr-blocks/examples/ctrlport/simple_copy_controller.py b/gr-blocks/examples/ctrlport/simple_copy_controller.py
new file mode 100755
index 0000000000..7bd05006f5
--- /dev/null
+++ b/gr-blocks/examples/ctrlport/simple_copy_controller.py
@@ -0,0 +1,25 @@
+#!/usr/bin/env python
+
+import sys
+import pmt
+from gnuradio.ctrlport.GNURadioControlPortClient import GNURadioControlPortClient
+
+args = sys.argv
+if(len(args) < 4):
+ sys.stderr.write('Not enough arguments: simple_copy_controller.py <host> <port> [true|false]\n\n')
+ sys.exit(1)
+
+hostname = args[1]
+portnum = int(args[2])
+msg = args[3].lower()
+argv = [None, hostname, portnum]
+radiosys = GNURadioControlPortClient(argv=argv, rpcmethod='thrift')
+radio = radiosys.client
+
+if(msg == 'true'):
+ radio.postMessage('copy0', 'en', pmt.PMT_T)
+elif(msg == 'false'):
+ radio.postMessage('copy0', 'en', pmt.PMT_F)
+else:
+ sys.stderr.write('Unrecognized message: must be true or false.\n\n')
+ sys.exit(1)