MAVExplorer on MacOS?

229 views
Skip to first unread message

Andrew Tridgell

unread,
Sep 25, 2015, 8:49:37 AM9/25/15
to t...@3drobotics.com, t...@othermachine.co, drones-...@googlegroups.com
Hi Tim and Tom,

If either if you have time, can you check if this tool works on MacOS?

http://dev.ardupilot.com/wiki/using-mavexplorer-for-log-analysis/

It's based on the same widget sets you fixed up for MacOS in MAVProxy,
but I imagine it may need some tweaks.

Cheers, Tridge

Luis Vale Gonçalves

unread,
Sep 25, 2015, 12:59:30 PM9/25/15
to drones-discuss, t...@3drobotics.com, t...@othermachine.co
Hi Tridge

Did try to install on OS X 10.10.5 (Yosemite). Apparently some warnings during install but won't run:

Last login: Wed Sep 23 17:55:30 on ttys000

Sparkle:~ Luis$ sudo pip install --upgrade pymavlink mavproxy

Password:

Downloading/unpacking pymavlink

  Downloading pymavlink-1.1.62.tar.gz (1.7MB): 1.7MB downloaded

  Running setup.py (path:/private/tmp/pip_build_root/pymavlink/setup.py) egg_info for package pymavlink

    

Downloading/unpacking mavproxy

  Downloading MAVProxy-1.4.27.tar.gz (221kB): 221kB downloaded

  Running setup.py (path:/private/tmp/pip_build_root/mavproxy/setup.py) egg_info for package mavproxy

    

Requirement already up-to-date: pyserial in /Library/Python/2.7/site-packages (from mavproxy)

Installing collected packages: pymavlink, mavproxy

  Running setup.py install for pymavlink

    building 'mavnative' extension

    cc -fno-strict-aliasing -fno-common -dynamic -arch x86_64 -arch i386 -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch x86_64 -arch i386 -pipe -Igenerator/C/include_v1.0 -Imavnative -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c mavnative/mavnative.c -o build/temp.macosx-10.10-intel-2.7/mavnative/mavnative.o

    mavnative/mavnative.c:155:13: warning: enumeration value 'MAVLINK_PARSE_STATE_GOT_BAD_CRC1' not handled in switch [-Wswitch]

        switch (status->parse_state)

                ^

    mavnative/mavnative.c:459:25: warning: implicit conversion loses integer precision: 'Py_ssize_t' (aka 'long') to 'unsigned int' [-Wshorten-64-to-32]

            d->num_fields = num_fields;

                          ~ ^~~~~~~~~~

    mavnative/mavnative.c:475:44: warning: implicit conversion loses integer precision: 'long' to 'unsigned int' [-Wshorten-64-to-32]

                d->fields[fnum].array_length = PyInt_AsLong(len_obj);

                                             ~ ^~~~~~~~~~~~~~~~~~~~~

    3 warnings generated.

    mavnative/mavnative.c:155:13: warning: enumeration value 'MAVLINK_PARSE_STATE_GOT_BAD_CRC1' not handled in switch [-Wswitch]

        switch (status->parse_state)

                ^

    1 warning generated.

    cc -bundle -undefined dynamic_lookup -arch x86_64 -arch i386 -Wl,-F. build/temp.macosx-10.10-intel-2.7/mavnative/mavnative.o -o build/lib.macosx-10.10-intel-2.7/mavnative.so

    changing mode of build/scripts-2.7/magfit_delta.py from 644 to 755

    changing mode of build/scripts-2.7/mavextract.py from 644 to 755

    changing mode of build/scripts-2.7/mavgraph.py from 644 to 755

    changing mode of build/scripts-2.7/mavparmdiff.py from 644 to 755

    changing mode of build/scripts-2.7/mavtogpx.py from 644 to 755

    changing mode of build/scripts-2.7/magfit_gps.py from 644 to 755

    changing mode of build/scripts-2.7/mavflightmodes.py from 644 to 755

    changing mode of build/scripts-2.7/mavlogdump.py from 644 to 755

    changing mode of build/scripts-2.7/mavparms.py from 644 to 755

    changing mode of build/scripts-2.7/magfit_motors.py from 644 to 755

    changing mode of build/scripts-2.7/mavflighttime.py from 644 to 755

    changing mode of build/scripts-2.7/mavloss.py from 644 to 755

    changing mode of build/scripts-2.7/mavplayback.py from 644 to 755

    changing mode of build/scripts-2.7/magfit.py from 644 to 755

    changing mode of build/scripts-2.7/mavgpslock.py from 644 to 755

    changing mode of build/scripts-2.7/mavmission.py from 644 to 755

    changing mode of build/scripts-2.7/mavsigloss.py from 644 to 755

    changing mode of build/scripts-2.7/mavsearch.py from 644 to 755

    changing mode of build/scripts-2.7/mavtomfile.py from 644 to 755

    changing mode of build/scripts-2.7/mavgen.py from 644 to 755

    changing mode of build/scripts-2.7/mavkml.py from 644 to 755

    changing mode of build/scripts-2.7/mavfft.py from 644 to 755

    changing mode of build/scripts-2.7/mavsummarize.py from 644 to 755

    changing mode of build/scripts-2.7/MPU6KSearch.py from 644 to 755

    

    changing mode of /usr/local/bin/magfit.py to 755

    changing mode of /usr/local/bin/magfit_delta.py to 755

    changing mode of /usr/local/bin/magfit_gps.py to 755

    changing mode of /usr/local/bin/magfit_motors.py to 755

    changing mode of /usr/local/bin/mavextract.py to 755

    changing mode of /usr/local/bin/mavfft.py to 755

    changing mode of /usr/local/bin/mavflightmodes.py to 755

    changing mode of /usr/local/bin/mavflighttime.py to 755

    changing mode of /usr/local/bin/mavgen.py to 755

    changing mode of /usr/local/bin/mavgpslock.py to 755

    changing mode of /usr/local/bin/mavgraph.py to 755

    changing mode of /usr/local/bin/mavkml.py to 755

    changing mode of /usr/local/bin/mavlogdump.py to 755

    changing mode of /usr/local/bin/mavloss.py to 755

    changing mode of /usr/local/bin/mavmission.py to 755

    changing mode of /usr/local/bin/mavparmdiff.py to 755

    changing mode of /usr/local/bin/mavparms.py to 755

    changing mode of /usr/local/bin/mavplayback.py to 755

    changing mode of /usr/local/bin/mavsearch.py to 755

    changing mode of /usr/local/bin/mavsigloss.py to 755

    changing mode of /usr/local/bin/mavsummarize.py to 755

    changing mode of /usr/local/bin/mavtogpx.py to 755

    changing mode of /usr/local/bin/mavtomfile.py to 755

    changing mode of /usr/local/bin/MPU6KSearch.py to 755

  Running setup.py install for mavproxy

    changing mode of build/scripts-2.7/mavproxy.py from 644 to 755

    changing mode of build/scripts-2.7/mavflightview.py from 644 to 755

    changing mode of build/scripts-2.7/MAVExplorer.py from 644 to 755

    changing mode of build/scripts-2.7/mp_slipmap.py from 644 to 755

    changing mode of build/scripts-2.7/mp_tile.py from 644 to 755

    

    changing mode of /usr/local/bin/MAVExplorer.py to 755

    changing mode of /usr/local/bin/mavflightview.py to 755

    changing mode of /usr/local/bin/mavproxy.py to 755

    changing mode of /usr/local/bin/mp_slipmap.py to 755

    changing mode of /usr/local/bin/mp_tile.py to 755

