Showing posts with label microcontrollers. Show all posts
Showing posts with label microcontrollers. Show all posts

16 February, 2014

ErgoDox build ...

A colleague of mine at GeekHack.org asked me to build one ErgoDox for him - he didn't like to solder SMD components.

After one month I could build his little keyboard:

I'm waiting for his pictures with the Keycaps ...

28 April, 2013

Open Source Cherry/Alps Keyboard - GH65

Hi guys, long time no see you. There's a while since my last post - that's because I've been working into a few projects that I need to finish to keep my spirits up (my quadcopter for instance). I said that I need to finish a few projects? Now I do have to finish more one! I got kinda envious of my friend Gilson's printer and then I started another project (one Prusa I3). Yes, my procrastination list is still huge! Thanks to you Gilson!

One month or so ago Matt3o asked me if I could design a PCB for an Keyboard layout he had in mind at that time (picture 1). You can see more about his topic at the GeekHack forum - there are also a few awesome pictures of his keyboard there.



Picture 1, Matt3o Layout

After almost 3 weeks I came up with the 2 PCBs below:



Picture 2, complete PCB - GitHub Kicad files here



Picture 3, PCB with headers to attach the Teensy 2.0 board - Github Kicad files here


Matt3o ended up using direct wiring into his keyboard (I think he got impatient waiting for my design) and we didn't used these PCBs for real. Would be good to have a complete review before you do decide to order it into a fab house (OSH for instance).

11 April, 2013

Open Source Alps Keyboard - GH60

If you do know what ALPs Switches are you do also know that there aren't many open source projects out there for this old fella - that's why the guys at the GeekHack forum came up with the idea to build one PCB to this little prehistoric switch.

The credit goes for Michal Trybus (Komar007 @ Geekhack), I just got his rev b project files and changed the switches used on it to fit the ALPs footprint. You can get more info regarding the original GH60 project at here and if you do want to know more about the Alps version at here.

This project is still up and running, right now we are just waiting the best moment to start the beta-testing and group buy action.


GH60 ALPs PCB, Github Kicad files here.

GH60 ALPs PCB Back side

11 March, 2013

Arduino +USB Lipo Charger +5v Booster

So, let's say that you want to use your Arduino board with a LiPo battery. What would you have to do?

WARNING: If you have never used a LiPo battery before, I strongly advise you to read this guide before continuing. This guide will teach you the basic safety precautions required by this kind of battery.

If you do have the money for it OR if you don't fell comfortable working with the steps that I'm writing below, I suggest you buy a board that already has a USB LiPo charger embedded, like an Arduino Fio* - the only practical difference between this board and what I'm presenting here is the more expensive price and the impossibility to use it @ 16Mhz without modifying the board.

Since I'm always concerned with simplicity, I'll only suggest already tested and safe modules. We don't need to reinvent the wheel, do we? This is just a simple Arduino power guide.

Required parts

  1. 1x Arduino board, of course, original or compatible.
  2. 1x Sparkfun's PowerCell v1.3 (the previous version has a flaw on its design that will drain the battery really quick). This module has a quick start guide here.
  3. 1x Micro USB-B cable.
  4. 1x 1S 1P low discharge rate LiPo battery with a JST connector (JST RCY or 2pin Molex too).
  5. 2x 2.54mm angle pin headers.
  6. 2x 2.54mm pin headers.
  7. 2x wires with 2.54mm female headers on both ends, 20cm so so, red and black.
Charger/Booster LiPo, 1S1P Micro USB-B Cable JST RCY Connector 2pin molex

Why use a "low discharge" battery and what the hell is that? The discharge rate is simply how fast a battery can be discharged safely, suffice it to say that we don't need a battery with a high discharge rate (the normal type out there) for devices with low consumption. Our Arduino is a low consumption device (it requires 100ma, tops) so a low discharge rate battery is more appropriate, safer and it will drain slower than a normal battery. If you want to know more about LiPo Batteries, take a look into this link.

