ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Trigger Hadron camera with DO_SET_CAM_TRIGG_DIST

    VOXL 2
    2
    5
    64
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      restore
      last edited by

      I have a VOXL2 running ardupilot and have a Hadron camera connected and configured with voxl-camera-server. I can take snapshots successfully.

      I am trying to configure our drone to capture images at a specific distance interval during flight with the DO_SET_CAM_TRIGG_DIST parameter. Is there a way to do this with VOXL2 and ardupilot?

      Thanks!

      Eric KatzfeyE 1 Reply Last reply Reply Quote 0
      • Eric KatzfeyE
        Eric Katzfey ModalAI Team @restore
        last edited by

        @restore I don't think this is possible today. How did you set it up to take the snapshot? How is it triggered?

        R 1 Reply Last reply Reply Quote 0
        • R
          restore @Eric Katzfey
          last edited by

          @Eric-Katzfey We have the Hadron configured with voxl-camera-server.conf

          "type": "ov64b",
          "name": "hires",
          ....
          "en_snapshot": true,
          ...
          

          so we can take images with voxl-send-command hires_snapshot snapshot

          I would love to configure the camera in Ardupilot with CAM1_TYPE and set DO_SET_CAM_TRIGG_DIST to a distance interval that I will capture images at.

          If that is not directly possible, could you help me with a way to create a sort of interface script that sits on VOXL2 that listens for GPIO relay triggers or something like that? Then I can just call the snapshot command when triggered.

          Eric KatzfeyE 1 Reply Last reply Reply Quote 0
          • Eric KatzfeyE
            Eric Katzfey ModalAI Team @restore
            last edited by

            @restore Are there any Mavlink messages coming out of ArduPilot that you could use to know when to take the snapshot? If so, create a new application that listens, via voxl-mavlink-server, to Mavlink and the message(s) you need. Then trigger the snapshot when it's needed. ArduPilot's external interface is Mavlink so it would be good to leverage Mavlink messages for this.

            R 1 Reply Last reply Reply Quote 0
            • R
              restore @Eric Katzfey
              last edited by

              @Eric-Katzfey I configured the drone to have servo5 trigger the camera. When idle, servo 5 shows 1100. When triggered, it goes up to 1300. In the Mavlink messages I can now watch for SERVO_OUTPUT_RAW msg.servo5_raw and detect the rising edge which emulates the trigger.

              msg = master.recv_match(type='SERVO_OUTPUT_RAW', blocking=True, timeout=2)
              if not msg:
                  continue
              pwm = msg.servo5_raw
              

              I have done this on a ground station using pymavlink to listen for messages. What is the best way to listen for this mavlink message on the VOXL2? Reminder - I am using Ardupilot.

              1 Reply Last reply Reply Quote 0
              • First post
                Last post
              Powered by NodeBB | Contributors