3.4 dataflash logs are unsupported by almost everything

So, apparently the dataflash logs logs from AP 2.4:

  • cannot be uploaded to droneshare

  • cannot be converted (bin to log) by mission planner (lasted version)

  • cannot be analysed by mission planner (auto analysis)

Mission planner can open them and display data, but that’s it.

Has anyone had more luck than me, at least for getting a GPS track back out of it?

Similar problem with AC3.3. Must be a problem with the latest version of Mission Planner.
KML creation works for me as does bin to log.
Auto analysis, Gpx creation & upload to Droneshare does not work.

There is an similar issue posted here for a beta (github.com/diydrones/MissionPlanner/issues/1016) for one of the problems but you may want to add an issue for the others. I’m amazed no-one has pointed this out yet. The auto analysis hasn’t worked for a little while but I don’t use it much so hadn’t worried much about it.

I’ve posted a link to the AP2 team in their gitter channel to have a look.

Marc, any chance you can post a log file here to assist with investigations?

Thanks, Grant.

this is not due to AP3.4 dataflash logs. I have these logs working fine on APM Planner.

get the latest release from here firmware.diydrones.com/Tools/APMPlanner/beta/ it’s 2.0.19-rc3

:geek:

[quote=“gmorph”]I’ve posted a link to the AP2 team in their gitter channel to have a look.

Marc, any chance you can post a log file here to assist with investigations?

Thanks, Grant.[/quote]

Sure thing.

Can’t seem to attach a 20MB file to my post, so there it is:
marc.merlins.org/tmp/06.BIN

Thanks for looking.

Did you test in APM Planner 2.0.19-rc1? Tt works with your log as expected for me.

[quote=“billbonney”]get the latest release from here firmware.diydrones.com/Tools/APMPlanner/beta/ it’s 2.0.19-rc3

:geek:[/quote]

If I open a dataflash log, it crashes with
QSqlDatabase: QSQLITE driver not loaded
QSqlDatabase: available drivers:
DEBUG 2015-10-12T07:31:07.286 Created AP2DataPlotThread: AP2DataPlotThread(0x8262cc0)
DEBUG 2015-10-12T07:31:07.287 AP2DataPlotThread::run(): Log loading start - 42397696 bytes
QObject::connect: Cannot queue arguments of type ‘QTextBlock’
(Make sure ‘QTextBlock’ is registered using qRegisterMetaType().)
QObject::connect: Cannot queue arguments of type ‘QTextCursor’
(Make sure ‘QTextCursor’ is registered using qRegisterMetaType().)
ERROR 2015-10-12T07:31:07.289 "Unable to start transaction to database: Driver not loaded Driver not loaded"
INFO 2015-10-12T07:31:07.290 Plot Log loading took 0.003 seconds - 0 of 42397696 bytes used
QSqlQuery::prepare: database not open
QSqlQuery::prepare: database not open
DEBUG 2015-10-12T07:31:07.296 Graph loaded with no mode table. Running anyway, but text modes will not be available
QSqlQuery::prepare: database not open
DEBUG 2015-10-12T07:31:07.296 Graph loaded with no heartbeat either. No modes available
DEBUG 2015-10-12T07:31:07.296 Graph loaded with no mode table. Running anyway, but text modes will not be available
DEBUG 2015-10-12T07:31:07.298 AP2DataPlot2D::threadTerminated = AP2DataPlotThread(0x8262cc0)
DEBUG 2015-10-12T07:31:07.308 Destroyed AP2DataPlotThread: AP2DataPlotThread(0x8262cc0)
[2]+ Segmentation fault (core dumped) apmplanner2

On debian, I ran this and it helped (but it should be a package dependency)
legolas:~# apt-get install libqt5sql5-sqlite libqt5sql5-mysql

However “log to google earth file” is greyed out, and droneshare still cannot process 3.4 files, so I think I’m nowhere closer.

Which version of debian?

Our packages are build for ubuntu, not debian. And i know in the past there have been incompatibilities.

Btw. It’s pretty easy to build from source

Also, what do you use as a log analyser (I care about Plane related output) if droneshare doesn’t work.
In my case, droneshare won’t take any 3.4 files, and with 3.3 files while they get processed for GPS data, the built in log analyser fails on half my flights.
I reported this to the droneshare person, but I think they’re a bit behind (even droneshare.com Email is bouncing right now).