Basic Wiring

  1. Make sure that the blink "sketch" is already loaded into your Arduino board. It comes pre-loaded from factory.
  2. To be sure that everything is okay BEFORE we wire our modules, turn the Arduino board on as you normally do. If everything is all right, the led on pin 13 will start to blink and then there's no one to blame later on. Turn off the Arduino board.
  3. Get the 2.54mm angle pins and solder them into the VCC and GND out charge pins (picture 3, top).
  4. Plug the 3.7v LiPo into the small white plastic connector. It fits in only one direction so you don't have to care about it's position (picture 4). This type of connector (JST) breaks easily and it's a real pain to remove after it is connected, so be careful. If you don't have a LiPo with this connector, you will have to solder an adapter like the one in picture 2 (you can grab this connector from any PS3 Dual Shock Battery).
  5. Connect the black wire into the GND out charger's pin. Plug a male 2.54mm pin header into the opposite end of this wire in order to be able to connect it into the Arduino GND female header (picture 5) and then connect it (picture 6).
  6. Connect the red wire into the VCC out charger's pin. Use another 2.54mm header for the red wire end connector and then wait a minute. Review all connections just to be sure that everything is all right. Take a break, review again and, only after that, connect the red connector to the Arduino 5v header (picture 6). I'm serious - you can burn your Arduino just like popcorn and I'm almost sure that you will not like the smell.
  7. If you didn't burnt down the house by now, it's time to connect the USB cable. As soon as you plug the USB cable in, the red led in the charger board will turn on (picture 7).

Picture 1, The 2.54mm header wire plugged with the male pin


Picture 2, The JST Adapter


Picture 3, The JST Adapter connected


Picture 4, LiPo -> charger


Picture 5, LiPo -> charger, out cable connected


Picture 6, LiPo -> charger -> Arduino


Picture 7, LiPo -> charger -> Arduino 5v GND, USB -> charger

This is the basic wiring to power up any Arduino board running at 5v (pictures 8 and 9). It's important to note that we are wiring the charger's output straight into the uC and it's not passing though the internal voltage regulator (the LM whatever LDO). That being said make sure to use only 5v regulated power sources otherwise you will melt your little friend.


Picture 8, LiPo -> charger -> Leonardo Pro 5v GND


Picture 9, LiPo -> charger -> Groovy 5v GND

The booster is also available in a single module, without the LiPo charger:


Picture 10, The 5v booster


Picture 11, LiPo -> booster -> Leonardo Pro 5v GND

    A few notes
  1. There is one implicit worldwide color convention that dictates that red is positive and black is negative (GND).
  2. The multimeter is your friend, use it whenever you can.
  3. Whenever you need to wire up a power source wire up first the GND line, after measuring it with your friend - the multimeter.
  4. Whenever you need to disconnect a power source disconnect first the VCC line.
  5. Always buy spare parts - you never know when you are going to burn something.

Basic Wiring, 3.3v

The Sparkfun's USB LiPo charger/booster used above can be configured to work at 3.3v, you can see how to into its guide, doing so you will be ignoring it's embedded booster circuit. For this scenario it's better to use one simple LiPo charger instead - cheaper and smaller.

Charger 5v Booster Another Charger More Charger
    The wiring here is way simpler:
  1. Connect the LiPo 3.7v and GND into the charges IN+ and IN- respectively.
  2. The same LiPo GND goes to Arduino's GND.
  3. The same LiPo 3.7v goes to Arduino's 3.3v. 3.7v is not equals to 3.3v, I know - the thing is that 3.7v is in the tolerance range that is acceptable by Arduino's 3.3v input.
  4. If I'm consuming power (the board is on doing something) how I'll be sure that I'll be recharging the LiPo? Well, this charger feeds 400ma (tops) to recharge the LiPo and we know that one Arduino uses 100ma (tops), so the math is: 400ma - 100ma > 0. If greater than zero we are okay, we will be charging the LiPo, if lower than zero review your project and remember that a LiPo can't be totally discharged without getting damaged (see the LiPo guide for more details).


Picture 12, I'm out of LiPo chargers right now, I'll post it later ...

    A few 3.3v boards
  1. Arduino Mini 3.3v.
  2. Arduino Fio v2.2 and v3.0.
  3. RBBB variants without crystal.
    More notes
  1. The "booster" module is also called by "step up" circuit, it's a circuit that increases the voltage of it's input. There is another similar kind of circuit that will help you in the opposite case, the "Step Down" circuit, it's a circuit that decreases the voltage of it's input.
  2. Do not use the USB 5v line to power up your 3.3v device. It's normal to have a tolerance range (normally it's between 10%) but 5v is way higher and it will fry your uC, for these cases you will have to use one step down circuit.
  3. The Arduino uC, from factory, operates at 16Mhz. You will have to reconfigure the Arduino fuses in order to make it run at 8Mhz.

