Inspecting flight data#

Parrot Sphinx offers several ways to observe data during or after a simulation. Depending on your needs, you may wish to monitor the drone behavior at runtime, or you may also need to investigate a problem more thoroughly with post-mortem flight data.

Here are the available methods:

  • Runtime observation via a Web HMI (Web dashboard)

  • Runtime observation via command line tool (tlm-data-logger)

  • Post-mortem analysis with recorded data files (.tlmb and .bin files)

Two sources of flight data are available:

  • Data from the simulator itself. These are called true data. They contain information that are not tainted by any estimation process. For example, you can access the actual coordinates of the drone at any time, or its real time speed. Or you can get the measured values sent by the IMU.

  • Data from the simulated machine. They are generated by the drone firmware components, like with a real drone.

Web dashboard#

See the section about the Web dashboard.

tlm-data-logger#

tlm-data-logger is a command line tool that can connect either Parrot Sphinx or the simulated machine. It displays the received data in the shell output.

To show simulation’s true flight information:

$ tlm-data-logger inet:127.0.0.1:9060

To display simulated machine’s data, just change the IP address in the command line above with the drone’s local interface address.

$ tlm-data-logger inet:10.202.0.1:9060

Connected
section 'omniscient_anafi4k':
   + relativeAngularAcceleration.x
   + relativeAngularAcceleration.y
   + relativeAngularAcceleration.z
   + relativeAngularVelocity.x
   + relativeAngularVelocity.y
   + relativeAngularVelocity.z
   + relativeLinearAcceleration.x
   + relativeLinearAcceleration.y
   + relativeLinearAcceleration.z
   + relativeLinearVelocity.x
   + relativeLinearVelocity.y
   + relativeLinearVelocity.z

omniscient_anafi4k.timestamp: 4.098000
omniscient_anafi4k.relativeAngularAcceleration.x: -0.000000
omniscient_anafi4k.relativeAngularAcceleration.y: -0.000000
omniscient_anafi4k.relativeAngularAcceleration.z: -0.000001
omniscient_anafi4k.relativeAngularVelocity.x: 0.000338
omniscient_anafi4k.relativeAngularVelocity.y: -0.054018
omniscient_anafi4k.relativeAngularVelocity.z: -0.000001
omniscient_anafi4k.relativeLinearAcceleration.x: -0.000000
omniscient_anafi4k.relativeLinearAcceleration.y: 0.000000
omniscient_anafi4k.relativeLinearAcceleration.z: -0.000000
omniscient_anafi4k.relativeLinearVelocity.x: -0.002743
omniscient_anafi4k.relativeLinearVelocity.y: -0.000016
omniscient_anafi4k.relativeLinearVelocity.z: -0.049045
<...>

As the throughput may be high, you may want to grep the desired variable(s):

$ tlm-data-logger inet:127.0.0.1:9060 | grep worldPosition
   + worldPosition.x
   + worldPosition.y
   + worldPosition.z
omniscient_anafi4k.worldPosition.x: -0.000043
omniscient_anafi4k.worldPosition.y: -0.000000
omniscient_anafi4k.worldPosition.z: 0.049241
omniscient_anafi4k.worldPosition.x: -0.000043
omniscient_anafi4k.worldPosition.y: -0.000000
omniscient_anafi4k.worldPosition.z: 0.049241

Recorded data files#

To get the last recorded data file recording by Parrot Sphinx (true data):

$ sphinx-get-logs --sphinx

A file sphinx.tlmb will appear in the current directory.

Note: By default, Parrot Sphinx data files are located here: ~/.parrot-sphinx/telemetrylogs/log-11345.tlmb. Note that in the same folder, you may see other files like log-11345.tlmb.1. These are the earlier recordings, which belongs to a history whose size is limited.

To read a .tlmb file, several tools are at your disposal in Parrot Telemetry’s public github repository.