Skip to content


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation


er9x/ersky9x radio firmware


Hobbyking/Turnigy ave just released a radio called 9XR which has a port for a programmer and an installed backlight. This is a very welcome addition since it makes programming the radio very easy for the novice. That being said, they have not given credit to the originators and contributors and they have not released the code as required by the GNU 2.0 software license. So while we are very happy to see them make the 9XR radio we do want them to acknowledge the hard work and the effort made by all the contributors. Please let them know how you feel about this. We have tried to contact them but have not been able to receive any response. We'll update here if and when we get one.

HobbyKing have acknowledged their use of er9x on the 9XR.

The Eurgle/FlySky/Imax/Turnigy 9x r/c Transmitter is a nicely built unit basically copied from a more recognized manufacturer.

The unit itself hosts an Atmel AtMega64 8-bit MCU. The hardware includes 2 sticks, 3 potentiometers and 7 switches. It also supports a 128x64px screen without a back light.

This project aims to replace the software that comes with the standard transmitter with a more powerful and flexible version.

This project is based on he th9x project.

Support Forum Thanks to an enterprising member we have a support forum: Please join and use for all your questions, suggestions and discussions regarding the er9x/eepe platform.

Like er9x? Try the accompanying editor and simulator - eePe! homepage: Windows installer: eePe Quickstart video:

WARNING! Deleting a model causes the memory to jump to the previous model memory in the list. Do not delete a model memory while you have a model "listening". Always shut down your receiver before deleting a model.

eePe and er9x are free to use under the GNU v2.0 License. Feel free to use, copy and modify it as you wish! I have spent a lot of time (and will continue to) to make this software as good as possible. If you feel that this software has been beneficial to you please show your support by donating. This will be greatly appreciated and you'll be added to the "contributors" list in the code (optional of-course). [paypal]

Help! Where do I start?

Latest Binaries

What FW do I choose?

To download, right-click and "save-as"
ER9x <- If you are unsure, choose this one!

ER9x Manual

NEW-WIKI fully updated

old versions of the manual - for reference
ER9x Manual - English
ER9x Manual - French
ER9x Manual - Spanish (by Luis Llaberia
ER9x Manual - Portuguese (by Alexandre Magalhaes
ER9x Manual - Russian (by Dmitry Bugaevsky)
ER9x Manual - Hungarian (by Hegyi István)
ER9x Manual - Traditional Chinese (by Henry Liao)


LATEST: svn checkout er9x
STABLE: svn checkout er9x -r 708

Documentation and Tutorials

Sample .eepe files can be downloaded at the following link:


Build and Program Instructions

Full programing instructions Flashing the 9x by Jon Lowe.

Required libraries gcc-avr avr-libc gcc avrdude libusb-dev build-essential Ubuntu/Debian commandline: sudo apt-get install gcc-avr avr-libc gcc avrdude libusb-dev build-essential

Building from Source First checkout using svn: svn checkout er9x Enter the src/ directory. To make the standard version type: make To make the JETI DUPLEX enabled version type: make EXT=JETI Windows Compile Tutorial by Telemachus.

Flashing (you may have to run as admin to access the USB port in Linux) To write the FW: make wflash AVRDUDE_PROGRAMMER=usbasp To write the EEPROM: make weeprom AVRDUDE_PROGRAMMER=usbasp To read FW: make rflash AVRDUDE_PROGRAMMER=usbasp TARGET=backupflash To read the EEPROM: make reeprom AVRDUDE_PROGRAMMER=usbasp TARGET=backupeeprom Make sure you replace "usbasp" with the name of your programmer. To list available programmers type: avrdude -c ?

make targets

  • make all (default): build the source
  • make clean: Remove compiled files and directories.
  • make wflash: Write flash (program) memory.
  • make rflash: Read flash memory.
  • make weeprom: Write eeprom.
  • make reeprom: Read eeprom.
  • make coff: Convert ELF to AVR COFF.
  • make extcoff: Convert ELF to AVR Extended COFF.
  • make debug: Start either simulavr or avarice as specified for debugging, with avr-gdb or avr-insight as the front end for debugging. (for debug info look into the makefile)
  • make filename.s: Just compile filename.c into the assembler code only.

make options

  • EXT=JETI: make jeti vesion.
  • AVRDUDE_PROGRAMMER: Set avr programmer name (to list all available: avrdude -c ?) - default: usbasp
  • TARGET: Set target name - default: er9x
  • OPT: Set optimization level - default: s
  • FORMAT: Set format (can be srec, ihex, binary) - default: ihex
  • MCU: Set MCU - default: atmega64

Making your own splash screen

  • Create a XBM bitmap file that is monochrome and 128x64 in size. (GIMP is a good program for handling XBM files).
  • Save your file as "s9xsplash.xbm" in the src folder.
  • Run "make s9xsplash.lbm" (this will convert the XBM file to the lbm format)
  • Run "make" with whatever options you need.
  • Once "make" finishes - the FW will be in the er9x.hex file in the src directory. Please note that in order to compile this under windows you need ruby

License and Disclaimer

This software is provided under the GNU v2.0 License. All relevant restrictions apply including the following. In case there is a conflict, the GNU v2.0 License is overriding. This software is provided as-is in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. In no event will the authors and/or contributors be held liable for any damages arising from the use of this software.

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

  1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software.
  2. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
  3. Altered versions must be plainly marked as such, and must not be misrepresented as being the original software.
  4. This notice may not be removed or altered from any distribution.

By downloading this software you are agreeing to the terms specified in this page and the spirit of thereof.