ArduPilot / ArduPilot/MAVProxy
Using high and low latency links in parallel
- Dominant language
- Python
- Stars
- 595
- Forks
- 773
- Avg merge
- 2d 6h
- Merged PRs (30d)
- 18
Description
Hey!
I am trying to use two links at the same time on my UAV:
* Low latency via a 4G cellular connection
* High latency via an Iridium sat connection
Basically referring to the explicit handover section in the MavLink documentation:
"If using this model the GCS and autopilot should be able to work with a mixed regime of low and high latency links. Specifically, this means that they should be able to handle the case where the same message is sent over different both channels."
But using it all the time since usually I do not know when I will leave the low latency cellular coverage area.
I also read the whole discussion you guys had here:
https://github.com/ArduPilot/ardupilot/pull/19882
My problem is now that MavProxy can only set the high latency mode in general, so on both links I add. There is no ability to set high latency exclusively for one link.
I know there is a MAVLink CMD to enable/disable the high latency data stream but for redundancy and safety purposes I wanted to have both links active at the same time, transmitting data. For me this avoids the issue of having longer communication outages until the MavLink CMD to enable the high latency has reached the UAV and the first HIGH_LATENCY2 packet came back to the GCS (which on Iridium might take 6-7 seconds round trip).
I wanted to give MavProxy a try since the implementation for dual link and high latency in QGroundControlStation is there but the GUI itself has some issues properly displaying the information and enabling/disabling its buttons depending on if it gets a low latency or high latency packet in parallel.
Thanks for any input!
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing how MAVProxy represents high-latency mode and how its dual-link handling applies that setting. Compare the behavior with the explicit handover model described in the issue and the linked ArduPilot discussion; done means low-latency and high-latency traffic can remain active on separate links without requiring a delayed mode command.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli, networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100