The GUI plugin for steering the vehicle actor keeps failing

In the Follow Me tutorial under the Advanced Topics, spawning the pedestrian and vehicle actors with different paths work for me but the last section about controlling the vehicle’s throttle, brake, and steering with the keyboard keeps failing and I can’t get the plugin to work.

When I run this command:

sphinx /opt/parrot-sphinx/usr/share/sphinx/worlds/outdoor_1.world \
/opt/parrot-sphinx/usr/share/sphinx/drones/anafi4k.drone::name=follower::pose=starting_pen \
/opt/parrot-sphinx/usr/share/sphinx/actors/off_road_vehicle.actor::machine=follower::path=/opt/parrot-sphinx/usr/share/sphinx/paths/follow_road.path

sphinx opens up fine. However, as soon as I added this code snippet:

<plugin name="libsphinx_vehicle_gui" filename="libsphinx_vehicle_gui.so">
  <model_name>vehicle</model_name>
</plugin>

before the </gui> tag in the outdoor_1.world and re-run the same command, I get this error:

[Msg] Preparation of firmware http://plf.parrot.com/sphinx/firmwares/anafi/pc/latest/images/anafi-pc.ext2.zip
I shd: omniscient_vehicle: opened: sample_count=4000 sample_size=192 sample_rate=1000 metadata_size=1125
I shd: wind: opened: sample_count=4000 sample_size=24 sample_rate=1000 metadata_size=125
[libprotobuf FATAL ./google/protobuf/repeated_field.h:1575] CHECK failed: (n) >= (0): 
terminate called after throwing an instance of 'google::protobuf::FatalException'
  what():  CHECK failed: (n) >= (0): 
*** Aborted
Register dump:

 RAX: 0000000000000000   RBX: 0000564a8742cd70   RCX: 00007ffb1eb03fb7
 RDX: 0000000000000000   RSI: 00007fff25258ac0   RDI: 0000000000000002
 RBP: 00007ffb1eeb1840   R8 : 0000000000000000   R9 : 00007fff25258ac0
 R10: 0000000000000008   R11: 0000000000000246   R12: 0000564a874248a0
 R13: 00007fff25258e70   R14: 000000000000000d   R15: 0000564a87447350
 RSP: 00007fff25258ac0

 RIP: 00007ffb1eb03fb7   EFLAGS: 00000246

 CS: 0033   FS: 0000   GS: 0000

 Trap: 00000000   Error: 00000000   OldMask: 00000000   CR2: 00000000

 FPUCW: 0000037f   FPUSW: 00000000   TAG: 00000000
 RIP: 00000000   RDP: 00000000

 ST(0) 0000 0000000000000000   ST(1) 0000 0000000000000000
 ST(2) 0000 0000000000000000   ST(3) 0000 0000000000000000
 ST(4) 0000 0000000000000000   ST(5) ffff a000000000000000
 ST(6) ffff a000000000000000   ST(7) a000 a000000000000000
 mxcsr: 1fa7
 XMM0:  000000000000000000000000ffffffff XMM1:  000000000000000000000000ffffffff
 XMM2:  000000000000000000000000ffffffff XMM3:  000000000000000000000000ffffffff
 XMM4:  000000000000000000000000ffffffff XMM5:  000000000000000000000000ffffffff
 XMM6:  000000000000000000000000ffffffff XMM7:  000000000000000000000000ffffffff
 XMM8:  000000000000000000000000ffffffff XMM9:  000000000000000000000000ffffffff
 XMM10: 000000000000000000000000ffffffff XMM11: 000000000000000000000000ffffffff
 XMM12: 000000000000000000000000ffffffff XMM13: 000000000000000000000000ffffffff
 XMM14: 000000000000000000000000ffffffff XMM15: 000000000000000000000000ffffffff

