Mission Planner on Raspberry Pi 4, no Luck

This link is a zip of an install script for MP on Buster32bit plus the libSkiaSharp.so
https://gofile.io/d/0iXpC9

The following procedure has been tested on a fresh Raspberry Pi OS Buster - full 32 bit.
Download the zip archive.
Extract into a directory on your pc.
Flash Raspberry Pi OS to an SD card (I use Etcher). DO NOT REMOVE THE SD CARD.
Copy two files - the script and libSkiaSharp.so - into the /rootfs/home/pi/ directory of your SD card. Don’t copy the folder from the zip archive, just the two files.
Place the empty file called “ssh” into the Boot directory of the SD card. If you need wifi, you’ll need the wpa_supplicant.conf file in the Boot directory too - add your wifi credentials etc before copying it over. Again, don’t copy the folder, just the two files.
Safely unmount/eject the SD card, put it in your Pi and power it on.
ssh to your pi (“ssh pi@raspberrypi.local”)
make the script executable (“chmod +x MP_Pi_Installer_arm32.sh”)
execute it ("./MP_Pi_Installer_arm32.sh")
This will take a while, as it needs to download quite a few things, and then reboot.
When it completes, you should have MP on your Pi, with a desktop icon to launch it. But it won’t work just yet.
ssh into your Pi again, and run “sudo raspi-config”. Select “7 Advanced Options” and then “A3 Memory Split”. Set this to a reasonable number, and reboot again. I set mine at 512MB, but you could test with less (256/128). The default 64 was not enough for me.
On Pi 4 the OpenGL settings defaulted to off - on a Pi 3 you might need to check as per Michael’s tip above.

1 Like

Question. If QGC it is not compiled for arm chips how is it working on Android devices?

Great!! Thanks, will try it tomorrow, really hope will support joystick :slight_smile:

If i update MP to latest beta does it break everything or it should keep working?

Not sure.
The script will work with whatever Missionplanner version: just change the wget target to the version you want. But you’ll need to delete your existing instance if you’ve already run the script (it’s a dumb script).

Qt does compile on/for Arm. It’s just that the specific version that QGC uses (5.12.6) doesn’t have a linux arm release, so you need to compile Qt (base + relevant modules) from source (which takes a very long time on a Pi…). As you can see in the thread above, there are nuances with Pi’s as well.
I have had QGC running on a pi4, but on Lubuntu LXQt, not Raspbian (although that should be possible).
Android is just a different beast.
A bit out of scope for this thread, but when I get a script going for QGC I’ll share it.

I see. So the best would be just to use MissionPlanner on the pi for now as discussed.

Thank you for trying to make this work :slight_smile:

Followed tutorial but had this prob at the end of script.

cp: impossible to create regular file ‘MissionPlanner/libSkiaSharp.so’: File o directory doesn’t exist

so i run the following:

sudo cp -f libSkiaSharp.so MissionPlanner

Than i enlarged memory to 256 and double clicked MissionPlanner.exe, it starts the splash screen but it dies, can’t read what it writes before it disappereas.

Script didn’t create desktop ikon.

Really?
My Pi is halfway through compiling Qt… but when it’s done I’ll run the script again.
The icon isn’t there because the script exited before creating it.

sudo cp -f libSkiaSharp.so MissionPlanner that i run manually is the correct place where to copy it?

MP_Pi_Installer_arm32.sh.zip (1.2 KB)
This works on my Pi. I’ve scp’d it back from the Pi, just in case I forgot to sync before zipping last time (embarrassing but not unlikely). This zip is just the script, not the other three files

Can i just run it or i have to clean something?

yeah, no cleanup happening within the script, so you can either delete the missionplanner directories (there’s probably two, plus the MP_scripts dir), or comment the relevant wgets and mkdirs out of the script.

Still no joy, it gets terminated while starting. It crashes just before telemetry stuff appear on the boot terminal.

It works!!!
For some reason even if it is a Rpi4 i had to disable opengl driver.

Thank you very much!!

Great!
Interesting with the opengl driver. I wonder why I didn’t have to do that (or if at some point I did, and forgot)?

Thank you very much for your help!!!

Do you think there is any chance for a joystick to work? I just tried and told me i need directx redistributable installed…

Good question.
If it proves too hard with MP, you could probably work around it with MAVProxy

Right, i’ll give it a shot with mavproxy.

Thank you

You most definitely have to disable openGL in your raspberry pi.

There are still problems however. I can’t get the dinulation to work e.g. and i guess there are mans more minor errors.