er9x/ersky9x radio firmware
IMPORTANT NOTICE - TURNIGY 9XR
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. http://code.google.com/p/th9x/
Support Forum Thanks to an enterprising member we have a support forum: http://www.OpenRcforums.com 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: http://code.google.com/p/eepe/ Windows installer: http://eepe.googlecode.com/svn/trunk/eePeInstall.exe eePe Quickstart video: http://www.youtube.com/watch?v=ZNzRAPGo8uY
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).
Help! Where do I start?
- ER9x User guide - WIKI - This is the best place to start.
- Flashing your transmitter with er9x
- What FW do I choose?
- OpenRcforums.com - BEST PLACE TO ASK QUESTIONS!
old versions of the manual - for reference
ER9x Manual - English
ER9x Manual - French
ER9x Manual - Spanish (by Luis Llaberia www.aeromodelitis.com/)
ER9x Manual - Portuguese (by Alexandre Magalhaes http://www.e-voo.com/)
ER9x Manual - Russian (by Dmitry Bugaevsky)
ER9x Manual - Hungarian (by Hegyi István)
ER9x Manual - Traditional Chinese (by Henry Liao)
Documentation and Tutorials
Sample .eepe files can be downloaded at the following link:
- Video tutorial by richardmrazek:
- Flashing the 9x by Jon Lowe.
- Flashing the 9x - Appendix 1 by Jon Lowe.
- Alternate 9x hookup.pdf by Jon Lowe.
- Smartieparts 9x Add-On Board Installation Howto by ghost.
- Smartieparts 9x Add-On Board Review By me :)
- Flysky 9x / AVR pinout courtesy of thus.
- FrSky Telemetry Mods.
- FrSky Telemetry details by Phil.
- FrSky interfacing tutorial by gruvin (gruvin made an excellent tutorial that's valid for er9x as well as his own flavor).
- FrSky Telemetry mods by Mike Blandford.
- Connecting the SF RS232-TTL converter.
- FRSKY telemetry guide by Rob Thomson.
- 450 Heli Setup Tutorial by ghost.
- The accompanying HEX file by ghost.
- Newer heli template tutorial by ghost.
- 450 Heli Setup (Spanish) by Luis Llaberia www.aeromodelitis.com/
- Simple 4 Channel Tutorial by ghost.
- Elevon and V-Tail mixing tutorial by Boxhead.
- Windows Compile Tutorial by Telemachus.
- EL Backlight Installation by Earl.
- Solderless "pogo" board interface by Telemachus.
- Dealing with a "Fuse Brick" by Telemachus.
- PPM fix for the 9x by J.H.
- Trainer resistor fix by ilektron.
- ArduPilot Display by uphiearl.
- ER9x Examples by ghost.
- Short tutorial on how to use Flight Mode Trims.
- EEPE First time user's guide by ghost.
- NMEA (GPS) how to by Reinhard Strauch.
- Variable travel rates by rogueqd.
DOWNLOAD THE MANUAL HERE ER9x Manual
Build and Program Instructions
Full programing instructions Flashing the 9x by Jon Lowe.
Required libraries avr-gcc, avr-libc, gcc, avrdude, libusb, bulid-essentials Ubuntu/Debian commandline: sudo apt-get install avr-gcc avr-libc gcc avrdude libusb bulid-essential ruby
Building from Source First checkout using svn: svn checkout http://er9x.googlecode.com/svn/trunk/ 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 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.
- 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:
- The origin of this software must not be misrepresented; you must not claim that you wrote the original software.
- If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
- Altered versions must be plainly marked as such, and must not be misrepresented as being the original software.
- 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.