Data wiring

At this point you did powered you Arduino however you didn't wired the USB data pins (D- and D+), there's no such pins in the LiPo charger nor in the 5v booster - both modules don't care about these signals. They could have designed these modules taking into account these pins but they didn't. Why? I think they are just assuming that you are only using the USB cable to charge your LiPo or to provide power to your device, not to communicate with your computer (silly assumption).

To enable the USB communication you will need one USB 2.0 header like the one I did here.

continue ...


Picture 13, USB 2.0 pinout - I'll post it later ...

    And more notes:
  1. The USB D- and D+ signals are not interchangeable then you need to follow the correct order of the pins.
  2. Try to use and memorize the correct color code adopted into the USB cables (picture 13, mine is wrong - don't know why they swapped the D- with the D+ wire).

Data wiring, 3.3v

    Aggain, you know, more notes:
  1. The USB D- and D+ signals are 5v signalsthen you will need one level converter into them.

Identifying which power source is been used

Sometimes you will need a way to identify when the device is been powered by the USB or been powered by the LiPo. This is not required but it will help some wireless applications (if you don't need or don't have a clue why an wireless application would require it just wait my next post - when I'll wire a bluetooth module to one LiPo powered Arduino).

The easiest way to identify when the board is been powered by our LiPo is to check the USB 5v presence. You will need one 100k resistor, one wire with 2.54mm headers and one USB 2.0 header.

    Wiring, you will see it's easy
  1. Using the USB header connect the wire into the USB 5v.
  2. Plug the 100k resistor's leg (any leg) at the end of this wire.
  3. Connect the other resistor's leg into the Arduino A5 port.
  4. Compile and upload the sketch below, piece of cake right?
/*
USB 5v –> 100k resistor –> Arduino A5.
Blink when powered by LiPo.
*/
 
#define DEBUG 

// Pin 13 has an LED connected on most Arduino boards.
int led = 13;
// Analog 5 will be used to read the vcc line voltage.
int vcc = A5;

// the setup routine runs once when you press reset:
void setup() {
  Serial.begin( 9600 );
  // initialize the digital pin as an output.
  pinMode( led, OUTPUT );
}

// the loop routine runs over and over again forever:
void loop() {

  int vccA = analogRead( vcc );
  float vccR = vccA / 204.6;

  #ifdef DEBUG
    Serial.print( "VCC Voltage: " );
    Serial.print( vccA );
    Serial.print( " - " );
    Serial.print( vccR );
    Serial.println( "." );
  #endif

  digitalWrite( led, HIGH );   // turn the LED on (HIGH is the voltage level)
  delay( 1000 );               // wait for a second
  if( vccR < 3.3 ) {
    digitalWrite( led, LOW );  // turn the LED off by making the voltage LOW
    delay( 1000 );             // wait for a second
  }
}

204.6? what's that? Take a look into the documentation of the function analogRead and try to figure it out by yourself as a mental exercise.

References

  1. * Arduino Fio v2.2, ATMega328p OR Arduino Fio v3.0, ATMega32u4

No Arduinos Were Harmed in the Production of this Post.

Post not finished, I'm still writing it ...

01 March, 2013

Mechanical Keyboards

What do you think about a guy who's willing to spend US$ 300,00 on a single keyboard key? Yes, a keycap, that little square thing that you press to get chars into your text editor in order to write your marvelous texts (this one excluded, please, my English sucks and I'm shy anyway).

Right now everybody is talking about the Pope's ring, don't know why. Even you, I doubt you haven't heard about it. This dummie ring is just a piece of gold (metal, diamonds, etc), used to adorn one ancient finger. Useless stuff, however, I'm sure that this loveable ring costs more than this stupid keycap ...

Have you ever heard about keycaps that glow in the dark? Better than the ring (I could melt the ring to make some keycaps though).

Don't complain about the keycap and I'll shut my mouth. Who cares anyway?

The thing is that keyboards are awesome devices to start working in the microcontrollers world - they are cheap and I bet they are everywhere in the universe where there is intelligent life. A keyboard is basically a microcontroller tied to a matrix of switches arranged according to your keyboard design. A few switches wired into an array matrix, a few leds, the microcontroller and the software to read the switches, it's as simple as that.

You will see that there are a huge community out there designing and building really cool keyboards. Take a look:

WARNING: the content below is highly addictive for geeks.

GeekHack Forum

Geekhack projects summary

DeskThority Forum

Only three links but the amount of info there is bound to thrill you! Lots of awesome pictures too ...


This ring is only US$ 255 bucks.

I still haven't finished my "USB Devices" tutorial because I bumped into all this keyboard stuff (as I have said: it's addictive!).

