Camera triggering message through telemetry?

Hi all,

I use APM:Copter and the newer beta firmware to take advantage of geographical distance camera triggering. Did a test some days ago and it works. The downside is that this beta version seems to overburden the processor, causing telemetry message frequency to decrease significantly.

I needed to have images geotagged and this depends on a time offset between camera clock time and GPS time. The camera time isn't visible in seconds or in realtime, so this kind of synchronization is pretty cumbersome. If for any reason you can't recover the offset, a whole batch of photos may be lost.

So my question:

Doesn't MAVlink actually send camera trigger messages through telemetry?

Paparazzi uses a DC_SHOT message strategy with an incremental counter. The photos are collected and correlated to this index number in telemetry. You don't need them all, as long as a good number has the position inserted.

Only one such message would be necessary to work out the time offset between camera and gps time such that the actual positions can be derived from the rest of the log where the trigger messages are missing.

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –


  • Sorry to open such an old conversation.

    But I had the same problem and think I have the solution.

    The log_bitmask should be set to "nearly all" to log the CAMERA infos in addition.

    Hope this helps some people in the future.

    Best regards


  • Be sure you are looking at the dataflash .log, not the .tlog. CLI = Command Line Interface. You can also do this through Advanced Parameters.
    Please read the wiki on logs.
  • Just a note this last point which tripped me up for a moment to enable camera entries in the log the command is 'enable camera' not enable cam!

    • Thanks for the correction.
      • Hi Iskess

        How should I list the logs? what meas 'CLI' ?

        There is no CAM messages in my logs, my camera is connected to the APM and it seems to shoot at the right spots. 

  • It's under the CAM header on the data flash .log file.
    Change the .log to a .csv. Open the .csv in excel. Use the filter tool to only see lines that start with CAM. You will see the time stamps in milliseconds along with the IMU data and altitude for each moment the APM commanded a camera trigger. Unfortunately the time stamp has no date, so you can just use if for referencing time elapsed from a floating reference point that you must establish yourself.

    If any developers are reading this, I have a question. I understand that the APM has no battery to keep time. However, doesnt the GPS signal include the date? Couldn't this be used to time stamp the log events, as well as the log itself?
This reply was deleted.