Introduction: Logitech 3D Extreme Pro Hall Effect Sensor Conversion
The rudder control on my joystick was going out. I tried taking the pots apart and cleaning them, but it didn't really help. So I started searching for replacement pots, and stumbled across a few different websites from several years ago that referred to installing hall effect sensors instead of the pots. Sensing a great project idea, I decided I would do the conversion and publish the instructions here so others can do the same.
I designed this conversion to be 100% easily reversible - there are no wires to cut, and only 2 wires to solder on the main board for power (and a little plastic removal around the throttle that isn't needed). The rest of the cutting and soldering is on the new components themselves.
When disassembling the joystick, take note of what size screws go in which holes, as there are 2 different sizes used (on mine at least). Also make sure you take note of which pots in the joystick have the metal clips in them to help them stay installed. You'll need to install them with the new pots to hold them in place.
- Logitech 3D Extreme Pro Joystick (working with exception of pots)
- SS495 Hall effect Sensors x 4
- Diametrically magnetized rod magnets (0.1875" x 0.375") x 4
- #2 Round Head Sheet Metal Screw, 3/16" long x 5
- 3D printed components (see below)
- Assorted hookup wire
- Assorted heat shrink tubing
- Soldering iron
- Assorted electrical connectors
Step 1: Order and Print Materials for New "pot" Assembly
Depending on where you get the materials, some may have a longer lead time. I got the SS495's off eBay for about $6, but they shipped from China, so about 4 weeks to arrive. The magnets I used are D36DIA's from K&J Magnetics (about $0.65 ea, plus shipping). They are 3/16" dia x 3/8" long, grade N42. A similar magnet from any comparable supplier should yield similar results, though if it has a different strength, that may affect the overall response of the SS495's as a function of the distance from the magnet.
The rest of the pieces will need to be 3D-printed. At a minimum, you will need:
- 4 x Magnet Posts
- 3 x Straight Bases
- 1 x Angled Base (NOTE: Make at least 2 of these....see below)
- 4 x Sensor Slide Mounts
I strongly recommend printing extras of the magnet posts, and probably at least 1-2 spares for each piece, in case they break for some reason. Both the STEP file and the Autodesk Fusion 360 project file are available for download. Fusion 360 can be downloaded and licensed for free for 1 year if you create a hobbyist account. It's a very powerful piece of software. My boss at work has his own 3D printer production factory running out of his basement, so he graciously printed all of these pieces for me. He used Colorfabb nGen Copolyester filament with an 80% infill on a 0.10mm layer thicknesses.
Other note: The pot that goes to measure pitch near the board for the buttons on the left side of the joystick may work better as an angled base instead of a straight one. I built my joystick with a straight base, but final assembly was very tight, and I had to bend the wires for that pot more than I wanted to get everything back together....you may want to experiment on this one and at least have options.
Step 2: Polish and Fit Printed Pieces
The 3D printed pieces as designed and likely as printed will have some interference, and there will likely be burs and defects from printing. Specifically, the hole for the magnet to fit into on the post is printed undersized so there will be some interference to hold the magnet in place. In addition, the 7 mm hole in the bases is exactly the same size as the 7 mm outside diameter of the magnet post, so the hole in the bases will need to be carefully enlarged until it is the correct size.
For the magnet post, get a 3/16" drill bit, and CAREFULLY drill down into the hole where the magnet will go. Drill slowly, and stop once the tip of the drill bit hits the bottom of the tapered hole - continuing may remove the material that holds the top of the post onto the bottom. Do not drill for a long time, just long enough to get the hole cleaned up so that the magnet will press into it. You'll want a tight fit, so don't keep drilling and removing material from the post walls once the magnet goes in. I would also not recommend doing this if the plastic is too cold, as it may not flex properly and may go to large immediately - if the plastic flexes it will help the hole stay just under 3/16" nominal size. You'll need to experiment, which is why you printed extra pieces :-)
Once the magnet goes into the post, I used a countersink tool to clean up the chamfer at the top of the post to help guide the magnet in place. You may want to alternate the drill bit and this countersink tool to get the magnet in cleanly.
With the post and magnet fitting well, the base holes need to be cleaned up. With the smooth end of an appropriate size drill bit with sand paper (about 100 or 120 grit) wrapped around the SMOOTH end, clean up the inside of the 7 mm hole in the base. Continue until the post just slides in side of the hole and rotates reasonably freely. You'll want to take care here as well, as you don't want a lot of play between the base and the post.
With the post fitting into the base, double check that the 9 mm flange on the magnet post fits cleanly in the corresponding groove in the base, and if necessary, sand the outside of the flange of the post. I did this by pressing the post onto the smooth end of the 3/16" drill bit, and putting it in my drill (drilling end of the bit into the chuck) and running the flange it over sand paper, until the flange fits in the groove cleanly.
Finally, with the post and base fitting, lubricate them by putting graphite on the contacting surfaces with a pencil. Draw on all mating surfaces to leave a generous layer of graphite, and this will help it operate much more smoothly. Sand/cleanup surfaces as needed and reapply graphite to get smooth operation.
Step 3: Make the Sensor
The joystick connects to its exiting pots with female 3 pin connectors on a 0.100" pitch. This means we can use common header pins to make the connectors, with some modifications.
I wanted to make sure I wouldn't insert the pins backwards into the connector, so I cut a piece of plastic that I could glue onto the header pin base to make a key tab. The plastic came from a Walgreens children's medicine spoon, and I cut it to size with a tin snips and wire cutters to get it to the right size. I then used super glue to attach the plastic tabs to the header pin base to make the connector. The finished connector will only insert into the joystick connector one way. I'm sure you could print these too if you wanted to.
With the pin headers ready, now we need to begin soldering wires. I used 28AWG wire to keep it flexible and hopefully get everything to fit with the small pin spacing on the sensor. In my joystick, all 3 connectors followed the same pattern - you'll want to verify this configuration in yours, as there may be variations over the many versions of this joystick. With the plastic tab facing AWAY from you and pins down:
Left pin will be VCC (5 VDC - Red in the picture)
Middle will be the voltage signal back to the joystick (White with yellow shrink in the picture)
Right will be GND (Black in the pictures).
The wires soldered onto the header pins should be about 2" long - this will give you enough room to make the connection in the joystick but not so long that they become a nuisance on reassembly.
On the SS495 sensor side, you'll want to confirm the wiring sequence on your datasheet. Mine used the following with the FLAT side of the sensor facing you pins down:
Left: VCC (5 VDC)
See pictures for orientation. With the sensor made, I would recommend connecting it to a voltage source/breadboard and checking that the output changes with the change in magnetic field....when I made my first sensor, I had the signal and ground wires swapped on the sensor, and it got very warm very fast....By some miracle I didn't release the magic smoke from the sensor. Be sure to check that the sensor doesn't heat up and gives the expected voltage change with the magnetic field change.
Step 4: Assemble the "pots"
With the sensor wired to the connector and the magnet posts fitting in the bases, now the full pot can be assembled. See the 3D model from Step 1 for the full detail of assembly.
First - a word of warning - during final testing and setup of the joystick, I noticed that the throttle needs to have decreased sensitivity compared to the other axes, and as such the sensor needed to be farther away from the magnet than on the other posts. You may want to wait to assemble one final pot until you get the throttle setup in case you need to modify the slide or base to enable the sensor to be far enough away. I ended up making the adjustment by filing away plastic from the slide, but it took a while....it would have been easier to file the pocket that the sensor goes in and make it deeper.
Ok, continuing on.....
With each sensor and slide, use super glue to mount the sensor in the slide, as shown in the 3D model. The tapered portions of the sensor go into the pocket, with the flat of the sensor facing outward toward the magnet. The wires go up and out of the totally flat side of the slide. Make sure the sensor doesn't stick out past the bottom of the slide, or that will interfere with the flange on the magnet post when in operation.
Once the glue sets, the rest of the pot can be assembled. The magnets can be installed in the posts somewhat randomly at this point - you'll use a needle nose pliers to rotate them when installed in the joystick later during final adjustments. If you want to try to get it close, use a compass to find the sides of the magnet. Here's what you'll need to know:
North on the compass points to the side of the magnet that will give a 0V signal from the sensor
South points towards the 5V signal
Twisting the sensor in the pot towards CCW (counter clockwise, as viewed from the top of the pot) should decrease the voltage, so the sensor will move towards North, twisting CW should move the sensor towards the South pole, increasing the voltage.
With magnets installed in the posts, place the post in the base, and then put the slide on top of the base, and install the #2 screw to hold it all together. Check for free, but not sloppy operation, adjust as needed.
Step 5: Joystick Modifications
To remove the pots, firm steady force will get them out if they are held in with the small metal clips. The rudder pot is only held in with the handle assembly itself, and should come out with no issue.
The hall effect sensors require a full 5VDC to operate properly, but the joystick only supplies about 4.2 V to the pots, so we'll need to rewire things a bit. To get enough conneciton points for 5VDC and GND, we need jumpers off the incoming USB connector. Remove the board from the joystick so it can be modified.
For the power header/jumper, I used some old 4 pin connectors from a computer power supply I had laying around. Anything that will give you a minimum of 3 connections for a pin header will work. The wires from the connector were soldered together and to a common wire, one made for 5VDC (red) and GND (black), and heat shrink tubing applied where appropriate. These were soldered onto the bottom of the USB header on the board along with a small 3.3uF capacitor (just in case). I wasn't certain about the need for the cap, but figured it couldn't hurt. Obviously be very careful when soldering to make sure you don't make connections you don't intend.
With the power connection to the board made, this can be reinstalled in the joystick, running the connectors away from the board towards the side of the joystick where the main cable comes in.
Next you will need to remove the glue securing the 3 rudder sensor wires (blue, black, brown) coming out of the upper section. Carefully pull off the glue, and cut as needed to get it free.
From this connector, carefully remove the blue and brown wires from the connector. This can be done by gently prying up on the retaining clip for each pin in the connector. Later you will add extension wires to these pins to make the 5 VDC and GND connections for the sensor.
On the other 2 connectors for the main board, perform the same steps. For the connector going to the 2 pots near the base of the stick (stick tilt), remove the Red and Black wires from the connector. On the connector going to the throttle and side buttons, remove the Red and White wires (trace them back to the throttle to be sure).
Step 6: Make Jumper Wires and Make Power Connections
To connect the power headers to the connectors powering the sensors, I made 3 sets of jumpers. You can use existing breadboard wires if you have them....that's basically all these are.
Each wire was about 6" long - adjust as you see fit. 3 of each color are needed (red and black for 5 VDC and GND). Solder pins from your pin header supply on each end, and heat shrink tube as needed to help hold everything together. Insert the pins into the appropriate connector pins that you freed in the previous step:
Blue - 5 VDC (red jumper, red header)
Brown - GND (black jumper, black header)
Red - 5 VDC (red jumper, red header)
White - GND (black jumper, black header)
Pitch and Yaw (stick tilt):
Red - 5 VDC (red jumper, red header)
Black - GND (black jumper, black header)
Insert the other end of the jumper into the appropriate power header.
Edit May 7 2020 - Please see the Wiring Diagram PDF for additional info.
Step 7: Modify Throttle Housing
One permanent joystick modification - there's a useless piece of plastic sticking off the throttle housing that will get in the way of our new sensors. You'll need to cut it off flush with the rest of the housing.
Before removing the throttle housing, try to mark the relative position of the gear in the housing to the throttle handle on the outside. As you move the throttle, you will see at some point there is a mark on the gear indicating a starting or reference position. When you find that, mark the position of the throttle handle with a marker so that you know about how to align everything when putting it back together. Just make sure to take some time to inspect it before disassembling.
In the pictures you can see where the area is that needs to come off. I just used a hacksaw blade and held it flush to the rest of the edge of the housing and cut off the part that was going to be in the way. With that removed, the pot for the throttle can be installed.
When installing the throttle pot, make sure to reinstall the metal clip that retains the pot in the throttle housing, and make sure the stop. Then align the gear and throttle handle as it was when you took it apart, and screw everything back together.
Step 8: Install and Adjust Pots
After installing the throttle pot, the other 3 will be basically the same. The pots in the base of the stick get the metal retaining clips in the post to help hold them in place, and the top one for the rudder control does not. Connect each sensor to its respective connector. Reminder to possibly use an angle base instead of a straight one on the pot near the left hand buttons so the sensor wires don't interfere with the board - test and verify.
After installing all 4 pots, you will need to adjust the angular sensitivity of each axis as well as the center point. To do this, you will need to power the joystick. If preferred, this can be done by connecting the joystick to any USB charger adapter, as all we really need is power for the sensors. Otherwise, connecting it to your computer should be OK - just be sure not to short the 5VDC to GND for any reason.
These are the targets for adjustment:
Axis centered: 2.3 VDC ± 0.1
Axis voltage low: 0.6 VDC ±0.1 (Pitch axis pulled back towards throttle handle, R-L Axis pushed all the way to the right, handle twist all the way CCW, throttle to full "-" or 0%)
Axis voltage high: 4.0 VDC ±0.1 (Pitch axis pushed forward towards away from throttle handle, R-L Axis pushed all the way to the left, handle twist all the way CW, throttle to full "+" or 100%)
In my testing, these represented approximately the limits where I was able to maximize the sensitivity of the joystick. Taking it all the way to 5 VDC or 0 VDC for the signal did not seem to work....it stopped responding to changing voltage below about 0.4 V, and above about 4.5 V. Further, when I first tested the system with the original pots, 0.5 and 4.3 V were the extremes I observed across all 4 circuits.
Connect a multimeter to the system, with the GND of the meter connected to the GND (Black) power header, and the + terminal of the meter reading the signal of the sensor (it can be read in parallel with any connections to the joystick). Begin with the slide of the pot in the middle of its range. Using a needlenose pliers, gently twist the magnet until the voltage from the sensor is about 2.5 V. Then move the joystick or throttle to one of the stops, and determine if the range of the sensor is too high or too low. If moved to a high voltage position and the reading exceeds 4.3 V, the sensor will need to be moved away from the magnet. If in high voltage and the reading is less than 4.1 V, move the sensor closer to the magnet. Adjust and repeat testing in both directions until the voltage is in range. If one side is in range but the other side goes out of range, the center may need to be adjusted by slightly turning the magnet to shift the centerpoint. The adjustment will be an iterative process, and probably took me about an hour to get all 4 pots adjusted to my satisfaction. Rudder adjustment is the most time consuming, as it requires at least partial reassembly of the handle each time to get a true feel for the adjustment of the pot.
Once adjusted, before reassembling the joystick, I recommend connecting the joystick to the computer and running a calibration. This will confirm that all axis are moving in the direction you intend and that none of them are reversed (with a magnet rotated 180º from where it should be).
Step 9: Final Reassembly and Test
After pot adjustment, double check the functionality of all axes through a calibration of the joystick on your computer, making sure that each movement corresponds to the direction you intend to go.
Once everything is good to go, tape down all of the wires so that they won't move around as you're putting things together.
As you are installing the main cover that has the throttle and buttons board, keep an eye on the wires coming out of the left side pot - on my joystick the wires from this sensor stuck out and interfered with the board, and I had to bend the sensor wires out of the way. As I mentioned in the intro, had I known this would happen I may have used an angle base here instead, though I was able to get it to work as it was.
After final assembly, give it a final calibration and test! Enjoy!
If you have questions about anything, feel free to leave comments and I'll answer them as best I can, or upload additional pictures.