USB log file download speed

We are flying long survey missions for gas pipeline inspection.

A typical flight last 45 to 60 minutes, which creates a log file between 200 to 300 megabytes.

The pixhawk cube we use is fixed inside the plane and not easy accessible. So we mounted an external USB connector, connected to the pixhawk USB connector (next to the I2C connector) so we can easily connect the pixhawk to a PC to download the log file.

Unfortunately it takes very long time, 200 MB takes around 12 minutes.

Even increasing the baud rate doesn’t seem to make any difference. Also connecting to the standard USB port on the side doesn’t speed thing up. No matter what baud rate we set, it is always taking the same time.

Are we doing something wrong?

PS: we also tried upgrading to Chibios, no improvement.

I’m afraid that 250kbytes/sec is about all you will get.
Options are:

  • use a companion computer, and transfer logs while you are flying to the companion computer using dataflash over MAVLink
  • use a microSD extender cable to make the microSD more accessible
  • change logging options to reduce log size

Thanks for the speedy answer. We already ordered microSD extenders, I was hoping not having to use them. :smile:

Are you able to elaborate more on transferring logs to the companion pc while flying @tridge? Are you talking about a service running on the companion computer that is requesting the log over mavlink with a message like this https://mavlink.io/en/messages/common.html#LOG_REQUEST_DATA?

Or is dataflash no longer storing on the microsd and its directly writing over USB?

CUAV X7 has a faster USB2.0 connection, would that help?

That is true. However, X7-Pro is not yet compatible with all firmwares. CUAV V5 also has faster USB and is compatible with most firmwares.

Does the normal X7 (not the Pro) support both ArduCopter and ArduPlane?

I’m not sure changing up the controller hardware is a solution I’d like to go with (although USB2.0 would be nice!). I’m in the same boat as OP, ~30min flight time, which makes pulling logs over mavlink/USB very slow. If I could get them onto my companion computer I could send partial logs over radio/wifi to a GCS.

I’m logging at roughly 200kb/s, so if I could dump the log over mavlink to my companion computer while flying then the whole log could be dumped by end of flight.

Our cube blacks are also buried deep within our (large) vehicles. We use SD cards with built in wifi to retrieve logs when required.

1 Like

@jimovonz that’s an interesting idea, I’ll look into that. I just stumbled upon this in the documentation https://ardupilot.org/dev/docs/apsync-intro.html. Seems that “dflogger” can write dataflash to a companion computer. I’ll check back in later after trying it out to let this thread know if it works