Successfully installed pymavlink mavproxy

Cleaning up...

Sparkle:~ Luis$ cd /Users/Luis/apmplanner2/dataflashLogs 

Sparkle:dataflashLogs Luis$ mavexplorer.py 2.bin

Traceback (most recent call last):

  File "/usr/local/bin/mavexplorer.py", line 22, in <module>

    from lxml import objectify

ImportError: No module named lxml

Sparkle:dataflashLogs Luis$ 

Andrew Tridgell

unread,
Sep 25, 2015, 11:31:22 PM9/25/15
to Luis Vale Gonçalves, drones-discuss, t...@3drobotics.com, t...@othermachine.co
Hi Luis,

Thanks for trying it!

> ImportError: No module named lxml

ahh, I need to add lxml as a dependency.

Can you try "sudo pip install lxml" and see if that helps?

Cheers, Tridge

Luis Vale Gonçalves

unread,
Sep 26, 2015, 5:37:42 AM9/26/15
to drones-discuss, luis...@gmail.com, t...@3drobotics.com, t...@othermachine.co
done. some warnings pop up during the install of lxml

running setup.py install for lxml
    /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url'
      warnings.warn(msg)
    Building lxml version 3.4.4.
    Building without Cython.

but ends up with success

Successfully installed lxml
Cleaning up...


But there's an extra issue when running mavexplorer related to wx 

Sparkle:~ Luis$ cd /Users/Luis/apmplanner2/dataflashLogs
Sparkle:dataflashLogs Luis$ mavexplorer.py 2.bin
Process Process-1:

Traceback (most recent call last):
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/Library/Python/2.7/site-packages/MAVProxy/modules/lib/wxconsole.py", line 37, in child_task
    from wx_loader import wx
  File "/Library/Python/2.7/site-packages/MAVProxy/modules/lib/wx_loader.py", line 9, in <module>
    import wx
ImportError: No module named wx

I believe the package to install is described here ?? http://wiki.wxpython.org/How%20to%20install%20wxPython

Luis Vale Gonçalves

unread,
Sep 26, 2015, 6:13:34 AM9/26/15
to drones-discuss, t...@3drobotics.com, t...@othermachine.co
So I went up and installed wx from this package wxPython3.0-osx-3.0.2.0-cocoa-py2.7 and now MavExplorer runs


but almost any operation requested to Mavexplorer causes a crash from Python while trying to use wx


Reply all
Reply to author
Forward
0 new messages