Mission Planner on Linux - latest observation

System in use: Ubuntu 20.04 variation

  • After successfully using Mission Planner previously with the help of Wine there was suddenly an issue with MP 1.3.73 and some items no longer displaying as expected.
  • The latest version 1.3.74 doesn’t start at all anymore under Wine but works rather well using Mono providing the full Mono package is installed first.
  • It appears most functions are working fully without any problems.
    However, the Auto Analyzer under Data Flash Logs no longer works. (starts but nothing happens until about one minute later a message pops up saying “Failed to start Log Analyzer”).
    Interestingly using the last version which worked under Wine - 1.3.70 and using Wine then the Auto Log Analyzer works as expected.
    So it appears problem is linked to Mono.

…but other than that have to say rather impressive having it work so well now under Linux.

1 Like

yes, i would recommend native Linux over wine, it also runs on a rpi4 pretty well.

the log analyzer is windows only, and will not work under linux, same as the SITL tab, windows only, as they use precompiled windows binarys

But that is the interesting thing: It did work on Linux previously with Wine.
…not complaining, just saying. Much rather have everything else working and just miss out on one or two things than having to find workarounds for a whole number of functions as it was with Wine.

The most likely thing is the dot net framework version. But hard to say by guessing

I was able to easily get MissionPlanner to work on Ubuntu 20 by doing these steps:

Basic tests worked OK but I havent done extensive tests yet.


Yes it works, no question there. Had been using it with Wine for the past few years.
The question was just in regards to Auto Analysis function which was working under Wine but doesn’t under Mono.
Also as Michael mentioned the SITL tab is also missing. But as he explained both run apparently under their own precompiled windows binarys.
So the only question in regards to those two (as everything else appears to be working fine) is if considering that they use precompiled windows binarys weather they couldn’t be run as a standalone application under Wine?
But I’m sure Michael has better things to do than to worry about that. Besides, I think with this latest MP version a milestone has been reached as far as running MP on Linux is concerned.

I dropped a bash script in an earlier thread that does most or all of that: feel free to find and update it.
The key thing missing in my mind is joystick support.

Hi James,
you’re right. Just tried with Joystick. Doesn’t work in latest version using Mono nor in 1.3.70 under Wine.
It comes up with a message asking for directx redist.
Anyway, still think the development is getting there given that under Wine a number of other things didn’t work at all.
I’m sure in time it will all be sorted.

I installed it on my Ri 4 but had to drop it in favor of windows on Ri 4 because of joysstick support.

Fully understand.
I been considering for some time to change from a multirotor to a VTOL aircraft but didn’t due to a lack of support / available functions.
Been watching development for many months and now am happy with progress and started working on one. - Also noticed QGroundcontrol have now VTOL support in recent Beta version.

I have some code to start looking into joystick support. So will make it happen soon

1 Like

I switched from Cygwin to Ubuntu and would love to use MP as in former times.
I installed mono and downloaded the latest MP as mentioned above by @xfacta
Ubuntu 20.04
mono (tarball Mon Feb 22 17:33:28 UTC 2021)
MP 1.3.7563.27684

So far all looked fine, but when I try to connect to SITL, the parameters will never be uploaded completely - just ca. 50-70%. Then there is a very very slow progress.

Here I have a logfile of a try:MissionPlanner.log.4.txt (1000.1 KB)
(I left it uncut because I don’t know what’s interesting)

Has anybody an idea how to fix that?

how are you connected? i assume tcp? there seems to be alot of packet loss which is odd for sitl

also can you try beta MP?

MP is telling me that it’s connected via UDP on Standard-Port 14550:
The Link-Quality is volatile but very poor it seems:

The beta MP is available in Source-Code only - could you give me a hint (or link) how to use it?
I have a Win10- and a Ubuntu-System running.

normally sitl is always tcp to port 5760… so i duno how your using udp

as for beta… you can try the update beta from inside MP > help
or can grab it from github actions, there is a zip file with beta in it

I’m starting without additional --out= but it seems that sim_vehicle.py is establishing an additional udp by itself (see last lines):
sim_vehicle_complete.txt (3.2 KB)

I updated to beta 1.3.7782.16148 -> no success (same behavior as latest)
I forced to use TCP on 5760 -> no success (no communication)
I tried UDP on 14551 -> no success (same communication behavior as on 14550

So what else could I test?

As described here the connection via UDP seems to be standard (that’s my knowledge on Win10):
As also described I tested to start sitl without MAVProxy () and connected MP via TCP Port 5760 - and had an excellent connection:
but then the important option to give in commands on a console is not existing anymore.

In MP HELP-Screen there is a checkbox for ‘Show Console Window’, but without any function.
So based on my current knowledge that’s no option.

Could anybody give me a hint what to do for using MP for SITL on Linux?
Maybe it’s just a little thing, but I can’t see it in the moment.

After having a beer and taking some time I’ve got it.

MAVProxy is not only offering UDP ports 14550 and …1, it also offers TCP ports 5762 and …3

So I had to edit the config.xml, disable the AutoConnect UDP ports 14550 and 14551
and connect manually via TCP to port 5762 or 5763

and all is running perfectly quick. :smiley:

So all I have to find out yet is, how I could change the autostart of UDP to TCP:
“Label”: “Mavlink default port”,
“Enabled”: true,
“Port”: 14550,
“Protocol”: 1,
“Format”: 0,
“Direction”: 0,
“ConfigString”: “”

@Michael_Oborne Is the autoconnect to TCP possible and if yes, how?

ok so if using mavproxy, try tcp port 5762
this should allow mavproxy and mission planner.

as for tcp autoconnect, currently not supported, because its not a passive request. ie tcp is a outbound request, not a passive listern for data.

im looking into adding tcp outbound atm