Category Archives: FPV Howto

Installing CHDK to a Canon Powershot SX230 SH

I got a used Canon Powershot SX230 SH for only about $70 (brand new this is about $250).. its beat up pretty good but everything works except for the lens cover which doesnt close even if its turned off.. I dont think this is a big issue at all.

A used Canon Powershot SX 230 SH
A used Canon Powershot SX 230 SH (eyes wide open!)

This will be used as the mapping component of my Skywalker rig and which needs to be updated with CHDK for added features relevant for my use.  Here’s the steps on how to do it:

1) Check out

2) Download the Automatic Camera Identifier and Downloader (ACID) to check for the camera’s installed firmware  (mine was 100c) and download the correct CHDK version (

3) UNLOCK the SD card and format it using the camera’s format function

4) remove the SD card and insert into your PC/laptop.

5) copy all the files downloaded in step 2 to the root directory of the SD card.

chdk directory
chdk directory to copy to your formatted SD card

6) Remove the SD card, LOCK it, then insert into the camera.  Don’t worry CHDK will just ignore the LOCKED state of the SC card and will still allow the camera to write to the SD card (if this is UNLOCKED, CHDK will not start on bootup after step 10).

7) Press the “PLAY” button (not the on/off).

8) Press the MENU Key and under the ‘play’ tab, look for “Firmware Update…” and press the “FUNC SET” button.  After the update, you should see a black/empty screen with “No Image” in the middle (which makes sense since we deleted everything).

Canon sx230 firmware update menu
Canon sx230 firmware update menu

9) Press the ‘PLAY’ key briefly, which is the default <ALT> key to bring up the CHDK menu and you should see the CHDK alternate menu.

chdk main menu after pressing 'play'
chdk main menu after pressing ‘play’

10) Set the SD card to autoboot to CHDK, by pressing MENU (after step 9), navigating to ‘Miscellaneous Stuff’->’SD Card’->’Make Card Bootable’ and pressing ‘FUNC SET’.  The camera will now run CHDK even after turning the camera off.

Making chdk run at startup
Making chdk run at startup


CHDK successfully set as bootable in the SDcard
CHDK successfully set as bootable in the SDcard

11)  That’s it!   If you want to see the different features of chdk check out   Suggested script to load is the KAP_UAV script available from:  Good Luck!

Note: the 230SH will ad 217.3 grams to your rig.

Installing a Zener Diode and Capacitor for HKPilot32 (PixHawk)

Installing a Zener Diode and Capacitor to help bullet-proof your Pixhawk is easy. Both components may just help save your plane or multicopter someday.

The Pixhawk design allows for the servo power rail to be used as a secondary or backup power supply for the AP.  However, the design has very low tolerances such that if power is to come from servo rail (via the ESC or an independent 5V UBEC – the latter is recommended) the servos must not pull more than 5.7v.  Note that most micro servos operate in the 4-6v range (with digital servos going > 10v) and when the voltage pull goes beyond 5.7v, the Pixhawk will reboot, resulting in disaster!

To mitigate voltage spikes beyond 5.7v on this servo rail, the recommended mod is to add a Zener diode.  When a zener diode is  installed in reverse (ie the anode coupled to the ground and the cathode to the current) it acts as some kind of breaker,  activating and capping the voltage spikes once its rated voltage is reached.. this means if the correct zener diode is attached in reverse polarity in the servo rail, it will prevent over voltage and therefore not result in the AP resetting midflight. Installing a capacitor in parallel* to the zener is also recommended as it helps smooth the voltage “ripples” further.

To make a Zener Diode and Capacitor for Pixhawk or HKPilot you need the following:

1)  Two (2) servo leads
2)  One 1N5339 Zener Diode
3)  One 6.3v 220uF capacitor

Zener Diode and Capacitor
Capacitor (L) and Zener Diode (R)

1)  For the Zener – make sure that the polarity is reversed, ie the side with the silver band must be soldered to the current (ie middle) servo lead and the other to the ground.
2)  For the Capacitor – install as normal.. ie the positive to the current servo lead and the negative to the ground lead.

Here’s how it looks like installed:

