From c4344ce7d03f314fb534793c6542d57da8da390a Mon Sep 17 00:00:00 2001
From: Kevin Hester <kevinh@geeksville.com>
Date: Sun, 23 Nov 2014 14:01:40 -1000
Subject: [PATCH] mavutil: Add support for udpin and udpout style addresses.

Adds two new address forms which can be used in mavproxy --master, --out
etc...

* udpin:addr:port - Run as a UDP 'server' on the specified interface
(use 0.0.0.0 for any interface) and port.
* udpout:addr:port - A UDP client that connects to a particular server

# Example usage

On a coprocessor linux computer connected directly to a APM:
mavproxy.py --master=/dev/ttyACM0,115200 --out=udpin:0.0.0.0:14550

On a laptop PC connecting wirelessly to that coprocessor:
mavproxy.py --master=udpout:<coprocessorip>:14550
---
 pymavlink/mavutil.py | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/pymavlink/mavutil.py b/pymavlink/mavutil.py
index c2869e15..e8a5b596 100644
--- a/pymavlink/mavutil.py
+++ b/pymavlink/mavutil.py
@@ -1001,6 +1001,11 @@ def mavlink_connection(device, baud=115200, source_system=255,
         set_dialect(dialect)
     if device.startswith('tcp:'):
         return mavtcp(device[4:], source_system=source_system)
+    if device.startswith('udpin:'):
+        return mavudp(device[6:], input=True, source_system=source_system)
+    if device.startswith('udpout:'):
+        return mavudp(device[7:], input=False, source_system=source_system)
+    # For legacy purposes we accept the following syntax and let the caller to specify direction
     if device.startswith('udp:'):
         return mavudp(device[4:], input=input, source_system=source_system)
 
-- 
GitLab