How-to guide: Pixhawk auto camera trigger (without CHDK)


How-to guide: Pixhawk auto camera trigger (without CHDK)

1. Introduction:


If, like me, you are not using a canon camera, you then do not have access to the CHDK canon firmware which provides advanced automation scripts to automate your camera trigger on your UAV.

There exist on the market other great alternatives for all camera brands (some of them are functionally richer and simpler to use than CHDK). As an example in this guide, I will use the "Stratosnapper V2". This is a little smart thing that allows you to trigger any camera brand (Sony, Canon, Nikon, etc) by many ways : infrared, cable, LANC, etc.

If you'd like more details on this little marvel read here.

I personally prefer the "IR trigger mode" the best because it does not require an extra cable connected to your camera, which is a must when you are using a brushless gimbal. It supposes of course your camera supports an IR trigger function; I thus assume the use of a Sony NEX5 in this guide, widely used for aerial photography among UAV'iers.

Then there is another obstacle for many of us : how does Pixhawk work to trigger such a triggering device in auto mission ? There is a lot of posts on about how to do this with APM, but not much yet on the recent Pixhawk. Therefore this guide will try to document it.

I will end the guide with a practical auto photo taking mission example (making sure it really works!).


2. Parts and hardware connections:


Let's start by a general hardware scheme showing all the required parts and general cabling:

The parts are:


2.1 Pixhawk board


One or more of the 6 AUX ports can be used on Pixhawk (AUX1=RC9, AUX2=RC10, AUX3=RC11, etc.):

In this guide I chose port 2 which corresponds to AUX2 as is illustrated in this detailed view :

By default, only the three first AUX ports can be used (1 to 3, or RC9 to RC11).