Capacitor and Zener Diode Completed
Capacitor and Zener Diode Completed

and installed in the HKPilot32:

Zender Diode and Capacitor installed in HKPilot32
Zender Diode and Capacitor installed in HKPilot32

* Coming from an non-electronics background, understanding what parallel connections should be, is confusing.  Thanks to “turdsurfer” over in for pointing out what this meant! =)

Updated Version (2014-11-21): 

It turns out my original intent of just combining both into a single component is possible (, here’s the Diode and Capacitor before being soldered together:

zener and capacitor v2
zener and capacitor v2

and the finished component:

zener and capacitor v2 complete
zener and capacitor v2 complete


Enabling RSSI or Link Quality in MinimOSD with EzUHF Rx and HKPilot32(or Pixhawk)

This is a quick how-to to get the RSSI or LINK quality on your MinimOSD you need the following:

1)  Download MinimOSD Tools and Firmware. Download the MinimOSD configuration tool (CT Tools) and Minimosd ‘extra’ firmware from:

For my setup I download the following files from:

CTTools:   CT Tool for MinimOSD Extra Pre Release
Firmware: MinimOSD-Extra_Plane_Pre-release_2.4_r719.hex

2) Setup EzUHF Receiver to send RSSI or LINK quality values.  Since you are using a Pixhawk or HKPilot, the setup should be that all the channels goes through channel 1 which is ‘muxed’.  Connect to your EzUHF receiver using a USB cable and open the ImmersionRC Configuration Tool.  Once connected, just set channel 8 to either RSSI or LINK  (only channel 8 will with MinimOSD for now so its pointless experimenting with other channels).  You can use either RSSI or LINK, but I suggest you use LINK as RSSI is all about the signal strength and not the actual quality of the link.  Upload the settings to the receiver.  Here’s how it looks like:

ezhuf rssi setup
ezhuf rssi setup

4)  Do not edit any parameters in APM or MP.  You do not need to change or update any settings in the AP configuration so leave it as is.

5)  Get the maximum and minimum RSSI or LINK PWM values in MinimOSD.  For this next step, both segments of the MinimOSD must be powered or any updates in the configuration you make with the MinimOSD will not be saved. The OSD output end must be powered with 12v and the other end is plugged to your laptop with an FTDI cable.  Like so:

minimosd config setup
minimosd config setup

Use the configuration tool to set up the RSSI values (in Panel 1). Make sure you write the configuration to MinimOSD.  On the main ‘Config’ panel make sure that you’ve set the ‘RSSI Channel’ to Channel 8… AND make sure the RSSI Enable RAW is checked.

minimosd rssi setup
minimosd rssi setup (the RSSI enable raw must be checked to get raw values)

Save the configuration, remove the MinimOSD, plug it into the Pixhawk cable and Vtx/Camera cables and power up your system.  On the OSD screen where you’ve set the RSSI to be, you should see a number.  Take note of this as this is your ‘maximum’ link quality value.   Unplug your transmitter and take note of the value.  This time you should see a smaller number.  This is the minimum link quality value.  For my setup, the highest was 1793 and the lowest was 1056. I just set it to 1800 and 1050 since the OSD is limited to steps of 10.   Now power down the system, disconnect all cables, connect 12v power source to the MinimOSD and plug back the MinimOSD to your laptop.

6) Update the MinimOSD PWM Min and Max RSSI Values.  Finally,  fire up the MinimOSD CTools again and change the Minimum and Maximum RSSI values to the one you got in step 5.  Also set uncheck the ‘RSSI Enable Raw’ so you can see the values in percentage format. Save the configuration and test.

Spektrum DX6i + EzUHF Receiver + HKPilot32 (aka PixHawk) Channel Mixup

The HKPilot32 (and other PixHawk variants) use a single “muxed” connection from the receiver to the AP.   What I was not ready for was that the channel assignments were all totally mixed up.  The throttle channel is now registering as roll (ie aileron), the roll as pitch (elevator), and the pitch as the throttle!  only the yaw channel remained.

Here’s the stock channels using the latest ArduPilot:Plane firmware (3.1.1):

Roll (Aileron) – Channel 1
Yaw (Rudder) – Channel 4
Pitch (Elevator) – Channel 2
Throttle  – Channel 3