Revised on 14/08/2013

29 January, 2013

USB devices

So, do you want to project and build USB devices? Something like one USB scale? one LCD display? or one special type of keyboard? So do I! Lets just say that today it's not that hard - with the proper uC and library you can build simple devices in just one day without much headache (Thanks to all that hard work done by the the open source community!). Welcome to my "online procrastination USB project learning share experience" ...

Don't get too much excited thought, we will just scratch the surface here (that's why I said "simple devices"). If you want to go deep into the USB devices be prepared for some long time reading books, specs and lots and lots of coffee - the USB spec is hard core (IMHO) - actually it is one of the the most complex protocols out there and it will take a while to learn all stuff required to make pro gadgets.

So, Hey Ho, Let's Go! let's see the arsenal that will help you to create your first awesome USB gadget:

uC Library

uC Familyhex SizeUSBLicensing

USBTiny

ATTiny / ATMega+- 1350 bytes1.1 low speedGPL v2 or later

V-USB

AVR+- 1400 bytesFully 1.1 compliant low-speedGPL v2 or commercial

LUFA


Prototype Boards

Teensy 2.0 and Teensy++ 2.0

As far as I can tell the Teensy board was one of the first ATMEL based prototype boards with USB support

Arduino Mega ADK

The Arduino Mega ADK is nothing more than the Google ADK main board without that cute test board (the google ADK sold out in the first month). This board is based in the awesome work done by Oleg.

Arduino Leonardo

Arduino UNO R3

Arduino UNO R2

Arduino UNO R1

Arduino Micro


Platform USB Drivers

lib-usb

libusb-win32


Reference books

  1. Online Book USB in a NutShell
  2. USB Made Simple
V-USB tutorials:
AVR ATtiny USB Tutorial Part 1Awesome tutorial.
AVR ATtiny USB Tutorial Part 2
AVR ATtiny USB Tutorial Part 3
AVR ATtiny USB Tutorial Part 4
V-USB tutorial continued: HID mouse
USB HID keyboard with V-USB
    LUFA tutorials
  1. Arduino USB Keyboard Passthrough
    USBTiny tutorials
HID/USB Keyboard Repeater with Playback Homemade Hardware Keylogger/PHUKD Hybrid Decoding the NZRI data (USB SNIFFER) Ambitious Arduino newb. Any help with USB? SIAM32 USB HC Non-return-to-zero Interesting Keyboard development "evolution": http://forum.colemak.com/viewtopic.php?id=1561 This guy started to develop one keyboard with a full arduino ADK stack and then he figured out that the max34 was kinda under used ... http://hackaday.com/2011/10/06/hardware-based-keyboard-remapping/ http://41j.com/blog/2011/10/a-programmable-keyboard-controller/ Complete keyboard, from scratch! Mechanical Keyboard Guide Mechanical Keyboard Guide https://github.com/tmk/tmk_keyboard/tree/master/keyboard USB Keyboard Sample from PJRC (using push buttons) http://www.pjrc.com/teensy/usb_keyboard.html https://github.com/gimpster/Phantom-Keyboard https://github.com/arjan/ButtonKeyboardProject Generic Keyboard Driver for atmel/avr https://github.com/rhomann/kbupgrade http://hakshop.myshopify.com/collections/gadgets/products/usb-rubber-ducky

This creature is not totally ready yet and, please, fell free to post your comments and suggestions to feed this Tamagotchi ...

14 January, 2013

New Turnigy 9XR TX

For those whom still remember my previous post about the FS TH9X TX mods there is a welcome news: Hobby King is selling the new Turnigy 9XR TX - it's the resulting of all those mods you saw into my post and a few more.

I'm not sure what came into this TX yet. There are some obvious features in this new version like the new chassis, the AVRISP connector, the ER9X pre flashed firmware, the back light, the JR and Futaba training connectors, the 3S lipo battery, the internal antenna and others.

