Mission Planner on Raspberry Pi 4, no Luck

Hello,

The past 3 days i have been trying to get Mission Planner up and running on my Raspberry Pi 4 under Raspbian 10.

it has been a steap learning curve, however i’m still missing something, since it just doesn’t work.
i can get 1.3.30-1.3.39 to work. but after an update to 1.3.70/71 it quits on the loading screen.

i followed the instructions to install mono, and am running Mono 6.8.0. i pretty much tried all turorials available in the internet, without any luck.

i’m hoping that maybe somebody can help me out and provide a hot tip :slight_smile:

I do know about the other Software. APM Planner e.g. works fine. however i want to use the NMEA via bluetooth output in MP.

I’ll attach the Terminal output for any clues:

 ~/Desktop/MissionPlanner-1.3.70 $ sudo mono MissionPlanner.exe
If your error is about Microsoft.DirectX.DirectInput, please install the latest directx redist from here http://www.microsoft.com/en-us/download/details.aspx?id=35 


Debug under mono    MONO_LOG_LEVEL=debug mono MissionPlanner.exe
To fix any filename case issues under mono use    export MONO_IOMAP=drive:case
Data Dir /root/Mission Planner/
Log Dir /root/Mission Planner/logs
Running Dir /home/pi/Desktop/MissionPlanner-1.3.70/
User Data Dir /root/Mission Planner/
INFO Program - ******************* Logging Configured *******************
ERROR Program - System.EntryPointNotFoundException: LoadLibrary assembly:<unknown assembly> type:<unknown type> member:(null)
  at (wrapper managed-to-native) MissionPlanner.Utilities.NativeLibrary.LoadLibrary(string)
  at MissionPlanner.Program.Start (System.String[] args) [0x00258] in <a50d9501ac1e4291b857e1e537bbfe30>:0 
INFO Program - 64bit os False, 64bit process False
INFO MissionPlanner.MainV2 - Mainv2 ctor
INFO MissionPlanner.MainV2 - Loading config
INFO MissionPlanner.MainV2 - this   width 1389 height 617
INFO MissionPlanner.Utilities.srtm - .cctor
INFO MissionPlanner.Utilities.srtm - /root/Mission Planner/srtm
INFO MissionPlanner.Utilities.srtm - requestRunner start
INFO MissionPlanner.Utilities.Speech - TTS: init, mono = True
ERROR MissionPlanner.MainV2 - System.ArgumentException: Requested value 'BurntKermit.mpsystheme' was not found.
  at System.Enum+EnumResult.SetFailure (System.Enum+ParseFailureKind failure, System.String failureMessageID, System.Object failureMessageFormatArgument) [0x00023] in <f2b3ab7dfff746f594d2ef5b16ec3c90>:0 
  at System.Enum.TryParseEnum (System.Type enumType, System.String value, System.Boolean ignoreCase, System.Enum+EnumResult& parseResult) [0x0017a] in <f2b3ab7dfff746f594d2ef5b16ec3c90>:0 
  at System.Enum.Parse (System.Type enumType, System.String value, System.Boolean ignoreCase) [0x00010] in <f2b3ab7dfff746f594d2ef5b16ec3c90>:0 
  at System.Enum.Parse (System.Type enumType, System.String value) [0x00000] in <f2b3ab7dfff746f594d2ef5b16ec3c90>:0 
  at MissionPlanner.MainV2..ctor () [0x007be] in <a50d9501ac1e4291b857e1e537bbfe30>:0 
