Sidewinder FFB2 Modification (1/2)
Sidewinder FFB2 is a great force-feedback joystick and pretty much the only reasonable choice except Logitech G940 in terms of force-feedback flight stick unless you want to throw 4-digit money into something like Brunnel. However as many have complained, its grip is lacking in buttons for flying most modern fighter jets.
A lot of people have already managed to modify the stick with different grips, but there doesn't seem to have any record of modification with a TM Warthog grip. There are numerous people mentioning the possibility, but no one seems to have posted any results. So I took the leap of faith and here are some documentation for people who are interested.
Aside from mechanically mounting the warthog grip onto sidewinder ffb2 base, the main task here is to read signals from the grip's buttons. Warthog grip utilizes a Mini DIN 5 pin male socket, which is quite hard to find (or expensive) online for parts, so I took a Mini DIN 6 pin (similar to the PS/2 socket for keyboard and mouse on a PC motherboard) female one to have a go. It fits a warthog grip with the caveat that the centre hole for the plastic pin is the other way around. So the choices are to either remove the plastic pin from the grips socket, or drill the female socket to fit.
To process the signal of the grip buttons I used a Pro Micro ATmega32U4 board with MMjoy as the software.
For connecting the socket (Mini DIN female) to the board, here are some really helpful diagrams I collected from different forums.
My soldering is:
- GND to GND
- DATA to MISO
- CLOCK to SCLK
- LATCH to B5
- VDD to +5V
Warthog grip uses a 4021 shift register internally. When setting up MMjoy, you will need to set the type of shift register and specify the pins used to MISO and SCLK signals. For setting up MMjoy with Pro Micro board, I find this tutorial very useful.
One major issue with this modification is that the servos of ffb2 is insufficient to keep the heavy warthog grip well-centred. For this reason, I explored ways to increase the force output of the servos, as mentioned by multiple posts on flight sim forums.
I followed this one since it seems to be the easiest: it only needs to solder 8 additional resistor upon the original ones to double to current to the servos.
The servos did work at double force output, however something burned on the circuit board after only a few minutes into using it, and the servos pulls to one corner at full strength during idle. Quite scary.
After taking apart the base (again), I found out the part I managed to blow.
Having looked up here, especially the circuit diagram, it seems clear that the part is a PNP 40-40-500mA transistor (or a MOSFET basically). I am not sure about the reason but nobody seems to have reported this issue in their modifications.
In the end I cleaned up the burnt area and swapped on a MOSFET with a higher current rating 40-40-1A and the servos went back to normal.
However it does seem that operating at this current might have potential hazard and I plan to reverse the resistor mods I made earlier, and try to use a plastic grip instead of the heavy warthog grip.