So, if you are a lazy bum or if you don't fell comfortable with the solder iron this is your chance to get a decent and cheap radio. IMHO this is the best radio in this range of price - even some expensive radios can't match it. Turnigy definitely is moving into the right direction getting all those mods into their project - it's proves they are listening to their customers.

I did just ordered mine and I'm excited waiting for it ...

17 July, 2012

AllWinnwer A10 Based Tablets

If you are looking for one cheap android ICS based tablet I would recommend this one below. It's does not came with Bluetooth nor 3G embedded but you can "easily" reflash this guy in order to add the support drivers you need.

I bought mine one eBay by 100 bucks with shipping, it's a real bargain. Where I live the usual "well know" brands are twice or more this price. I bought this guy just to stop to reflash and install code into my HTC desire - it's not a good idea to use your main cell phone to test this kind of stuff right? I don't need a US600 paper weight!

Be warned thought: there are lots and lots of versions of tablets using this microcontroller and It's almost impossible to identify all of then. I liked mine very much but I can't say who is the brand behind mine (even on the package there is no brand name nor label). Well, it's okay, it works and the material is really good for the price that I payed, to be honest it's better than what I was expecting.

I saw this very same microcontroller in one Set Top Box on deal extreme (for those whom doesn't know deal extreme is one ebay/china online seller/importer kinda of store, usually the same stuff that you see on dx you can get from ebay or on china, like the original Set Top Box here). I don't know mandarin but I do know that this Set Top Box has more power than the Raspberry Pi and cost so so 100 bucks on ebay ...

So, if you are, like me, interested on installing, flashing and trying some new roms I would recommend:

  1. The Tablet that I bought on ebay
  2. Windows 32 / 64 ADB Drivers
  3. List of tablets powered by Allwinner A10 processor
  4. Allwinner A10 General FAQ (non tablet specific)
  5. Hack A10 Devices
  6. xDev Tutorial, Build AOSP Android 2.3.7 for Allwinner A10 tablets
  7. Some pre-compiled roms to your AllWinner A10 based tablet
  8. Open Source Firmware for the Mele A1000

18 June, 2012

Another Home Brew Quadcopter

Under construction ...

    Some useful links
  1. AeroQuad
  2. MultiWII
  3. AeroQuad SVN Repository
  4. Is this sensor board supported? Cheap chinese 9dof
  5. Hardware Assembly Mini Shield v1.0
  6. What is Degrees of Freedom
  7. Wikipedia, Degrees of Freedom

FS TH9X Common mods

A compilation of the most common and useful Turnigy/FS TH9X/Eurgle mods ...

So this is more one blog with Turnigy mods?

- Yes and no: I'm mostly writing it in order to register my work on my own radio mods and decided to share my experience okay? So I decided to compile the most common mods ...

For my own experience the most difficult part of any of these mods below is that you can get crazy with the amount of info that is available: most part of it is spreaded over a lot of forums with lots and lots of pages to read, it's easy to get insecure with this amount of technical stuff.

1. ISP Programming Cable

Medium mod. This mod is the most common mod and it's required if you do intend to change the default factory firmware that came installed on the stock radio. There are a few videos on youtube teaching how to install this ISP cable but you will spend much more time trying to understand the German/Pollack/Whatever guy's accent than wiring the cables.

The ISP cable (in-system programmer) is a common cable in the AVR microcontrollers world, you do use it to load programs (firmware compiled code, hex files) into the microcontroller.

If you do have any experience with microcontrollers (uC) or any Arduino gadget you will most probably already have the knowledge required to install this cable just looking at the pictures below.

As far as I know, up to today, the FS TH9X main board has two main versions. You can recognize it looking for the extra pad close to the SCK pin - if your board does have this pad your board is version 2, if it hadn't it's version 1.

PCB v2, note the pad close to the SCK pin
The ISP connector wiring
The ISP connector cable
External view of the ISP connector
  1. YouTube, Turnigy 9x flash upgrade wiring how to-part 1 of 3
  2. YouTube, Turnigy 9x flash upgrade wiring how to-part 2 of 3
  3. YouTube, Turnigy 9x flash upgrade wiring how to-part 3 of 3
  4. 9xForums, Flashing your 9x - Hardware

2. Firmware update

Easy mod. After the mod #1 you will be able to change the firmware that came installed on your stock radio - why would you add one ISP cable if not to change the uC "software"?

One warning regarding those 20 bucks ARVISP MKII clone programmers on ebay: most probably you will face some issues trying to establish communication with the radio uC (it's caused by the capacitor that is wired on the RST pin - I saw a few guys recommending to remove this capacitor but I didn't fell comfortable with this approach). After some huge amounts of coffee I gave up with my clone programmer and then I tried with my Bus Pirate v3b (the Bus Pirate took 30 painful minutes to write and another 30 minutes to read the firmware but it worked!).

  1. 9xForums, Flashing your 9x - Software
  2. 9xForums, How to flash your 9x Using Eepe
  3. Using your arduino to program a Turnigy 9X transmitter

3. Battery JST connector

Easy mod. Just change the 3 pins mini jst connector by a male jst connector.

A set with 10 pieces costs less than one dollar at Hobby King.

The JST connector
A 3S lipo battery (11v)

4. 2-cells or 3-cells battery

Medium mod. There are two main versions of this mod: This one (really well written in 2008 by RC Model Reviews) assumes that you will always use a 2-cell LiPo battery. This other adds a switch to let you choose between the 2 available options.

I did mine using one of those voltage selector switches that I got from one old pc power supply and fixed it at the bottom of my radio. This switch and this position is much more secure - you will never bump accidentally on it.

Even if you do already have one 3S lipo I would recommend you to buy the TrustFire pack or a 2S (7.4v) LOW DISCHARGE lipo.

The 3S/2S switch (on the left)
External view of the 2S/3S switch

5. LCD Backlight

Easy mod. This mod is actually a kit that came ready to be used: open your radio, disconnect the cable that attaches the front into the back case, connect this very same cable into the backlight male connector and then connect the opposite side of the backlight cable into the radio where the original cable was installed before.

As always Murphy's law is still present: The "recommended" backlight position will block the menu buttons and the positive and negative wires are too short to let you rotate it to the left. I just got those wires out and rewired a longer pair and added a little connector to make my life easier.

  1. HobbyKing, Backlight LCD kit (5 bucks)
  2. Installation
  3. YouTube, Backlight control configuration

6. LCD Backlight auto turn on/off

Easy mod. After you do install the LCD Backlight kit you will notice that it's always turned on (yes, you read it right, the LCD is ALWAYS TURNED ON). You can easily add a switch to turn it on or off but how about doing it automatically? This mod will automatically turn the backlight on whenever you do press a button and will turn it off after a few seconds without use.

You will need a BS170 transistor to install this mod but you can use a simple 2N3904 PNP transistor instead (the 2N3906 NPN doesn't work - it will invert the on/off signals).

  1. HobbyKing, Backlight mod
  2. YouTube, Backlight Installation turn on the youtube Transcribe Audio - just for fun ...
The LCD Backlight moded

7. Piezo Speaker with Haptic Feedback

Medium mod. This mod is cosmetic but it's useful and cool - I do hate that buzzer that came with the original stock radio.

For those whom doesn't know the difference between one buzzer and one piezo speaker let me try to resume: the buzzer is only capable to make noise and the piezo speaker can be driven by a uC in order to make cool sounds.

There are a few components to solder and you do must pay close attention into the polarity indication on the capacitor and on the diode. For the BOM (bill of materials or parts list) you can easily grab all of them on eBay with china prices. You can also get the piezo from almost any old wireless telephone and the vibration motor can be get from any broken iPhone.

  1. 9xForums

8. JR module with selection

Medium mod. This mod is, IMHO, the most useful one - it will enable your radio to use one JR TX module.

Why would you need this mod?

  1. The JR brand is much more reliable
  2. The JR TX has a lot of compatible RX models (micro, 3.3v, etc). I could find only one RX for the fly sky (the very same one that came with the radio)
  3. The JR module has fail safe
  4. The JR module has longer range
  5. The JR module has much better interference resistance

There are, basically, 3 ways to install this mod. At first I was really confused with these options and then, after some reading, I realized that they are almost the same thing as I describe below:

  1. FrSky V8HT 2.4Ghz DIY Module kit
  2. This kit is nothing more than one internal version of the JR TX module followed by the required 6v voltage regulator, a switch, a little PCB with one red led and one button to do the RX bind.

    YouTube, Installing the FrSky 2.4GHz DIY Module kit

  3. FrSky DHT 8ch DIY Telemetry Compatible Transmitter Module kit
  4. This kit is almost the same kit described on the item 1 above but with telemetry (this kit will require the FrSky telemetry mod below OR an external DHT system).

  5. FrSky DJT 2.4Ghz Combo Pack for JR w/ Telemetry Module & V8FR-II RX
  6. This option only adds a switch and a 6v voltage regulator in order to attach the JR TX module. I do prefer this option just because it's simpler and use the TX module as it should be used (with the internal version you end up with the TX slot empty).

    This option requires the normal JR TX module and it also requires the 2-cells mod installed.

    Warning: the second picture, where it shows only two connected pins, is not the final mod - it's just a partial to show the pin 4 isolated from GND. After you do change the pin 4 solder all pins back.

      Just in case here is the Turnigy TX module pinout, the 78L06 wiring and my color schema:
    1. Pin 1 - ANT
    2. Pin 2 - GND (C - blue)
    3. Pin 3 - + (I - green)
    4. Pin 4 - GND (O - yellow, 6v when ON for the JR TX module)
    5. Pin 5 - PPM

    Another warning: after you do install this mod you will have to remember to change the JR/Turnigy switch before you do change the module or you will burn it! And yes, never change the module or the switch with the radio turned on. You can isolate the pin 4 in the TX Module in the same way you did in the TX - see FlySky Module mod to make this change just for precaution.

9. DSM2 module

Hard mod. This mod is expensive - you do need to buy one DSM2 TX in order to grab its internal RF module ...

  1. 9x Full Mod DSM2/X
  2. Hacks & Mods - DSM2 mod
  3. 9xForum - DSM for dummys
  4. 9xForum - How to modify your 9x to the DSM protocol

10. LP4/LP5 module

Medium mod. Same as the DSM2 mod this is one expensive mod.

11. FrSky Telemetry

Hard mod. This is THE MOD, IMHO this is the most difficult and you will require advanced ninja skills to solder two close microcontroller wires.

9x Full Mod Telemetry

How to modify your 9x to support telemetry

12. SD Card ...

The RadioClone firmware requires this mod - the RadioClone code (the hex file) is so huge that it let the radio with memory space for only one model. RadioClone uses the SD Card to save and restore models in order to reduce this limitation.

I'm still looking for a reference for this mod. There is a SD Card mod on the RadioClone forum however the author mention that it's still experimental. I'm not sure if it is because of any firmware limitation OR because of the size of the code that it's required to support this SD Card (SPI/Fat) anyway it should be simple - at least on arduino it's simple as I saw 6 months ago when I got one of those ebay SD Card modules and wired it up and put it to work in less than 2 hours.

Link to the SD Card PRO

Link to the home brew SD Card interface

Seems that ONLY the RadioClone firmware does have SD Card support ...

Some less common mods

  1. 9xForum, Trainer port resistor fix
  2. YouTube, Trainer port resistor fix
  3. er9x, How to set up 16ch Tx
  4. 9xForum, Wireless Trainer System

A Few Links

  1. 9xForums, FS-TH9x Schematics and FCC papers
  2. Gruvin 9x Reference data
  3. TX module pin-out
  4. YouTube, Er9x Template Servo Test (Servo Teste)
  5. ER9X Hacks
  6. er9x mods
  7. Gruvin9x Custom PCB
  8. ERSKY9X Custom PCB
  9. Turnigy 9X Replacement Board, under development?
  10. 3.3v location
  11. Using a DSM2 Module from the Spektrum DX5 Radio
  12. T9X mod to use Flysky module, Frysky module and DSMX module

Coming not so soon ...

Someday, only god knows when, I'll try the mods 9, 10 and 11.

01 May, 2012

Low Cost Arduino LCD module, 3 pins

For those who are looking for a ready to use Arduino LCD module here goes my 5 cents to the open source community.

This module was based on the work published on ArduinoShiftRegLCD's site. The original layout has two sides but it can be easily converted into a single side layout just using simple jump wires at the bottom side.

    Parts list:
  1. M74HC595
  2. 1 x 16 pins female header
  3. 2 x 2 pins male headers
  4. 1 x 10k resistor
  5. 1 x 100nF capacitor (104)

top bottom

Project files here (github account required).

Feel free to leave your comment.