Improving your flight sim experience with Hall effect sensors

hall-effect-controls

[Gene Buckle] built himself a nice custom cockpit for playing Flight Simulator, but during use he found that the gimbal he constructed for the pitch and roll controls was nearly unusable. He narrowed the problem down to the potentiometers he used to read the angle of the controls, so he set off to find a suitable and more stable replacement.

He figured that Hall effect sensors would be perfect for the job, so he picked up a pair of Allegro 1302 sensors and began fabricating his new control inputs. He mounted a small section of a pen into a bearing to use as an input shaft, attaching a small neodymium magnet to either side. Since he wanted to use these as a drop-in replacement for the pots, he had to fabricate a set of control arms to fit on the pen segments before installing them into his cockpit.

Once everything was set, he fired up his computer and started the Windows joystick calibration tool. His potentiometer-based controls used to show a constant jitter of +/- 200-400 at center, but now the utility displays a steady “0”. We consider that a pretty good result!

[Thanks, Keith]

Comments

  1. Tim says:

    It sounds like maybe he had a bad case of electrical noise… All video game controllers commonly use pots without issue.

    Still, pots do suck pretty hard compared to this or an encoder, so huzzah.

    • Peter says:

      The thing about pots, is that eventually, being mechanical, they wear. It starts at the point where they’re used the most: around the zero position. A better quality pot will take longer, perhaps, but eventually, the wear (and associated noise) will happen.

      This solution isn’t just a replacement, it’s an improvement. Not a chance of wear. Ever.

  2. nate says:

    Very nice! I have a USB flight yoke with the same problem, and I’ve been considering my options. I was thinking about adding a filter and/or a Schmitt trigger circuit, but if I could just replace a pot with a better sensor like he’s done here, that would be ideal!

    • andres ortiz says:

      how would a schmitt trigger help?

      • nate says:

        My thinking was that I would use them to set a certain threshold near the center to keep the signal locked at that level, effectively making it “snap” to center when it’s within that threshold. The hysteresis could be useful, but maybe it would be better to use a couple of simple comparators instead.

      • Hang says:

        i don’t know why i can’t directly reply to nate’s reply. anywho.

        The controller software should have a deadzone setting, and seem to me thatit would do exactly what you want to accomplish with a Schmidt trigger?

      • andres ortiz says:

        ahh, neat idea

      • nate says:

        Hang:

        You were right! When I purchased the controller a few years ago, I didn’t find any deadzone settings in the software. But I just downloaded the newest version and had a look, and there was a configurable deadzone for each axis (along with other nice features, such as gain curves)!

        So it looks like I won’t be doing any modifications after all. I would consider replacing the pots with sensors like Gene, but now that I have pulled the controller out of the closet, I remember that the yoke is somewhat mechanically imprecise, so it really wouldn’t do much good. Oh well.

  3. mike says:

    looks like you meant to link http://www.simpits.org/geneb/?p=299

    the existing link i think is a search, so things may drift off the page in-future (its already up to 109 results!)

  4. Frank says:

    Finally someone invents a quality joystick sensor. I think we can all agree that low quality pots are a pain in the rear.

    I would have used a fine rotary encoder but this seems cooler and easier to implement.

    • Panq says:

      You could probably do it optically with parts from a dirt-cheap mouse. Would require some clever coding to change it from relative to absolute positioning, but could be very simple mechanically.

      • Dax says:

        If you did it optically, you’d use a LED and a phototransistor or an LDR, and a strip of paper with variable density black dots printed on it. Basically a reflectivity sensor.

        That way it can be entirely analog.

      • With power-on autozeroing and a button to zero in the current position it could be perfect. Just start counting pulses from the zero position.

      • Panq says:

        Yes, you could use optical encoders, but using the camera from an optical mouse would mean almost nothing mechanical, and doing it in 2D means not having to do anything to separate the two axes (three if you can do rotation of the stick, too). All you’d need is the joystick with some easily processable pattern on the bottom, essentially making it a 2D (again, 3D if you can do rotation) rotary encoder. Theoretically, this should be doable with extremely cheap, existing technology – all that would need to be different from an extremely cheap mouse is having the switches on longer wires, more cheap injection-moulded plastic, a spring, and different firmware.

    • gman says:

      didn’t the n64 use a couple rotary encoder on it’s stick instaead of pots?

  5. Rohit Mahajan says:

    http://www.mycockpit.org/forums/showthread.php/22267-Dead-simple-hall-effect-pot-replacement

    It’s the same fellow I think, but with more pictures! Better detail. Sometimes a simple solution just works.

  6. mess_maker says:

    Hall effect sensors have been used in flight simming for a long time… they were usually an aftermarket upgrade to existing hardware, thankfully, though, some of the new HOTAS controllers are coming with them already installed.

    Great post, btw :)

    • mess_maker says:

      Oh, and HOTAS stands for Hands On Throttle And Stick… a common flight controller configuration in aircraft.

    • Tomasito says:

      Exactly, many people (including me) does this to their flight rig, because hall effect sensors are much more reliable and precise than pots.
      When you train yourself to fly a real airplane it’s not the same to use a crappy joystick with a huge dead center, and noise beause of wear or dirt. If it’s only for entertainment i guess its ok to use pots.

      The good news are that this can be done to cheap joysticks without too much hassle in most cases.

  7. Phil says:

    You should take a look at this Melexis sensor, looks pretty nifty.
    http://www.melexis.com/Hall-Effect-Sensor-ICs/Triaxis%C2%AE-Hall-ICs/MLX90333-648.aspx

  8. Peter B says:

    Mike’s Flight Deck has some info on DIY Linear Variable Differential Transformers:

    http://www.mikesflightdeck.com/lvdts/lvdts.html

    a good site if you’re building a simpit.

  9. geneb says:

    It blows my mind that not only did I make HaD, but I did it _twice_ in 7 days (or so).

    BTW, the day the entry was posted, I had successful lung cancer surgery. \o/

    g.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s