16 lines
489 B
Python
16 lines
489 B
Python
import socket
|
|
import struct
|
|
import uart_monitor_config as c
|
|
|
|
|
|
|
|
sockets = dict()
|
|
for baud_rate, MCAST_PORT in c.baud_rate_map.items():
|
|
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
|
|
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
|
sock.bind(('', MCAST_PORT))
|
|
|
|
mreq = struct.pack("4sl", socket.inet_aton(c.udp_grp), socket.INADDR_ANY)
|
|
sock.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, mreq)
|
|
sockets[baud_rate] = sock
|