INFO MissionPlanner.MainV2 - Create FD
INFO MissionPlanner.GCSViews.FlightData - Ctor Start
INFO MissionPlanner.GCSViews.FlightData - Components Done
INFO MissionPlanner.GCSViews.FlightData - Tunning Graph Settings
INFO MissionPlanner.GCSViews.FlightData - HUD Settings
INFO MissionPlanner.ArduPilot.Common - getModesList Called
Using backup param data
INFO MissionPlanner.GCSViews.FlightData - Graph Setup
INFO MissionPlanner.GCSViews.FlightData - Map Setup
INFO MissionPlanner.MainV2 - Create FP
INFO MissionPlanner.GCSViews.FlightPlannerBase - Loading wp params
INFO MissionPlanner.GCSViews.FlightPlannerBase - param WP_RADIUS 30
INFO MissionPlanner.GCSViews.FlightPlannerBase - param LOITER_RADIUS 45
INFO MissionPlanner.GCSViews.FlightPlannerBase - Reading MAV_CMD for ArduCopter2
INFO MissionPlanner.GCSViews.FlightPlannerBase - Reading MAV_CMD for ArduCopter2
INFO MissionPlanner.GCSViews.FlightPlannerBase - updateMapType invoke req? False
INFO MissionPlanner.MainV2 - Create SIM
INFO MissionPlanner.MainV2 - Saving config
INFO MissionPlanner.MainV2 - Load Pluggins
INFO MissionPlanner.Plugin.PluginLoader - Plugin Load /home/pi/Desktop/MissionPlanner-1.3.70/plugins/MissionPlanner.Gridv2.dll
INFO MissionPlanner.Plugin.PluginLoader - Plugin Init Grid 0.1 by Michael Oborne
INFO MissionPlanner.Plugin.PluginLoader - Plugin Load /home/pi/Desktop/MissionPlanner-1.3.70/plugins/MissionPlanner.Gridv2.dll time 0.013943 s
INFO MissionPlanner.Plugin.PluginLoader - Plugin Load /home/pi/Desktop/MissionPlanner-1.3.70/plugins/MissionPlanner.SimpleGrid.dll
INFO MissionPlanner.Plugin.PluginLoader - Plugin Init SimpleGrid 0.1 by Michael Oborne
INFO MissionPlanner.Plugin.PluginLoader - Plugin Load /home/pi/Desktop/MissionPlanner-1.3.70/plugins/MissionPlanner.SimpleGrid.dll time 0.010662 s
INFO MissionPlanner.Plugin.PluginLoader - Plugin Load /home/pi/Desktop/MissionPlanner-1.3.70/plugins/MavlinkMessagePlugin.dll
Unknown Packet
INFO MissionPlanner.Plugin.PluginLoader - Plugin Init MavlinkMessagePlugin 0.1 by Michael Oborne
INFO MissionPlanner.Plugin.PluginLoader - Plugin Load /home/pi/Desktop/MissionPlanner-1.3.70/plugins/MavlinkMessagePlugin.dll time 0.025612 s
INFO MissionPlanner.Plugin.PluginLoader - Plugin Load /home/pi/Desktop/MissionPlanner-1.3.70/plugins/TrackerHome.dll
INFO MissionPlanner.Plugin.PluginLoader - Plugin Init GPS Tracker Home Plugin 1.0 by Will Bryan
INFO MissionPlanner.Plugin.PluginLoader - Plugin Load /home/pi/Desktop/MissionPlanner-1.3.70/plugins/TrackerHome.dll time 0.012786 s
INFO MissionPlanner.Plugin.PluginLoader - Plugin Load /home/pi/Desktop/MissionPlanner-1.3.70/plugins/MissionPlanner.Stats.dll
INFO MissionPlanner.Plugin.PluginLoader - Plugin Init Stats 0.1 by Michael Oborne
INFO MissionPlanner.Plugin.PluginLoader - Plugin Load /home/pi/Desktop/MissionPlanner-1.3.70/plugins/MissionPlanner.Stats.dll time 0.018534 s
ERROR MissionPlanner.Plugin.PluginLoader - System.DllNotFoundException: setupapi.dll assembly:<unknown assembly> type:<unknown type> member:(null)
  at (wrapper managed-to-native) TrackerHomeGPS.Device.SetupDiGetClassDevs(System.Guid&,intptr,intptr,uint)
  at TrackerHomeGPS.Device.DevicePresent (System.Guid g) [0x00017] in <5ebb9038084a4e84975a06f6ae3d12b3>:0 
  at TrackerHomeGPS.GarminUSBGPS.DevicePresent () [0x00000] in <5ebb9038084a4e84975a06f6ae3d12b3>:0 
  at TrackerHome.getDevice () [0x00000] in <5ebb9038084a4e84975a06f6ae3d12b3>:0 
  at TrackerHome.Loaded () [0x00115] in <5ebb9038084a4e84975a06f6ae3d12b3>:0 
  at MissionPlanner.Plugin.PluginLoader.LoadAll () [0x00099] in <a50d9501ac1e4291b857e1e537bbfe30>:0 
INFO MissionPlanner.MainV2 - Load Pluggins... Done
INFO MissionPlanner.MainV2 - show FlightData
Open MissionPlanner.GCSViews.FlightData FlightData
INFO MissionPlanner.GCSViews.FlightData - Activate Called

=================================================================
	Native Crash Reporting
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

=================================================================
	Native stacktrace:
=================================================================
	 (No frames) 


=================================================================
	Telemetry Dumper:
=================================================================
Pkilling 0xaebff430 from 0xb6f27b00
Pkilling 0xacfff430 from 0xb6f27b00
Pkilling 0xac465430 from 0xb6f27b00
Pkilling 0xb65a3430 from 0xb6f27b00
Pkilling 0xacafd430 from 0xb6f27b00
Pkilling 0xac162430 from 0xb6f27b00
Pkilling 0xaeed8430 from 0xb6f27b00
Pkilling 0xaccff430 from 0xb6f27b00
Pkilling 0xad56b430 from 0xb6f27b00
Pkilling 0xac364430 from 0xb6f27b00
Pkilling 0xac9fc430 from 0xb6f27b00
Could not exec mono-hang-watchdog, expected on path '/etc/../bin/mono-hang-watchdog' (errno 2)
Pkilling 0xac566430 from 0xb6f27b00
Pkilling 0xac061430 from 0xb6f27b00
Pkilling 0xad2ff430 from 0xb6f27b00
Pkilling 0xaf6fc430 from 0xb6f27b00
Pkilling 0xacbfe430 from 0xb6f27b00
Pkilling 0xa6f6a430 from 0xb6f27b00
Pkilling 0xac263430 from 0xb6f27b00
Entering thread summarizer pause from 0xb6f27b00
Finished thread summarizer pause from 0xb6f27b00.

Waiting for dumping threads to resume

=================================================================
	External Debugger Dump:
=================================================================
[New LWP 1534]
[New LWP 1535]
[New LWP 1538]
[New LWP 1539]
[New LWP 1540]
[New LWP 1542]
[New LWP 1543]
[New LWP 1544]
[New LWP 1545]
[New LWP 1546]
[New LWP 1547]
[New LWP 1548]
[New LWP 1549]
[New LWP 1550]
[New LWP 1551]
[New LWP 1552]
[New LWP 1553]
[New LWP 1554]
[New LWP 1555]
[New LWP 1559]
[New LWP 1560]
[New LWP 1561]
[New LWP 1563]
[New LWP 1564]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
__waitpid (options=0, stat_loc=0xbee9d060, pid=1562) at ../sysdeps/unix/sysv/linux/waitpid.c:30
30	../sysdeps/unix/sysv/linux/waitpid.c: Datei oder Verzeichnis nicht gefunden.
  Id   Target Id                                      Frame 
