Sunday, December 18, 2011

FlySky RC Radio Reprogramming

FlySky FS-TH9X radio from

I needed a multi-channel radio controller for a drone project I am working on.  Multi-channel radios are expensive, over $600 for something that fit my needs.  Since I am on a tight budget for this project, I started looking for an alternative.  After some research on the web I found the Turnigy 9X radio.  It is a cheap Chinese knock-off of a much more expensive radio.  All of the reviews I read suggested that this radio is an incredible value offering the capabilities of a $600 radio for under $100 (as long as the one you get works, apparently duds are not uncommon).  So I ordered one only to find out it was on back-order for 2-3 weeks.  In addition to the tight budget, I am on a very short deadline and couldn't wait for the backorder to be filled.  So I canceled that order and ordered another one off of eBay.  Found out after I completed the "buy it now" option and paid for expedited shipping, that the eBay seller didn't have any in stock either.  So I canceled that order.  I was starting to panic because I needed a radio and there were none to be found, at least not in my price range.  After some more reading on web I learned that the Turnigy 9X is the exact same radio as the FlySky FS-TH9X, IMax 9x, and the Eurgle 9X.  I finally found the FlySky branded radio available at, paid for rush shipping, and had the radio in hand a few days later.

add-on board from

Despite the capable hardware of these radios, the software leaves a lot to be desired.  Luckily there is a huge online community of support for this radio.  One of the most common modifications to these radios is to reflash the memory with updated firmware.  The new firmware fixes a number of bugs in the original software and increases the capabilities of the radio.  There are a few different methods for modifying the radio so that it can be reprogrammed.  I chose the add-on board from smartieparts.  The board is a simple screw-on circuit board that not only provides a usb port to allow you to easily upload new firmware onto your radio, but it also adds a backlight to the LCD screen for easier viewing.  I ordered the smartieparts board at the same time as the radio and had it in hand in a few days.

smartieparts board installed

Installation was super easy following the instructions on the website.  Basically open up the radio, remove a few screws, screw in the new board, and slap everything back together.  You then download whichever firmware version you choose, download the eeprom editor software and the usbasp driver to your computer and you are ready to reprogram your radio.  So I do all of that, plug my radio into my computer, upload the new firmware and...nothing.  The editor software gave me an error message stating it couldn't communicate with the radio.  Crap!  I couldn't have screwed up the installation of the smartieparts board because it really is foolproof.  I tried several times, reinstalled all of the software and drivers, even tried a different computer, still nothing.  Finally I vaguely remembered something on the smartieparts website about hardware versions.  Turns out there are two versions of the radio hardware.  The older version has one of the circuit board contact pads in the wrong location.  The newer radios have the contact pad in the correct location.  With the older hardware, the pogo pin on the smartieparts board does not make contact with the required circuit trace and cannot program the radio.  I just assumed that since I had a brand new radio that I just ordered, it must be the most recent version of the hardware.  Oops!  After looking inside the radio, I realized that I indeed had the older version of the hardware.

incorrect location of contact pad

The recommended fix is to solder a wire from the correct circuit trace on the radio directly to the smartieparts board.  Well first of all that means that the board will be semi-permanently attached to the radio.  And it also requires soldering to some very small surface mount components on the radio circuit board.  I am a pretty experienced solderer and I have some very good equipment, and even I was skeptical about my chances of success at that job.  I figured there must be a better way.  I decided to try to put a contact pad in the correct location on the radio circuit board so that the smartieparts board could simply be screwed in and work as intended.

I started by cutting through the original contact pad with an X-Acto knife and a jewelers loupe to disconnect it from the wrong trace.  I had to use one of the thicker X-Acto blades as the thinner blades wobbled too much and risked slipping and damaging the board.  After I cut through the pad I checked with a multimeter to make sure there was no electrical contact with the old trace.  Next I used the X-Acto to carefully scrape the protective covering off of the correct trace so I could solder to it. 

old pad cut and correct trace ready for solder

I tried to bridge some solder between the old contact and the propper trace.  No luck.  I needed some copper to bridge the gap.  So I cut some copper foil off of a scrap circut board I had with a chisel blade and cut it down to size.

copper foil cut as new contact pad

Then I soldered it between the old contact pad and the correct trace.  One last check with the multimeter to make sure the new contact pad was connected to the correct trace on the microprocessor.  Looked good so I put everything back together and crossed my fingers as I tried again to reprogram my radio. 

new contact pad - not pretty but it worked

Success!  The software indicated the new firmware was loading.  When it was done, my radio screen flashed to life with the new firmware logo.  I was able to get the smartieparts board to work with version 1 hardware without soldering it directly to the radio.  Now my radio has total flexibility.  I can add any of dozens of firmware versions and update the radio at any time.  I can also configure the radio controls from my computer without having to go through all of the menus on the radio screen.  For a total investment of under $150, I now have a radio with the capabilities of one costing 4 times as much.

firmware successfully loaded
new firmware start up screen, backlight works too!

I am really starting to like this radio.  Just a few more tweaks and it will be ready to go.  One slight annoyance with this radio is it will not work with simulator software unless you unplug the TX module.  Not a big deal but it is slightly inconvenient.  Adding a resistor will correct this.  And unfortunately when you unplug the TX module, it is still stuck to the radio because it is hard wired to the antenna.  I am going to move the antenna from the radio to the TX module to fix that problem as well.  Click here for the resistor mod.  Click here for the antenna mod.  I also relocated the USB port from the smartieparts board to the side of the radio case.  Check that out here.


  1. i love how you went from sock monkeys to this...i also love that i am oblivious upstairs making sauce & struggling with 2nd grade math while a mad scientist is creating a robot to take over the world right below me!!!

  2. nice series of 9x mod. very helpful!

  3. Great job. Very helpful indeed. Thanks for taking the time and effort to publish all your work. Really appreciate it as it makes the job so much easier for people like me who are just entering the hobby. Keep the excellent work up buddy!