The main issue here is that the channels are fixed on my transmitter (a Spektrum DX6i).  A quick check online shows that the consensus seems to be to change the assignment on the transmitter (oh boy) and not on the AP.  At any rate, this is not viable for me right now.. so I have to implement it on the plane.

The correct parameters to change in either AP Planner or Mission Planner are:  RCMAP_YAW, RCMAP_ROLL, RCMAP_THROTTLE and RCMAP_PITCH.

While these parameters are visible in both applications, for some reason I cant save it with AP Planner and the channels refuse to be reassigned.  The following worked with Mission Planner (v1.3.11):

Roll (Aileron) RCMAP_ROLL – Channel 2
Yaw (Rudder) RCMAP_YAW – Channel 4
Pitch (Elevator) RCMAP_PITCH – Channel 3
Throttle  RCMAP_THROTTLE – Channel 1

Note that this is only for the hardware combination above and may be different in other systems so a little trial and error may be required. Also, while available, changing these settings are not recommended for APM2.5/2.6.

Configuring RC5808 5.8Ghz 8-Channel Video Receiver for FPV

The RC 5808  is a simple 12v, 8 channel video receiver with a  single Video output for a monitor or goggles.  I’ve had mine for over a year and I’m completely happy with it.

RC 5808 Receiver
RC 5808 Receiver

The following channels and its frequencies are supported:

CH1 5.705 GHz
CH2 5.685 GHz
CH3 5.665 GHz
CH4 5.645 GHz
CH5 5.885 GHz
CH6 5.905 GHz
CH7 5.925 GHz
CH8 5.945 GHz

In order to change the frequencies, change the pin positions found on top of the receiver:

RC 5808 Receiver
Figure 1: RC 5808 Receiver Channel Assignment

The pin combination assignment to change the channel is found at the back of the receiver:

RC 5808 Receiver
Figure 2: RC 5808 Receiver Channel Pins

To change the channels, position the pin to closed or blacked out half.  For example, figure 1 above, is set to use channel 8 (with reference to figure 2).

Skywalker 1880 2013/2014 T-Tail Version Mods part 1 of 2

The updated Skywalker RC Plane 2013 1880cm version I got from came with a T-Tail configuration.  That is, the elevator sits on top of the rudder as opposed to being wedged at the base of the rudder.  One of the things I noticed was that the locking mechanism used to connect the elevator to the top of the rudder requires some work as there is simply no way we can make the 2 plastic plate parts to lock.  For this a dremel and some sanding paper is your best friend.

Here’s what I mean by the locking issue.

Skywalker Elevator Attachment
Skywalker Elevator Attachment

there is simply no way those notches will get in without breaking the plastic:


The solution to this is to dremel or sand the level section (left of the circle above)  to provide space for the raised notch to slide on.

Strengthening the Tail Section

I also decided to strengthen the connection by adding the a screw which goes on top of the elevator to a washer and bolt under the plate that will be glued to the rudder.

For this you’d need a screw with a bolt and 2 washers.  What worked perfectly for me is a 3.5cm screw.  It just has enough length to cover the thickness of the elevator and the two connector plastic plates between the rudder and elevator.

Skywalker Attachment Mod
Skywalker Attachment Mod

To create the perfect fit do the following (note: this also assumes you have not glued the plates yet to the elevator and rudder):

1) Create a small hole on the lower plate.  The lower plate is the plastic plate which attaches to the rudder.  You’d want to make a hole just in front of the X studs of the plastic to prevent touching the wire channels (see picture below). Create a hole just enough to fit your screw.  A reaming tool (or the exact sized drill bit if you’re using a dremel) is perfect for this type of job as you want to have the exact ‘fit’. Again you dont want the hole to be too big.

2) Attach the two plates together.  I assume you have already dremeled or sand papered off some of the plastic for a good snug fit.  After attaching, get a marking pen and mark the upper plate through the hole made in step 1.  Remove the plate and make the same sized hole which is marked by the pen.  I did not do this in one step as I’m using a reaming tool which has a gradually increasing diameter which is not a good idea.