* 1    Thread 0xb6f27b00 (LWP 1533) "Base Thread"     __waitpid (options=0, stat_loc=0xbee9d060, pid=1562) at ../sysdeps/unix/sysv/linux/waitpid.c:30
  2    Thread 0xb5fff430 (LWP 1534) "SGen worker"     futex_wait_cancelable (private=0, expected=0, futex_word=0x4261b4) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
  3    Thread 0xb65a3430 (LWP 1535) "Finalizer"       0xb6e60088 in futex_abstimed_wait_cancelable (private=0, abstime=0x0, expected=1, futex_word=0x41e488) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
  4    Thread 0xaf6fc430 (LWP 1538) "Thread Pool I/O" futex_wake (private=0, processes_to_wake=1, futex_word=<optimized out>) at ../sysdeps/unix/sysv/linux/futex-internal.h:231
  5    Thread 0xaeed8430 (LWP 1539) "SRTM request ru" futex_reltimed_wait_cancelable (private=0, reltime=0xaeed7728, expected=0, futex_word=0x4265d0) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
  6    Thread 0xaebff430 (LWP 1540) "Warning Engine"  futex_reltimed_wait_cancelable (private=0, reltime=0xaebfe6f0, expected=0, futex_word=0x4265d0) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
  7    Thread 0xad56b430 (LWP 1542) "elevation"       futex_reltimed_wait_cancelable (private=0, reltime=0xad56a2d0, expected=0, futex_word=0x4265d0) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
  8    Thread 0xad2ff430 (LWP 1543) "Base Thread"     futex_reltimed_wait_cancelable (private=0, reltime=0xad2fec80, expected=0, futex_word=0x4265d0) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
  9    Thread 0xacfff430 (LWP 1544) "Thread Pool Wor" futex_reltimed_wait_cancelable (private=0, reltime=0xacffdfa0, expected=0, futex_word=0x756e84) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
  10   Thread 0xaccff430 (LWP 1545) "Thread Pool Wor" futex_abstimed_wait_cancelable (private=0, abstime=0xaccfed9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
  11   Thread 0xacbfe430 (LWP 1546) "Thread Pool Wor" futex_abstimed_wait_cancelable (private=0, abstime=0xacbfdd9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
  12   Thread 0xacafd430 (LWP 1547) "Thread Pool Wor" futex_abstimed_wait_cancelable (private=0, abstime=0xacafcd9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
  13   Thread 0xac9fc430 (LWP 1548) "Timer-Scheduler" futex_reltimed_wait_cancelable (private=0, reltime=0xac9fb288, expected=0, futex_word=0x757060) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
  14   Thread 0xac566430 (LWP 1549) "TileLoader: 0"   futex_wait_cancelable (private=0, expected=0, futex_word=0x75aa20) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
  15   Thread 0xac465430 (LWP 1550) "TileLoader: 1"   futex_reltimed_wait_cancelable (private=0, reltime=0xac463f60, expected=0, futex_word=0x75a300) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
  16   Thread 0xac364430 (LWP 1551) "TileLoader: 2"   futex_wait_cancelable (private=0, expected=0, futex_word=0x75aa80) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
  17   Thread 0xac263430 (LWP 1552) "TileLoader: 3"   futex_reltimed_wait_cancelable (private=0, reltime=0xac261f60, expected=0, futex_word=0x75a240) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
  18   Thread 0xac162430 (LWP 1553) "TileLoader: 4"   futex_wait_cancelable (private=0, expected=0, futex_word=0x75aae0) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
  19   Thread 0xac061430 (LWP 1554) "Thread Pool Wor" futex_abstimed_wait_cancelable (private=0, abstime=0xac060d9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
  20   Thread 0xa6f6a430 (LWP 1555) "Thread Pool Wor" futex_abstimed_wait_cancelable (private=0, abstime=0xa6f69d9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
  21   Thread 0xa64df430 (LWP 1559) "Thread Pool Wor" futex_abstimed_wait_cancelable (private=0, abstime=0xa64ded9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
  22   Thread 0xa63c0430 (LWP 1560) "Thread Pool Wor" futex_abstimed_wait_cancelable (private=0, abstime=0xa63bfd9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
  23   Thread 0xa5fff430 (LWP 1561) "CacheEngine"     futex_reltimed_wait_cancelable (private=0, reltime=0xa5ffe2e8, expected=0, futex_word=0x4265d0) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
  24   Thread 0xa622b430 (LWP 1563) "Thread Pool Wor" futex_abstimed_wait_cancelable (private=0, abstime=0xa622ad9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
  25   Thread 0xa5efe430 (LWP 1564) "Thread Pool Wor" futex_abstimed_wait_cancelable (private=0, abstime=0xa5efdd9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205

Thread 25 (Thread 0xa5efe430 (LWP 1564)):
#0  futex_abstimed_wait_cancelable (private=0, abstime=0xa5efdd9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x41e9c8, abstime=abstime@entry=0xa5efdd9c) at sem_waitcommon.c:115
#2  0xb6e605c4 in __new_sem_wait_slow (sem=0x41e9c8, abstime=0xa5efdd9c) at sem_waitcommon.c:282
#3  0x002b8868 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 24 (Thread 0xa622b430 (LWP 1563)):
#0  futex_abstimed_wait_cancelable (private=0, abstime=0xa622ad9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x41e9c8, abstime=abstime@entry=0xa622ad9c) at sem_waitcommon.c:115
#2  0xb6e605c4 in __new_sem_wait_slow (sem=0x41e9c8, abstime=0xa622ad9c) at sem_waitcommon.c:282
#3  0x002b8868 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 23 (Thread 0xa5fff430 (LWP 1561)):
#0  futex_reltimed_wait_cancelable (private=0, reltime=0xa5ffe2e8, expected=0, futex_word=0x4265d0) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
#1  __pthread_cond_wait_common (abstime=0xa5ffe364, mutex=0x2, cond=0x4265a8) at pthread_cond_wait.c:533
#2  __pthread_cond_timedwait (cond=0x4265a8, mutex=0x2, abstime=0xa5ffe364) at pthread_cond_wait.c:667
#3  0x003192e4 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 22 (Thread 0xa63c0430 (LWP 1560)):
#0  futex_abstimed_wait_cancelable (private=0, abstime=0xa63bfd9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x41e9c8, abstime=abstime@entry=0xa63bfd9c) at sem_waitcommon.c:115
#2  0xb6e605c4 in __new_sem_wait_slow (sem=0x41e9c8, abstime=0xa63bfd9c) at sem_waitcommon.c:282
#3  0x002b8868 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 21 (Thread 0xa64df430 (LWP 1559)):
#0  futex_abstimed_wait_cancelable (private=0, abstime=0xa64ded9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x41e9c8, abstime=abstime@entry=0xa64ded9c) at sem_waitcommon.c:115
#2  0xb6e605c4 in __new_sem_wait_slow (sem=0x41e9c8, abstime=0xa64ded9c) at sem_waitcommon.c:282
#3  0x002b8868 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 20 (Thread 0xa6f6a430 (LWP 1555)):
#0  futex_abstimed_wait_cancelable (private=0, abstime=0xa6f69d9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x41e9c8, abstime=abstime@entry=0xa6f69d9c) at sem_waitcommon.c:115
#2  0xb6e605c4 in __new_sem_wait_slow (sem=0x41e9c8, abstime=0xa6f69d9c) at sem_waitcommon.c:282
#3  0x002b8868 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 19 (Thread 0xac061430 (LWP 1554)):
#0  futex_abstimed_wait_cancelable (private=0, abstime=0xac060d9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x41e9c8, abstime=abstime@entry=0xac060d9c) at sem_waitcommon.c:115
#2  0xb6e605c4 in __new_sem_wait_slow (sem=0x41e9c8, abstime=0xac060d9c) at sem_waitcommon.c:282
#3  0x002b8868 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 18 (Thread 0xac162430 (LWP 1553)):
#0  futex_wait_cancelable (private=0, expected=0, futex_word=0x75aae0) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x0, cond=0x75aab8) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x75aab8, mutex=0x0) at pthread_cond_wait.c:655
#3  0x00319320 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 17 (Thread 0xac263430 (LWP 1552)):
#0  futex_reltimed_wait_cancelable (private=0, reltime=0xac261f60, expected=0, futex_word=0x75a240) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
#1  __pthread_cond_wait_common (abstime=0xac261fdc, mutex=0x2, cond=0x75a218) at pthread_cond_wait.c:533
#2  __pthread_cond_timedwait (cond=0x75a218, mutex=0x2, abstime=0xac261fdc) at pthread_cond_wait.c:667
#3  0x003192e4 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 16 (Thread 0xac364430 (LWP 1551)):
#0  futex_wait_cancelable (private=0, expected=0, futex_word=0x75aa80) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x0, cond=0x75aa58) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x75aa58, mutex=0x0) at pthread_cond_wait.c:655
#3  0x00319320 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 15 (Thread 0xac465430 (LWP 1550)):
#0  futex_reltimed_wait_cancelable (private=0, reltime=0xac463f60, expected=0, futex_word=0x75a300) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
#1  __pthread_cond_wait_common (abstime=0xac463fdc, mutex=0x2, cond=0x75a2d8) at pthread_cond_wait.c:533
#2  __pthread_cond_timedwait (cond=0x75a2d8, mutex=0x2, abstime=0xac463fdc) at pthread_cond_wait.c:667
#3  0x003192e4 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 14 (Thread 0xac566430 (LWP 1549)):
#0  futex_wait_cancelable (private=0, expected=0, futex_word=0x75aa20) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x0, cond=0x75a9f8) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x75a9f8, mutex=0x0) at pthread_cond_wait.c:655
#3  0x00319320 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 13 (Thread 0xac9fc430 (LWP 1548)):
#0  futex_reltimed_wait_cancelable (private=0, reltime=0xac9fb288, expected=0, futex_word=0x757060) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
#1  __pthread_cond_wait_common (abstime=0xac9fb304, mutex=0x2, cond=0x757038) at pthread_cond_wait.c:533
#2  __pthread_cond_timedwait (cond=0x757038, mutex=0x2, abstime=0xac9fb304) at pthread_cond_wait.c:667
#3  0x003192e4 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 12 (Thread 0xacafd430 (LWP 1547)):
#0  futex_abstimed_wait_cancelable (private=0, abstime=0xacafcd9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x41e9c8, abstime=abstime@entry=0xacafcd9c) at sem_waitcommon.c:115
#2  0xb6e605c4 in __new_sem_wait_slow (sem=0x41e9c8, abstime=0xacafcd9c) at sem_waitcommon.c:282
#3  0x002b8868 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 11 (Thread 0xacbfe430 (LWP 1546)):
#0  futex_abstimed_wait_cancelable (private=0, abstime=0xacbfdd9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x41e9c8, abstime=abstime@entry=0xacbfdd9c) at sem_waitcommon.c:115
#2  0xb6e605c4 in __new_sem_wait_slow (sem=0x41e9c8, abstime=0xacbfdd9c) at sem_waitcommon.c:282
#3  0x002b8868 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 10 (Thread 0xaccff430 (LWP 1545)):
#0  futex_abstimed_wait_cancelable (private=0, abstime=0xaccfed9c, expected=1, futex_word=0x41e9c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x41e9c8, abstime=abstime@entry=0xaccfed9c) at sem_waitcommon.c:115
#2  0xb6e605c4 in __new_sem_wait_slow (sem=0x41e9c8, abstime=0xaccfed9c) at sem_waitcommon.c:282
#3  0x002b8868 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 9 (Thread 0xacfff430 (LWP 1544)):
#0  futex_reltimed_wait_cancelable (private=0, reltime=0xacffdfa0, expected=0, futex_word=0x756e84) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
#1  __pthread_cond_wait_common (abstime=0xacffe01c, mutex=0x2, cond=0x756e58) at pthread_cond_wait.c:533
#2  __pthread_cond_timedwait (cond=0x756e58, mutex=0x2, abstime=0xacffe01c) at pthread_cond_wait.c:667
#3  0x003192e4 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 8 (Thread 0xad2ff430 (LWP 1543)):
#0  futex_reltimed_wait_cancelable (private=0, reltime=0xad2fec80, expected=0, futex_word=0x4265d0) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
#1  __pthread_cond_wait_common (abstime=0xad2fecfc, mutex=0x2, cond=0x4265a8) at pthread_cond_wait.c:533
#2  __pthread_cond_timedwait (cond=0x4265a8, mutex=0x2, abstime=0xad2fecfc) at pthread_cond_wait.c:667
#3  0x003192e4 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 7 (Thread 0xad56b430 (LWP 1542)):
#0  futex_reltimed_wait_cancelable (private=0, reltime=0xad56a2d0, expected=0, futex_word=0x4265d0) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
#1  __pthread_cond_wait_common (abstime=0xad56a34c, mutex=0x2, cond=0x4265a8) at pthread_cond_wait.c:533
#2  __pthread_cond_timedwait (cond=0x4265a8, mutex=0x2, abstime=0xad56a34c) at pthread_cond_wait.c:667
#3  0x003192e4 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 6 (Thread 0xaebff430 (LWP 1540)):
#0  futex_reltimed_wait_cancelable (private=0, reltime=0xaebfe6f0, expected=0, futex_word=0x4265d0) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
#1  __pthread_cond_wait_common (abstime=0xaebfe76c, mutex=0x2, cond=0x4265a8) at pthread_cond_wait.c:533
#2  __pthread_cond_timedwait (cond=0x4265a8, mutex=0x2, abstime=0xaebfe76c) at pthread_cond_wait.c:667
#3  0x003192e4 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 5 (Thread 0xaeed8430 (LWP 1539)):
#0  futex_reltimed_wait_cancelable (private=0, reltime=0xaeed7728, expected=0, futex_word=0x4265d0) at ../sysdeps/unix/sysv/linux/futex-internal.h:142
#1  __pthread_cond_wait_common (abstime=0xaeed77a4, mutex=0x2, cond=0x4265a8) at pthread_cond_wait.c:533
#2  __pthread_cond_timedwait (cond=0x4265a8, mutex=0x2, abstime=0xaeed77a4) at pthread_cond_wait.c:667
#3  0x003192e4 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 4 (Thread 0xaf6fc430 (LWP 1538)):
#0  futex_wake (private=0, processes_to_wake=1, futex_word=<optimized out>) at ../sysdeps/unix/sysv/linux/futex-internal.h:231
#1  __new_sem_post (sem=<optimized out>) at sem_post.c:74
#2  0x002b81e8 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0xb65a3430 (LWP 1535)):
#0  0xb6e60088 in futex_abstimed_wait_cancelable (private=0, abstime=0x0, expected=1, futex_word=0x41e488) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x41e488, abstime=0x0) at sem_waitcommon.c:115
#2  0xb6e601f4 in __new_sem_wait_slow (sem=0x41e488, abstime=0x0) at sem_waitcommon.c:282
#3  0x002a7768 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0xb5fff430 (LWP 1534)):
#0  futex_wait_cancelable (private=0, expected=0, futex_word=0x4261b4) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x0, cond=0x426188) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x426188, mutex=0x0) at pthread_cond_wait.c:655
#3  0x0030a7a8 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 1 (Thread 0xb6f27b00 (LWP 1533)):
#0  __waitpid (options=0, stat_loc=0xbee9d060, pid=1562) at ../sysdeps/unix/sysv/linux/waitpid.c:30
#1  __waitpid (pid=1562, stat_loc=0xbee9d060, options=0) at ../sysdeps/unix/sysv/linux/waitpid.c:25
#2  0x000ac4e8 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
[Inferior 1 (process 1533) detached]

=================================================================
	Basic Fault Address Reporting
=================================================================
instruction pointer is NULL, skip dumping
=================================================================
	Managed Stacktrace:
=================================================================
=================================================================
Abgebrochen

please try 1.3.71 version of MP

1 Like

I did try that. But unfortunately that gave me the same error. If you want me to, I could also upload the error log for 1.3.71

MP is not compiled for ARM chips. I tried that and QGC and same issue

I have thought about that. But I don’t want to believe it yet, since I managed to get 1.3.30 up to 1.3.37 up and running.
Even version 1.5.59 (I believe) works well.
Even if it has not been compiled with arm architecture in mind, I strongly think it is possible.

Unfortunately that is where my know-how stops.
I do know that it is possible to compile it yourself. However, that is not something I’m confident in doing.

Edit: I rand into the same problems as you mentioned with Qgc. But I can’t be bothered about that. That just seems to not work with arm chips, that’s right.

Mp doesn’t need to be compiled for arm to run. Mono need to be compiled for arm

1 Like

could it maybe help to downgrade to mono 6.4.0 or 6.6.0 instead of the newest stable version (6.8.0)

i’m pretty much clueless right now.

in case it may help, i’ll attach 2 files. terminal_debugger.txt which includes the whole mono output in my terminal when starting MissionPlanner.exe. (1.3.71)
and also mono_crash.json which is automatically being saved in the Programm Folder.

i would greatly appreciate any kind of help or clues.

mono_crash07.txt (32.1 KB) terminal-debugger.txt (461.9 KB)

i am checking into this, but on an odroid, as i dont have a pi4

ok so the missing link
you need to add a skiasharp .so file to the install directory
from here
https://www.nuget.org/packages/Jellyfin.SkiaSharp.NativeAssets.LinuxArm/

im running

wget https://www.nuget.org/api/v2/package/Jellyfin.SkiaSharp.NativeAssets.LinuxArm/1.68.1
unzip -o -j 1.68.1 runtimes/linux-arm/native/libSkiaSharp.so -d MissionPlanner

1 Like

Thanks a lot for looking into this Michael!
I just quickly added the .so file to my MissionPlanner-latest.zip directory.

However, that did not do the trick. Do i need to install it somehow or add it to another directory than the main MissionPlanner.zip (for example “lib”).

I will be looking further into this. I must have missed something.

edit:

short update.
i deleted the SkiaSharp.dll inside the MissionPlanner-latest.zip directory, just to see what would happen.

MP does start up now. however, not without major Error Messages and an missing gui. but i would call this a progress.

so my test was with beta MP.
and the only change i did was replace the libskiasharp.so file with the one from the nuget link

i just did a quick new installation. flashed the sd card and started from the beginning.

however, it still crashes on startup. but i did not test the Beta MP. maybe that is what i should do?

i figured, it would make sence to share my method step-by-step. maybe i just forgot to install something. (e.g. ist mono-developer needed?)

sudo apt update

sudo apt upgrade

sudo apt install apt-transport-https dirmngr gnupg ca-certificates 

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80--recv-keys3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF echo "deb https://download.mono-project.com/repo/debian stable-raspbianbuster main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list 

sudoapt update

sudo apt install mono-devel

sudo apt install mono-complete

sudo apt install festival



sudo apt update


sudo reboot

`download MissionPlanner-latest.zip fromhttps://firmware.ardupilot.org/Tools/MissionPlanner/`

`unzip in /home/pi/Desktop/MissionPlanner`

wget https://www.nuget.org/api/v2/package/Jellyfin.SkiaSharp.NativeAssets.LinuxArm/1.68.1 unzip -o -j 1.68.1 runtimes/linux-arm/native/libSkiaSharp.so -d /home/pi/Desktop/MissionPlanner

`(since wget did not work, i downloaded the .zip manually and copied the .so file)`

cd /home/pi/Desktop/MissionPlanner

sudo mono MissionPlanner.exe

p.s. the dependency “libfontconfig1” for LibSkiaSharp.so is installed. but i do not know if i am missing some other dependencies

just to give a quick update.

granted; basically i don’t have any idea what i am doing, compared with someone who is a professional with this stuff.

anyway: i basically replaced various libSkiaSharp.so and .dll files (also those inside the directories x86 and x64). i tried native Arm builds, native linux x64 builds and what not.

it didn’t do much.

i then downgraded mono 6.8.0 to 6.0.0(.334) and tried again. no luck.
however it did change something. where your name and the version number on the loading screen used to be a yellow bar (view my previous screenshot), it now shows your name and the Version number correctly with mono 6.0.0.

after that i started trying all of the previous MissionPlanner versions. 1.3.57 up until 1.3.71 do not work on my raspberry pi 4.
however, 1.3.56 DOES work! (without changing any libSkiaSharp.so files)

i did notice, that there are a lot of new skiasharp files in 1.3.57 an higher, which are not present in 1.3.56. so i guess, your assumption about libSkiaSharp is right.

i did notice, that the libSkiaSharp.so from your file was build for “arm32/64” (which is correct for raspberry) however, “mono --version” shows the information: "architecture: Armel, vfp+hard)

these are just some observations i made as an user without knowledge.
if anyone, besides Michael, does know what is going on here, please feel free to let me know :slight_smile:

Thanks a lot.

wget https://ci.appveyor.com/api/projects/meee1/missionplanner/artifacts/MissionPlannerBeta.zip?tag=beta

mkdir MissionPlanner && cd MissionPlanner/ && unzip …/MissionPlannerBeta.zip?tag=beta

wget https://www.nuget.org/api/v2/package/Jellyfin.SkiaSharp.NativeAssets.LinuxArm/1.68.1

unzip -o -j 1.68.1 runtimes/linux-arm/native/libSkiaSharp.so

Thanks again for your help Michael!
However, still no luck with the beta version.

https://github.com/jellyfin/jellyfin-skiasharp-native. This is the build scripts for the missing file.

I really appreciate your help Michael!

I read a little further into building the .so file directly on the pi and stumbled across someones guide on how to do it, since it doesn’t seem to work the easy route on the rasp4.

Anyone eager to try may find this guide by jclapis very usefull. He also uploaded his build of the libSkiaSharp.so on github. you’ll find the link here in the second comment.

However, some of his steps (patching sourcecode) have changed shortly (because the sourcecode of SkiaSharp changed since)combined with some minor other problems leading to the build aborting and me being overwhelmed.

My last resort was, to actually install an native 64bit ubuntu 18.04LTS image for the pi (before i used the official raspbian buster image) the image can be found here (there also should be a 20.04 64bit)
now my mono architecture changed from armel to arm64, and the string “uname -a” returned “aarch64” in comparison to “armv7l” on raspbian buster.
At least this solved some minor problems with mono not showing the loading screen right. (the yellow bar i mentioned earlier).

so by now i really ran out of ideas and would pass on the project to anyone who knows his stuff better, than i do.

my hopes are, that i could spark some interest in fellow people and shortly someone here will answer with an “EUREKA!”

anyway, my odyssey ends here and i will settle down using Mission Planner 1.3.56 for now. since it was only meant to pass through the nmea output via bluetooth.

cheers,
Holly

p.s.: Just to complete things, i’ll throw in the error log from building the .so file.

[4/936] compile ../../../third_party/skcms/skcms.cc
FAILED: obj/third_party/skcms/skcms.skcms.o 
c++ -MD -MF obj/third_party/skcms/skcms.skcms.o.d -DNDEBUG -I../../../include/third_party/skcms -w -std=c11 -fPIC -fstrict-aliasing -fvisibility=hidden -O3 -fdata-sections -ffunction-sections -Wno-unused-parameter -DSKIA_C_DLL -std=c++17 -fvisibility-inlines-hidden -fno-exceptions -fno-rtti -c ../../../third_party/skcms/skcms.cc -o obj/third_party/skcms/skcms.skcms.o
during RTL pass: expand
In file included from ../../../third_party/skcms/skcms.cc:2053:
../../../third_party/skcms/src/Transform_inl.h: In function ‘void baseline::exec_ops(const Op*, const void**, const char*, char*, int)’:
../../../third_party/skcms/src/Transform_inl.h:766:13: internal compiler error: in convert_move, at expr.c:218
 static void exec_ops(const Op* ops, const void** args,
             ^~~~~~~~
0xb6a7c717 __libc_start_main
	/build/glibc-FUvrFr/glibc-2.28/csu/libc-start.c:308

agh ok, the ARCH ive been testing is
Linux odroid 4.16.0-v7 #1 SMP PREEMPT Mon Apr 2 11:02:49 UTC 2018 armv7l armv7l armv7l GNU/Linux
in docker however.

and the build of libskiasharp is
root@odroid:~/mp# file libSkiaSharp.so
libSkiaSharp.so: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (GNU/Linux), dynamically linked, stripped

This script doesn’t resolve the issues above - I haven’t dug into that - but I have modified my MP Linux install script to suit Pi running a debian based arm64 distro. Might make it easier/quicker for someone else to push this along. It just pulls everything down and provides a desktop icon to run MP.
My Ubuntu 20.04 script is in the zip too, just in case anyone is interested. MP works in Ubuntu 20.04, but if anyone wants to use the script they’ll have to fix the paths, as I was lazy and it’s specific to my machine/user (the Pi script uses the default Raspbian user, so no issue there for most people - except the issues detailed above).
MP_Linux.zip (2.3 KB)

1 Like