My brain. I don’t use the log analyser script.

As for the log analyser, the code is a python script that is stored here. I can be run from the command line. (not sure how much python you know)
see github.com/diydrones/ardupilot/ … ogAnalyzer

I tried upload to droneshare a 3.4 log, and you are correct that it is rejected. I don’ t have any idea on who or when that will be updated, sorry.

Thanks bill, I’ve confirmed loganalizer works.
It does output
Dupe Log Data: FAIL Duplicate data chunks found in log (381877 and 406070)
but this happens every time time I run it with any version of AP. It doesn’t look like a useful warning.

In the meantime, I guess that’s good enough until droneshare/MP catch up.

Hi Mark. I was able to use MP (latest stable version 1.3.32) and ran the “PX4 .Bin to .Log” on your 06.BIN log file and it worked fine.
I tried the Auto Analysis on the 06.BIN and have confirmed that doesn’t work.
I have contacted the MP team and let them know.

Thanks, Grant.

Note that “Create KML + gpx” also worked.
Thanks, Grant.

A fix has gone in so we hope Droneshare should be working again soon.
Thanks, Grant.

Just to keep people in the loop, i pulled the latest LogAnalyzer.py and added more tests to it, I feel more confident about it now, it might even fix issues that we have seen before, but unfortunately it’s not the real issue here, there’s some tight with expected message formats on our code that needs to be fixed, this has been a project we have been neglecting because we re-wrote this from scratch (and will release eventually), since this new version won’t be released soon enough and introduces breaking changes (which we will inform to all involved parties with enough time) I’m deep diving into this project and dealing with other problems aside from the real issue like legacy dependencies that won’t work with newer tools, but things are moving forward and will hopefully have a fix soon, if anyone has scala experience and would like to help let me know.

I’ve been working with Peter Barker getting some advice and going through code :smiley:

I still have found no way to output a gpx/kml with any tool so far.

[quote=“gmorph”]Note that “Create KML + gpx” also worked.
Thanks, Grant.[/quote]

I took the latest MP (1.3.32), opened a log (converted from dataflash) with ‘create KML +gpx’, and pretty much nothing happens. It doesn’t ask me for an output file or anything. Does it get saved somewhere magic without any output?
Another file, it pops up “time” with an ok button and says “bad input file”

I went back to apmplanner
INFO 2015-10-19T07:40:04.310 Git Commit: 2.0.18-28-gd676bbc-DEV
INFO 2015-10-19T07:40:04.310 APPLICATION_NAME: "APM Planner"
INFO 2015-10-19T07:40:04.310 APPLICATION_VERSION: “v2.0.19-rc3”

I do open log and I get “unknown data value found Q” and it dumps core. Then again loading an old log doesn’t crash but ‘log to google earth file’ is greyed out.
INFO 2015-10-22T17:00:03.885 Plot Log loading took 0.046 seconds - 8566 of 58088452 bytes used
[Thread 0x7fffaa7fc700 (LWP 5342) exited]
DEBUG 2015-10-22T17:00:03.927 Graph loaded with no mode table. Running anyway, but text modes will not be available
DEBUG 2015-10-22T17:00:03.939 AP2DataPlot2D::threadTerminated = AP2DataPlotThread(0x657b010)
DEBUG 2015-10-22T17:00:03.941 Destroyed AP2DataPlotThread: AP2DataPlotThread(0x657b010)

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff574a9b0 in QWidget::hide() ()
from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
(gdb) bt
#0 0x00007ffff574a9b0 in QWidget::hide() ()
from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#1 0x00000000008ee416 in ?? ()
#2 0x00000000009f8a64 in ?? ()
#3 0x00007ffff4a621c1 in QObject::event(QEvent*) ()
from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff575fedb in QWidget::event(QEvent*) ()
from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#5 0x00007ffff571db8c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#6 0x00007ffff5723230 in QApplication::notify(QObject*, QEvent*) ()
from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#7 0x00007ffff4a30a8b in QCoreApplication::notifyInternal(QObject*, QEvent*)
() from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8 0x00007ffff4a32bc7 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9 0x00007ffff4a87a23 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x00007fffee40ffe7 in g_main_context_dispatch ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
—Type to continue, or q to quit—
#11 0x00007fffee410240 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#12 0x00007fffee4102ec in g_main_context_iteration ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#13 0x00007ffff4a87e2f in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#14 0x00007ffff4a2e2ca in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#15 0x00007ffff4a35e3c in QCoreApplication::exec() ()
from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#16 0x000000000043da9e in ?? ()
#17 0x00007ffff38fab45 in __libc_start_main ()
from /lib/x86_64-linux-gnu/libc.so.6
#18 0x0000000000468e0f in ?? ()