To trigger the IR device, we need a servo output (PWM signal), not a relay signal. We will see later what parameters configuration is required in mission planner screens (we can for example also configure 6 AUX ports as PWM outputs ; more details later - let's finish the hw description first).


2.2 IR trigger device


Here an illustration of "stratosnapper" with its inputs/outputs:

You may notice two servo leads are connected on the input side of stratosnapper.

This is one of the most important point in this guide : a servo lead must be used to power the IR device from a BEC (5V in this case); the power provided by the second servo lead coming from Pixhawk AUX2 port DOES NOT provide enough power to make it work !!!

Either you have powered the Pixhawk ouputs rail with a BEC and you are fine, either you must provide a separate BEC power to the IR device. This is also true for any other type of device you will connect on Pixhawk : DOT NOT expect pixhawk to power these devices (and certainly not servos as we already knew in the context of the previous generation flight controller, APM2.x).

Stratosnapper works with a servo lead on one of its 4 servo inputs (yes, you may control stratosnapper from 4 different inputs, isn't that great ?). The servo inputs may be various things : push-button, stick, two way switch, three way switch, etc (all configured by a GUI configuration utility from your PC via usb).

And it ouputs on a IR cable to trigger a IR led that must be placed in front of your camera IR sensor:

2.3 IR Led positionning and camera gimbal


The IR led works perfectly, even under a bright sun (verified on the field); it works even quite faraway from the sensor (no problem 5 inches away of the Sony NEX5 sensor) and works fine in any orientation versus the sensor.

Shown here is a picture of X8 Mr Grey (formerly known as Mr Red when was used with APM; my wife had only grey flower pots I could snatch to cover the new Pixhawk & electronics). The Sony NEX5 is held in a 2-axis stabilized brushless gimbal (NEX5 not shown...used to take this picture).


Here below a zoomed view of the IR LED positionning and gimbal:

Gardeners & farmers are notoriously UAV friendly; after getting a flower pot to protect your electronics, snatch also some green gardening wire which is very handy to shape your IR LED cable, so it is correctly positionned in front of the camera's IR sensor.


3. Software and parameters configuration:


3.1 Mission planner:


We need to configure Pixhawk to output a servo command on AUX2 (RC10) to trigger stratosnapper which will in turn trigger the IR LED which will in turn trigger the camera. And this needs to happen automatically during an auto mission.


How do we do this ? By using the CAM_TRIGG_DIST function or by using a programmed DO_DIGICAM_CONTROL command. In this guide we will only document the CAM_TRIGG_DIST function.


The CAM_TRIGG_DIST function will command your UAV to take picture everytime it has moved a certain distance (in meters). This is very useful to take pictures at precise distance intervals during geomapping missions or photogrammetry missions.

To configure CAM_TRIGG_DIST, go in mission planner, click on config/tuning to open the full parameters list. In this list you will find three parameters to configure:


-CAM_TRIGG_DIST : defines in meters the distance between two camera triggers. For an auto mission, leave value at zero. It will be changed automatically during the mission by a DO_SET command, to avoid taking pictures before and after the useful parts of your auto mission.


-CAM_TRIG_TYPE : defines if you want the Pixhawk AUX output used to control a relay or to ouput a PWM signal. In the case of an IR device we need a PWM servo signal, so we set it to a value of zero.


-CH7_OPT: internal firmware parameter. In this case, it does NOT correspond to the CH7 of your receiver. You must set it to a value of 9 to indicate the firmware that it must do a camera trigger to the AUX ouput (which will be defined in the camera gimbal setup screen).


Next, we need to define to which AUX ouput we want this servo/PWM signal produced. To do this, open "Initial setup", then "Optional Hardware", then "Camera Gimbal":

In the shutter drop down list, select which AUX port you'd like to use (RC10 = AUX2 in my example).


Then do not forget to adapt the "pushed" and "not pushed" PWM values that will trigger your IR device (stratosnapper in my example). Tune also the duration to the required button pressure duration to trigger your camera (for a Sony NEX5, I set it to 10 = equivalent of 1 second button pressure).


3.2 IR device configuration (stratosnapper V2):


Every IR device comes with its own configuration method. Stratosnapper comes with an ultra easy GUI interface to define which PWM values will trigger what port. It is explained in this video:



4. Concrete application : test auto mission, applying all of the above


Finally lets' apply all of the above in a true auto mission on the field,

I configured this test auto mission as an example:


To create this auto mission, we can use a very convenient "SURVEY" function of mission planner. You start by drawing a polygon of the zone you'd like to photograph.

Then you right click on the map to select "Survey(Grid)":


It will then show you a configuration screen that will allow you to define which camera make/model you are using and other rather self explanatory parameters (like how much overlap you want between pictures, lens size, etc). The tool will then automatically define for you which is the best CAM_TRIGG_DIST parameter! :


After clicking on "Accept", you will get automatically a list of waypoints starting with a "DO_SET_CAM_TRIGG_DIST" command that will set the distance in meters between two camera triggers during your mission. It ends with another "DO_SET_CAM_TRIGG_DIST" to set the parameter back to zero (stops the shooting).


DO NOT forget to add at least a waypoint (take -off) before and another waypoint (land or RTL) after the last waypoint.


After this is done, after you have passed through your checklist, after you have got all of the authorizations, etc, -> you are then ready to arm, flick the auto switch and off you go!


The above test auto mission lead to this result below. It is a stiched panorama of about 15 pictures; shown here as a reduced thumbnail image (because the full size image is too large at about 107 Mbytes). Click on image for better resolution:


I hope this will help you in your own auto-photo-shoot missions!




Views: 29263

Comment by Morli on March 9, 2014 at 10:21am

Good  work & kool blog

Comment by AKRCGUY on March 9, 2014 at 10:44am

Very nice instructional!

Comment by Gary McCray on March 9, 2014 at 10:50am

Hi Hugues,

This is an excellent post about an extremely important topic.

I would like to make a wiki page out of it if it is OK with you.

This is probably even more useful to our group than the CHDK page.

I will probably go ahead with page.

If you don't want me too, let me know otherwise when I am done I will be happy include any edits you would like.

Best Regards,


Comment by Hugues on March 9, 2014 at 11:20am

Thx for your comments.

And yes of course, Gary, please do so, thx ! (and do not hesitate to correct my "frenglish" where needed)

Comment by John Githens on March 9, 2014 at 11:47am

This is fantastic! Looking forward to my next auto-photo-shoot mission! Added a link to this blog post here and here.

Comment by Gary McCray on March 9, 2014 at 12:17pm

Hi Hugues, it could probably still use some text editing, but here is your page with all images properly installed and with formatting in place:

I still have to install it in the individual vehicles TOC and Instruction drop down menus, but it actually looks pretty good to go.

Even though you have presented this for the copter, it is applicable to all vehicles so I made it a common page (in the common page home (mission planner site)) and which is autocopied to all vehicle sites.

I will add the page link to TOC and Instructions drop down menu of each vehicle site.

Best Regards,


Comment by Hugues on March 9, 2014 at 12:48pm

Thx Gary & John for adding the links in wiki and dronespeak. By the way, thx to dronespeak I found links to construct 3D mapping from 2D images, this will be the subject of a next how to guide because at this moment it is quite dispersed.

Comment by Gary McCray on March 9, 2014 at 1:12pm

Hi Hugues, Ive got it in all vehicles tables of contents and Instruction drop down menus now.
I will go through later and edit the english a bit, but I think it should work very well the way it is now.

Thank you for this!


Comment by Hugues on March 9, 2014 at 1:34pm

You are very welcome Gary, you have given so much for this community documenting the wiki that it is the least i could do to help contribute a little bit.

3D Robotics
Comment by Chris Anderson on March 9, 2014 at 7:23pm

Bravo Hugues and thanks Gary for adding it to the wiki!



You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service