Backtrace:
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7ffb1eb03fb7]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x141)[0x7ffb1eb05921]
/usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x8c957)[0x7ffb1f15a957]
/usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x92ae6)[0x7ffb1f160ae6]
/usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x91b49)[0x7ffb1f15fb49]
/usr/lib/x86_64-linux-gnu/libstdc++.so.6(__gxx_personality_v0+0x2a8)[0x7ffb1f1604b8]
/lib/x86_64-linux-gnu/libgcc_s.so.1(+0x10573)[0x7ffb1eec6573]
/lib/x86_64-linux-gnu/libgcc_s.so.1(_Unwind_Resume+0x125)[0x7ffb1eec6df5]
/usr/lib/x86_64-linux-gnu/libprotobuf.so.10(_ZN6google8protobuf25EncodedDescriptorDatabase3AddEPKvi+0xec)[0x7ffa7c7892bc]
/usr/lib/x86_64-linux-gnu/libprotobuf.so.10(_ZN6google8protobuf14DescriptorPool24InternalAddGeneratedFileEPKvi+0x78)[0x7ffa7c761358]
/usr/lib/x86_64-linux-gnu/libprotobuf.so.10(_ZN6google8protobuf48protobuf_AddDesc_google_2fprotobuf_2fany_2eprotoEv+0x44)[0x7ffa7c758624]
/lib64/ld-linux-x86-64.so.2(+0x108d3)[0x7ffb20f878d3]
/lib64/ld-linux-x86-64.so.2(+0x1539f)[0x7ffb20f8c39f]
/lib/x86_64-linux-gnu/libc.so.6(_dl_catch_exception+0x6f)[0x7ffb1ec2c1ef]
/lib64/ld-linux-x86-64.so.2(+0x1496a)[0x7ffb20f8b96a]
/lib/x86_64-linux-gnu/libdl.so.2(+0xf96)[0x7ffb19859f96]
/lib/x86_64-linux-gnu/libc.so.6(_dl_catch_exception+0x6f)[0x7ffb1ec2c1ef]
/lib/x86_64-linux-gnu/libc.so.6(_dl_catch_error+0x2f)[0x7ffb1ec2c27f]
/lib/x86_64-linux-gnu/libdl.so.2(+0x1745)[0x7ffb1985a745]
/lib/x86_64-linux-gnu/libdl.so.2(dlopen+0x71)[0x7ffb1985a051]
/opt/parrot-sphinx/usr/lib/libgazebo_gui.so.7(_ZN6gazebo7PluginTINS_9GUIPluginEE6CreateERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESA_+0x3e5)[0x7ffb208b6435]
/opt/parrot-sphinx/usr/lib/libgazebo_gui.so.7(_ZN6gazebo3gui10MainWindow12OnAddPluginsEv+0xb8)[0x7ffb208f7d18]
/usr/lib/x86_64-linux-gnu/libQtCore.so.4(_ZN7QObject5eventEP6QEvent+0x1d1)[0x7ffb2015bd11]
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(_ZN7QWidget5eventEP6QEvent+0x70c)[0x7ffb1b2afd9c]
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(_ZN11QMainWindow5eventEP6QEvent+0x113)[0x7ffb1b694323]
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(_ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent+0x8c)[0x7ffb1b25903c]
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(_ZN12QApplication6notifyEP7QObjectP6QEvent+0x2b6)[0x7ffb1b25ff76]
/usr/lib/x86_64-linux-gnu/libQtCore.so.4(_ZN16QCoreApplication14notifyInternalEP7QObjectP6QEvent+0x8d)[0x7ffb201418ad]
/usr/lib/x86_64-linux-gnu/libQtCore.so.4(_ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData+0x376)[0x7ffb20145366]
/usr/lib/x86_64-linux-gnu/libQtCore.so.4(+0x1bb09e)[0x7ffb2017209e]
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_dispatch+0x2e7)[0x7ffb17b4e537]
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x4c770)[0x7ffb17b4e770]
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_iteration+0x2c)[0x7ffb17b4e7fc]
/usr/lib/x86_64-linux-gnu/libQtCore.so.4(_ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0x7e)[0x7ffb2017220e]
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(+0x272666)[0x7ffb1b306666]
/usr/lib/x86_64-linux-gnu/libQtCore.so.4(_ZN10QEventLoop13processEventsE6QFlagsINS_17ProcessEventsFlagEE+0x3f)[0x7ffb2014012f]
/usr/lib/x86_64-linux-gnu/libQtCore.so.4(_ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0x1b5)[0x7ffb20140495]
/usr/lib/x86_64-linux-gnu/libQtCore.so.4(_ZN16QCoreApplication4execEv+0x99)[0x7ffb20146459]
/opt/parrot-sphinx/usr/lib/libgazebo_gui.so.7(_ZN6gazebo3gui3runEiPPc+0x151)[0x7ffb208d5261]
gzclient(+0x82dac)[0x564a81ed8dac]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7ffb1eae6bf7]
gzclient(_start+0x2a)[0x564a81ed973a]

Memory map:

40427000-404d6000 rw-p 00000000 00:00 0 
40e5a000-40f09000 rw-p 00000000 00:00 0 
410f7000-411a6000 rw-p 00000000 00:00 0 
41632000-41634000 r-xs 00000000 00:01 155884                             /memfd:/.glXXXXXX (deleted)
564a81e56000-564a82235000 r-xp 00000000 00:1b 650003                     /opt/parrot-sphinx/usr/bin/gzclient-7.0.1
564a82434000-564a8243a000 r--p 003de000 00:1b 650003                     /opt/parrot-sphinx/usr/bin/gzclient-7.0.1
564a8243a000-564a8243b000 rw-p 003e4000 00:1b 650003                     /opt/parrot-sphinx/usr/bin/gzclient-7.0.1
564a8243b000-564a8243c000 rw-p 00000000 00:00 0 
564a8386f000-564a87888000 rw-p 00000000 00:00 0                          [heap]
7ffa48000000-7ffa48032000 rw-p 00000000 00:00 0 
7ffa48032000-7ffa4c000000 ---p 00000000 00:00 0 
7ffa4c000000-7ffa4c021000 rw-p 00000000 00:00 0 
7ffa4c021000-7ffa50000000 ---p 00000000 00:00 0 
7ffa50000000-7ffa50081000 rw-p 00000000 00:00 0 
7ffa50081000-7ffa54000000 ---p 00000000 00:00 0 
7ffa54000000-7ffa54021000 rw-p 00000000 00:00 0 

How can I fix it?

I also would like to know if there is a way to spawn a vehicle without a path and then control it using shell commands only (which I will call from a python script) because I want to study different interactions between the drone and the vehicle so it’d be easier if I can control them directly?

Hello, we are currently updating all our SDK tools - including Sphinx - for the release of ANAFI Ai.
This item won’t be fixed until the new release is deployed.

Hi Jerome. Thank you for your reply.

I am aware that people have asked something like the following question before in other threads, but I feel the new SDK tools will be unveiled anytime soon which I can’t wait to see. Any hint on which month that will happen in?

I completely understand if you cannot answer it for any reason.

Keep up the amazing work!

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.