Connect Teensy LC to existing Hotas PCB connector

Status
Not open for further replies.

pdebaty

New member
Hello,

I have a Thrustmaster TWCS Throttle that is no longer functioning because I stupidly connected it to an old USB hub with an overpowered 12V charger (instead of 5V). It blew something and now the throttle is no longer recognized by the computer.
But I figured I would salvage the hats, buttons and pots in the throttle by connecting them to a teensy LC.

I disassembled the throttle and found it is made of multiple PCBs connected together to a main PCB by a 9 pin connector. The USB plug is on the main PCB and that's the one that is busted. But all the buttons/hats/pots that I want to salvage are on auxiliary PCBs. I figured that rather than un-soldering the buttons and potentiometers from the auxiliary PCBs, I could try and plug the 9 pin connector to the teensy inputs and reverse engineer the signals I get to avoid doing lots of desoldering and resoldering.

After some trial and error, I think I was able to figure out which pin is the ground (the cable is black) and which one is supposed to be connected to the power (the cable is red). I also figured out that 4 of the 7 remaining pins are for the 4 potentiometers in the throttle. That leaves 3 pins for the buttons/hats (18 buttons!). But I have 2 problems:

- The potentiometer values that I read from the 4 potentiometer pins do not go from 0 to 1023. Rather, when I use the teensy 5v pin for power, they start from some value in the 500s and max out at 1023 before the end of the potentiometer range of motion. If I use the 3.3V pin on the teensy, they go from somewhere in the 300s up to somewhere in the 600s. I could do simple math in the code to bring that back to the 0 to 1023 range but I am loosing a lot of granularity/accuracy. Is there a hardware way to make those potentiometer inputs go from 0 to 1023 using some resistors or something?

- I could not figure out how the buttons work. One of the 3 remaining pins always change value when I press any button. The other 2 pins do not seem to do anything at all, except when I press multiple buttons at the same time and then some of them react. Also, even the potentiometer pins show an increase in value when I press any button. I tried using interrupts (attachinterrupt function) and still do not see anything useful in those 2 pins.

Is there any standard way that so many buttons can be encoded in 3 pins? Why would the potentiometer pins change value when a button is pressed?
Am I wasting my time trying to reverse engineer this encoder and I should de-solder the individual buttons/hats/potentiometers instead?

Thanks for any help!
 
Status
Not open for further replies.
Back
Top