Download 2.0.19-rc4 and that issue is fixed

Sorry, bill, apmplanner still crashes

All I did was to load this log:
marc.merlins.org/tmp/3_apmplannercrash.log

INFO 2015-10-24T16:41:09.945 Current Build Info
INFO 2015-10-24T16:41:09.945 Git Hash: faded5a51127b700e2f517da49c1ac0d7ea8090b
INFO 2015-10-24T16:41:09.945 Git Commit: 2.0.19-rc4-DEV
INFO 2015-10-24T16:41:09.945 APPLICATION_NAME: "APM Planner"
INFO 2015-10-24T16:41:09.946 APPLICATION_VERSION: "v2.0.19-rc4"
INFO 2015-10-24T16:41:09.946 APP_PLATFORM: ubuntu_trusty64
INFO 2015-10-24T16:41:09.946 APP_TYPE: stable

DEBUG 2015-10-24T16:43:34.891 AP2DataPlotThread::run(): Log loading start - 58088452 bytes
QObject::connect: Cannot queue arguments of type ‘QTextBlock’
(Make sure ‘QTextBlock’ is registered using qRegisterMetaType().)
QObject::connect: Cannot queue arguments of type ‘QTextCursor’
(Make sure ‘QTextCursor’ is registered using qRegisterMetaType().)
DEBUG 2015-10-24T16:43:34.907 AP2DataPlotThread::run(): Unknown data value found 'Q’
INFO 2015-10-24T16:43:34.908 Plot Log loading took 0.016 seconds - 8566 of 58088452 bytes used
[Thread 0x7fffc6709700 (LWP 11932) exited]
DEBUG 2015-10-24T16:43:34.917 Graph loaded with no mode table. Running anyway, but text modes will not be available
DEBUG 2015-10-24T16:43:34.924 AP2DataPlot2D::threadTerminated = AP2DataPlotThread(0x6acafa0)
DEBUG 2015-10-24T16:43:34.924 Destroyed AP2DataPlotThread: AP2DataPlotThread(0x6acafa0)

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff5ff59b0 in QWidget::hide() () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
(gdb) bt
#0 0x00007ffff5ff59b0 in QWidget::hide() ()
from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#1 0x0000000000904fd6 in ?? ()
#2 0x0000000000a0f834 in ?? ()
#3 0x00007ffff530d1c1 in QObject::event(QEvent*) ()
from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4 0x00007ffff600aedb in QWidget::event(QEvent*) ()
from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#5 0x00007ffff5fc8b8c in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#6 0x00007ffff5fce230 in QApplication::notify(QObject*, QEvent*) ()
from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#7 0x00007ffff52dba8b in QCoreApplication::notifyInternal(QObject*, QEvent*) ()
from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8 0x00007ffff52ddbc7 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9 0x00007ffff5332a23 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x00007fffeecbbfe7 in g_main_context_dispatch ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
—Type to continue, or q to quit—
#11 0x00007fffeecbc240 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#12 0x00007fffeecbc2ec in g_main_context_iteration ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#13 0x00007ffff5332e2f in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#14 0x00007ffff52d92ca in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) ()
from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#15 0x00007ffff52e0e3c in QCoreApplication::exec() ()
from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#16 0x000000000043db5e in ?? ()
#17 0x00007ffff41a6b45 in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#18 0x000000000047c17e in ?? ()

[quote=“gmorph”]A fix has gone in so we hope Droneshare should be working again soon.
Thanks, Grant.[/quote]

Hi Grant, I wasn’ t sure when “soon” was, but I tried again today.
Uploading my logs still fails “Invalid location data was found in that log, ignoring”

That was uploading this log marc.merlins.org/tmp/06.BIN

Obviously this is not a support forum for droneshare, but the real support channel is still broken:
support@droneshare.com
all relevant MX records point to non-existent hosts