""" 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')