3) Glue the washer and bolt. This one requires some steady hands, since we will be inserting the screw from the top, the washer and the screw must be located under the plate of the rudder.   To do this, join the two plates together and insert the screw from the top (ie elevator plate) and insert the washer and bolt on the other end.  Dont screw it all the way, instead just screw a bit so the washer and bolt wont fall off.  Glue the washer first by using a medium fast acting glue (the 5 Minute Epoxy is perfect for this).. just put a small amount of glue on the plastic and away from the hole, just enough for the washer to be securely locked to the plastic.  Slightly add pressure to the glueing process by pulling on the screw so the bolt will be pressed against the washer. Turn the screw every now and then to make sure it and the bolt are not glued in as well.

Allow the glue to set (about 30minutes), do the same to the bolt.. again just enough glue around the edges to set the bolt on top of the washer.  After that has set add some a piece of plastic or plywood (in my case both) to add additional strength and secure the washer and bolt to the lower plate.  Here’s how it looks like, take note of the location of the bolt relative to the studs of the lower plate.  I had to dremel a bit of the plastic so the washer and bolt can fit.

Skywalker Tail Mod Bolt and Washer Mod
Skywalker Tail Mod Bolt and Washer Mod


4) Create ingress hole on the elevator.  This requires a bit of good guesstimating.. first remove the screw and attach (without gluing) the elevator to the plates.  Screw the screw from the the other side (ie from the bottom of the bottom plate where you attached the washer and bolt) and really slowly turn the screw make small adjustments to your angle to make sure it comes out centered and on top of the elevator.  Once you’ve done this, remove the screw and screw it from the top and you should be able to have a good straight path right through the washer and bolt at the bottom.  Here’s how it looks like:

Skywalker Tail Mod
Skywalker Tail Mod

5) Add a Base Plate on top.  Finally look for some small plastic to glue on top of the rudder as the base of the screw like so:

Skywalker Tail Mod
Skywalker Tail Mod

Add a washer before inserting the screw.  This mod will add a good solid connection between the rudder and elevator.

And in part 2, I added a some leverage to easily pull off the horizontal stabilizer from the rudder (see here).

icarusFPV Quad update 3 (disaster!)

The test flight ended in disaster.. it started well enough.. had positive control for about 5 minutes, one thing I noticed with a low kv motor is the slow control response which I think I can get used too anyway. Disaster struck when one of the props shattered mid flight.. I suspect I over screwed the plastic prop and it probably had a crack. The quad fell like a rock from approx 20ft. and landed on its back.  3 of 4 of the motormounts broke off..the motors adapters were damaged though the gps, apm and escs seems to be ok.

Important lesson here is: use CF props on the get go AND if possible use the appropriate prop adapter! yes even prop adapters have CW and CCW shaft threads!

Heres the scene of the disaster..landed where it can do the most damage…on the cement runway =(



and the video:


icarusFPV Quad build update 1

The Hobbyking H4 Copter Multi-Rotor Quadcopter Frame 470mm is well crafted. Carbon fiber motor and body plates with aluminum arms and frame. My only gripe is the motor plates where you screw the motors on.. it would have been perfect if it can readily accommodate the Turnigy Multistar 3508-640Kv 14Pole Multi-Rotor Outrunner.

Heres the build pixs so far:


Main body complete:


with arms:


Finally with motor and escs:


tonight.. power up!

Project SBSW (update 11) Take off!

The new wings I’ve been working on for the last couple of weeks was well worth it.


Here it is last night, with the skin on:


And finally, this morning ater a successful flight:




The 1.4kv turnigy aerodrive motor, 10×6 prop and 5000mah battery gives ample thrust.. the plane can fly really fast.

Stall speed is low.. even lower (it seems) than my 1.4m hitec skyscout. No doubt the airfoil (as close to NACA 4412 in case you’re interested) made a huge difference.

However throttling up causes the plane to pitch down negating the lift.. nothing which some up elevator cant fix though. It looks like I need to put in some more down angle to the motor now that the CG is known.

The elevator also needs to be secured more firmly to prevent it from rolling (wagging really) which affects the flight characteristics somewhat specially when banking.

Will post a video soon!