frompymavlinkimportmavutilimporttimefrompymavlink.dialects.v20.commonimportMAVLink_messagefrompymavlink.dialects.v20importmydialectfromtypingimportcastfrommultiprocessingimportProcessasmpimportosos.environ["MAVLINK20"]="1"print(os.getenv("MAVLINK20"))defsender():mavutil.set_dialect("mydialect")conn=mavutil.mavlink_connection("udpout:127.0.0.1:14550")conn=cast(mavutil.mavudp,conn)mav=cast(mydialect.MAVLink,conn.mav)i=0whileTrue:mav.my_custom_msg_send(i,1.23)# function name is lowercasei+=1time.sleep(1)deflistener():mavutil.set_dialect("mydialect")conn=mavutil.mavlink_connection("udp:0.0.0.0:14550",source_system=42,source_component=200)print("Listening on udp:0.0.0.0:14550")whileTrue:msg=conn.recv_match(blocking=True)msg=cast(MAVLink_message,msg)ifmsg:print(msg.get_type(),msg.to_dict())if__name__=="__main__":talker=mp(target=sender)listen=mp(target=listener)listen.start()time.sleep(1)# Ensure listener starts before talkertalker.start()talker.join()listen.join()