summaryrefslogtreecommitdiffhomepage
path: root/python/pi_rcv.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/pi_rcv.py')
-rwxr-xr-xpython/pi_rcv.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/python/pi_rcv.py b/python/pi_rcv.py
new file mode 100755
index 0000000..eb9a4d9
--- /dev/null
+++ b/python/pi_rcv.py
@@ -0,0 +1,37 @@
+"""
+ file: pi_rcv.py
+
+ Copyright (C) 2025 Private Island Networks Inc.
+
+"""
+
+import sys
+import argparse
+import asyncio
+import asyncio_dgram
+
+VERSION = '0.1'
+
+async def udp_rcv(args):
+ """ controller response """
+ stream = await asyncio_dgram.bind((args.ipaddr, 0x8000))
+ print(f"Serving on {stream.sockname}")
+ while(True):
+ data, remote_addr = await stream.recv()
+ if args.verbose:
+ print(f"received: {data[0], data[1], data[2], data[3], data[4], data[5], data[6], data[7]}")
+
+if __name__ == "__main__":
+ parser = argparse.ArgumentParser(description='UDP (datagram) test receiver', epilog='Version: ' + str(VERSION))
+ parser.add_argument('-i','--ipaddr',default="192.168.5.40", help='receive IP address',action='store', required=False)
+ parser.add_argument('-p','--port',default="0x8020", help='receive port',action='store', required=False)
+ parser.add_argument('-v','--verbose',action='store_true', help='be verbose')
+
+ args = parser.parse_args()
+
+ asyncio.run(udp_rcv(args))
+
+ stream.close()
+
+ print('exit')
+

Highly Recommended Verilog Books