How I made a CHDK-launcher to Canon camera



Here is my memo: How I make camera launcher from old servo electronics, usb-cable and diode.

Here are quite many steps, so I write this memo if I need to make system again... Programming took only few minutes, to build circuit took more time.

My camera is Canon PowerShot S90


  1. Buy max 4 Gb memory card to camera.
  2. Create a file to memory card, name it to ver.req (last letter is small Q)  Content can be anything.
  3. Put memory card into camera. Go to Play mode. Press FuncSet -button down and in the same time press Disp-button.
  4. Look Firmware ver number.
  5. Go to page and search the right version to camera model and version. Select Full version
  6. Unzip files to memory card root
  7. Put memory card to camera. Turn camera on, go to Play mode
  8. Press Menu, search Firmware Update. When camera says Update firmware, answer Ok. Camera starts to CHDK Play mode
  9. Press Print button [S], to bottom of screen comes <alt>, then press Menu. Select Miscellaneous stuff, and Make card bootable. Press FuncSet, nothing seems to happen, but everything is ok.
  10. Go to previous menu and select Scripting parameters / Load script from file. Search and select REMOTE.BAS
  11. Remote Parameters / Enable Remote [o]
  12. Select Scripting Autostart [On] and Save params [o]
  13. Switch camera off, and take take memory card off. Put small Lock switch in memory card to Lock position. Put memory card to camera.
  14. Start camera. Camera starts to Play mode, and now in the lower left corner should read ***Autostart***
  15. Make the camera launch circuit from old digital servo electronics, diode and Micro-USB-cable. Remove motor and put diode and cable to its place. Check that during launch there should come 5V to red wire and GND to black wire. When launch is not on, there should be 0V between wires, never negative voltage!
  16. Test with camera. I have used channel 5 from receiver, then I can turn camera on with Gear switch. If switch is on, camera takes pictures at 2 - 3 seconds intervals.
  17. If I use camera to other purposes, I just turn Lock button in memory card to Off position.
  18. It is also possible to remove the potentiometer, and make voltage divider from two resistors.


More details

This same page in Finnish

E-mail me when people leave their comments –

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

Join diydrones


  • Moderator
    Hi. Mr Osbourne, in arduplane does the camera trigger fiction work, if so what is the best way to trigger at a waypoint. Thanks
  • Moderator
    I understand that this is available in mission planner fore arduplane. Turns a servo On or Off at a waypoint . Can anyone confirm it works ?
  • Alpo, is this switch starting and stopping a script or somehow turning the camera on and off?  I'm looking for a way to turn off/on or extend/retract the lens on my Canon SX230 camera while in flight.  Basically, I need to protect the lens during takeoff and landing.  I would prefer to do this with a switch on the transmitter as you suggest here.  If you are doing this, can you provide the CHDK script you are using?

  • Mike have you by any chance finished "fast intervalometer" modified to start taking pictures after a delay and shutting off the camera before the plane lands? Mind sharing a link to the script. Thanks.
    Comment by Mike on September 9, 2011 at 12:34pm

    Alpo, there is a CHDK script that starts continuous shooting. I think its called Fast Intervalometer. I modified this so that I can allow an initial period to go to altitude before it starts. I usually use 30 seconds. Once the plane and camera are at the desired altitude the camera sets focus and exposure then takes a photo continuously at about 1s intervals. I am looking into developing it further so that it will power down the camera after a certain time. By keeping track of this time you will know when the camera has powered down and it is safer to land with the lens in. i tried the other main intervalometer that does the focus and exposure for every picture but the processing time is so much longer that the interval was not acceptable for my purposes.


    I am using the camera for aerial mapping so the exposure range is not that great and I have been able to get nicely exposed shots at close intervals.


    I will soon publish the code to the CHDK wiki.




  • can any one give some set up tips for a canon ixus 70..
    i have the intovelmeter script running ok now and it auto starts on power up

    but i am having problems with the actual cam settings to get a good picture...

    any help you can give would be great guys!



  • That pcb is taken from servo. Only the servo motor is removed, and two wires going to motor are cut near motor. You can see these wires coming from pcb. Then I added that diode, and also usb-cable. I did not change anything else. This servo pcb can be different in other servo brands.

    When I switch on my Canon with chdk, it goes directly to Play mode. But when I take first photo manually or through usb, it goes to Record mode and starts to take pictures. Camera uses normal settings that I have set in original mode.

  • @David

    Probably not very easily, but you can do it afterwards:

  • I can not test it, but it should be possible.

    Look here details

    and download firmware from here

  • Greetings,

    Is there any way to split the GPS signal and send one feed to the camera to be included in the EXIF information?


This reply was deleted.