ArduPilot allows PWM pulse output or GPIO relay (common), and the camera can be controlled to take pictures using a remote control, a ground station, or during a mission.
The relay controls the shutter to trigger photo-taking.
- Connect the camera or the camera control line that receives high/low level inputs to one of the GPIO pins of the flight controller. For example, connect to the M13 channel:
- Servo13_function=-1 (Set which servo output channel to use as GPIO)
- CAM1_TYPE = 2(RELAY) (Set the type of camera shutter trigger)
- Relay1_function = 4: camera (Set the function of relay 1)
- Set CAM1_DURATION to the time (in seconds) that the camera remains in the triggered state.
- CAM1_RELAY_ON (The default is 1, that is, the output is at a low level when it is on, and then the camera shutter is triggered with a high level)
Relay1_pin = 54. The correspondence of the channel pins is as follows:
- M9 AUXOUT1:50
- M10 AUXOUT2:51
- M11 AUXOUT3:52
- M12 AUXOUT4:53
- M13 AUXOUT5:54
- M14 AUXOUT6:55
- M15 56
- M16 57
Note: After the parameter configuration is completed, the flight controller needs to be completely powered off and restarted.
Servo Control Connection and Configuration
Camera Hot Shoe Feedback Record
ArduPilot records the TRIG message when triggering the camera. If the camera provides a GPIO output (such as the camera flash hot shoe), it can be used to record the CAM message at the exact moment when the photo is taken.
Connect the GPIO output of the camera to one of the GPIO pins of the flight controller. For example, connect to M14:
- Servo14_function = -1
- CAM1_FEEDBAK_PIN = 55 (Set it to the pin number connected to the hot shoe)
- CAM1_FEEDBAK_POL = 0 (Set it to 0 if the hot shoe voltage goes low when taking a photo; set it to 1 if the voltage goes high)
Shutter Triggering Methods
Method 1: Triggering via the remote control channel
For example, to set the shutter to be triggered by the input of channel 6 on the remote control, set RC6_OPTION = 9.
Method 2: Triggering via the ground station
