PDA

View Full Version : Hall effect sensor conversion and 'throttle' with BU0836



julian265
18th December 2007, 09:39 AM
This should be applicable to most of the non FFB CH sticks - I *think* their internals are all the same. (But I'm no CH expert - this is the only CH product I have, and it's over 10 years old IIRC)

This mod was done on an old mac ADB (not usb) flightstick pro, hence the use of Leo Bodnar's USB interface card. Cost of hall sensor parts was under AU$30. It should be possible to convert the pots to hall effect sensors as I did, and use the original CH circuitry.

I made a PDF of the pot to hall effect sensor conversion process - get it here:
http://www.members.optusnet.com.au/julian265/il2/pot_guide.pdf

(please tell me if the hosting is bad, or if the pdf appears weird!)

In a nutshell - the original pots can be converted to hall effect sensors: (read the pdf for details)
http://www.members.optusnet.com.au/julian265/il2/DSCN2662.jpg

http://www.members.optusnet.com.au/julian265/il2/DSCN2666.jpg

I initially looked into diametrically magnetised rings, to be mounted inside the pot housing, however the seem to be hard to find.

The conversion is based around Leo Bodnar's BU0836 USB interface, ( http://www.lbodnar.dsl.pipex.com/joystick/ ) 3503 hall effect sensors, neodymium (aka rare earth) magnets, and modified pots of the flightstick.

I haven't made rudder pedals yet, so for the moment I'm stuck using the logitech, as the flightstick pro doesn't twist.

However, on an initial flight w/o rudder, it seemed pretty damn good!

Because the BU0836 has 8 analog and 36 digital inputs, it's perfect for interfacing with multiple devices. I previously used a usb to gameport converter for this throttle box (tm), but the circuit needed a housing, and it's simply better than the gameport interface:

http://www.members.optusnet.com.au/julian265/il2/DSCN2672.jpg

http://www.members.optusnet.com.au/julian265/il2/DSCN2673.jpg

I'll do a more complete write up once the pedals are done and it's all in use. But for now, the pdf describes the hall effect hardware conversion fully.

julian265
11th January 2008, 09:32 AM
Suggested wiring for the FS pro. Just use more rows and columns for sticks with more buttons.

http://www.members.optusnet.com.au/julian265/il2/wiring.jpg

snomhf
11th January 2008, 04:03 PM
Very interesting Julian. Thank you for taking the time to put all this documentation together.

Have you found it that beneficial to go with hall sensors over the CH pots given the amount of work involved or is it just the novelty of it? It's not like you're reducing the moving parts or anything.

julian265
11th January 2008, 11:54 PM
Here's what I've been kicking myself about: After I pulled the FS pro from the attic, I never tested it before modding it! However I had my reasons to just plunge in...

I was using a logitech extreme 3d pro, since ADB was dropped from macs, and I got a faster windows machine. The logitech produced a jagged, somewhat spiky response, and small attitude adjustments in IL2 were difficult. I played with the deadzone, filtering, and response curves, however I couldn't make it 'nice'.

I had also read many accounts of bad pots from other people, using all brands. They wear out (especially around center), and they are sensitive to dust, or sometimes a lack of grease.

So I was biased against pots, and my FS pro was quite old and had a fair bit of use, so I didn't bother testing it first.

However, the output of the new setup is smooth, and has a natural-feeling sensitivity curve. I use no deadzone and no filtering, as the stick doesn't need it. In the week I changed it, my IL2 gun accuracy often passed 10% (online), and I could hold my gunsight on individual tanks or an aircraft in a head-on attack.

The hall sensors do not wear out - and the hardware in the converted pots looks like it'll outlast the plastic gimbals.

It really wasn't that much work - having made the first sensor, and discovered what to do, the second took under one hour.

I'd say the BU0836 has had a fair bit to do with how much I like this stick - it has a 10 bit ADC. In practice, I get 680 steps on my X and Y axes, due to my HE sensors outputting between 1 and 4.3 V.

snomhf
12th January 2008, 07:45 AM
Sounds good. I was just concerned about that whole assembly moving back and forth like that. It seems like with the wires moving back and forth too that it would get out of adjustment after a while. No?

Anyway, they do make hall sensor pots that are fully enclosed. That seems like a better way to go unless the cost is prohibitive. I haven't check prices on them.

I really do appreciate the work you put in documenting this. I've been interested in hall sensors for a while and would love to try them.

-mark

julian265
12th January 2008, 07:59 AM
No worries!

I did find a few pre-made candidates, however most were not for individual purchase, and the price of one was more than AU$70... Which was the only price I found. I figured the write-up might enable some people to either extend the life of a stick, or get hall effects, who would otherwise not afford it.

I can assure you that there is NO slack at all in the magnet's movement. I 'pre-tensioned' the wire so it's tight on the shaft, and it also has one end tight in the plastic, stopping it from slipping. There is minimal friction between the magnet and hall sensor (or none if they don't touch), so nothing will get bent either.

snomhf
12th January 2008, 06:16 PM
I'm definitely going to have to try this.

A few months ago, Bob Church was helping me try and figure out how to get more stick travel out of the Logitech circuit I use in the Frankenforce. I never really got that to work very well. With your hall sensor design, I can simply move the sensor out some on the radius and increase the travel of the "pot." This design really has promise in that regard. The stability of the hall sensor technology is a great side benefit as well. One of those "win-win" sort of things.

Thank you!!

julian265
13th January 2008, 01:40 AM
I just read your frankenforce write up - that's some impressive stuff!

Some stuff which you've probably already thought about, but I thought I'd make sure:

Bear in mind that the HE devices as I made them give a non-linear output. It probably corresponds to starting the sensitivity factor at 10-20%, and increasing it smoothly from there (which happened to be my preference anyway).

You also need to be able to calibrate the 'pots' in the logitech software - my HE sensor (3503) only goes from 1 to 4.3 V. I hear the honeywell ones are better, but I have no experience with them. So the software has to cope with less than a 0-5V range. You can easily center the output at 2.5V though.

Finally, I'm not sure if your FX case is any taller than the FS pro case of mine, but the allowable travel of my magnets (and magnet size) was restricted by it. I wanted to use the largest diameter magnet possible, with travel such that the HE sensor reached the edges of the magnet, and thus its output voltage range was maximised. A 15 mm diameter magnet was all I could fit, with about 7mm of travel in either direction. The radius of magnet movement can be adjusted until the stick movement extents correspond with the output voltage extents.

snomhf
26th January 2008, 05:31 PM
Ok, finally got a chance to do some experimenting with these HE devices.

I bought some Allegro A1321 ratiometric linear HEs and an assortment of rare earth magnets. I've not built any sort of housing or anything. I've just been running the HE across the magnets and watching the axis movement in Game Controllers as well as monitoring the output with a volt meter.

Here are my findings:

1. From all I've read, you should position the HE so that the flat face of it faces the magnet rather than the top of it as you have done with yours (Julian). I found that I was only able to get about half the movement when I did it that way. So, I oriented the HE so that the top of the device faces the magnet just as you did and it works great that way. Interesting. I'm supposing you experimented with that too and arrived at the same conclusion.

2. I was able to get voltages ranging from 0v up to 4.89v. With a pot, I can get the full range of 0-5v. I was very pleased that I was able to get the voltage to go all the way to zero without moving off the surface of the magnet. No matter what I did however, I could not get the voltage above 4.89v. The movement is very linear and smooth.

3. I tried four different magnets. Three round ones and one square one ranging from 1/2", 3/4", to 1". They all worked great with the larger magnet giving me the most travel as expected. The square magnet seems like the best choice as it might be a little more compact.

Conclusion.
These things work really well and are quite simple to work with. Certainly, because the HE never touches the magnet, wear is not an issue even though there is mechanical movement sweeping the HE back and forth across the magnet. That mechanism could of course fail if not done well. You are by no means eliminating mechnical movement when using HEs.

The biggest problem I see with HEs (but not really that big a deal) is the apparent inability to get the full 0-5v range out of these things. An 8-bit A/D converter (such as what's used in CH gear, Logitech, etc) produces 256 points of resolution with voltages of 0-5. Since my HE only gets me to 4.89 volts, that works out to 250 points of resolution. I doubt you would ever notice the lost five points of res however. On the other hand, if you use Leo's BU0836, resolution is not as much of an issue because he uses a 10-bit A/D converter.

The bottom line (for me) is the HE just does not offer any advantages at all over the pot. It fails to deliver the full 256 points of resolution that the pot does. It takes up more space physically in the housing and makes me have to rig up linkage to get it to work.

I personally think pots get an unfair repetation due to how poorly they worked in Gameport controllers. Things are very different with USB. Pots are much "cleaner" with USB circuits than with Gameport. Pots were current sensitive in Gameport but voltage sensitive in USB. That means that changes in resistance had much greater effect on pots in a Gameport circuit causing spikes to occur even though the connections were sound. This sort of behavior does not occur nearly as much with USB. In my experience, the only time you get spiking, etc. with USB controllers is if the connectors are loose or the solder post rivets aren't tight. Honestly, I have yet to have found a pot that truly is bad. Yes, there is wear inside as the sweeper moves across the carbon surface but that takes years. These things are cheap, just replace them when they get old like that.

This has certainly been a fun experiment and I may find a good application for the HE but I still think the good ole pot is still king. IMHO of course. :D

julian265
27th January 2008, 11:25 PM
Firstly - I take it you supplied that sensor with 5V? I suggest you supply it with 5.1 or 5.2 V to get your full 5V output. The current draw is low, so you can use a resistor based voltage divider to do it. There will always be a slight drop in voltage across the transistor (or whatever it is!) in these, so it can't pass through the full input voltage.

Thanks for the tip on the A1321! I'll buy some of them. (my sensors only output 1-4.3V)
Remember that devices such as the BU0836, and many joysticks will calibrate. Meaning that you do get the full range of game input movement, without the full voltage range. The chip would call 4.89V as full travel for that axis, in your case.

snomhf
28th January 2008, 01:17 AM
Hi Julian,
Thanks for the response.

Using a higher voltage is not practical as I am simply using the Logitech joystick circuit which only provides me with 5 volts. I wouldn't want to try and fool with that. I actually think getting 0-4.89v out of this HE is pretty darn remarkable anyway. Your 1-4.3v is far closer to what I expected. Still, at 4.89v, that gives me 0-250 which is so good, you'd never be able to notice 5 points.

As for the BU0836, Leo uses a 10-bit A/D converter in that thing which gives him 1024 points of resolution to work with. That is very much over-kill for a game controller. CH (as most all joysticks) uses an 8-bit A/D which, IMHO, is all you really need. Even with your shortened voltage range (1-4.3), you're still getting 675 points of resolution (if I did my math right) which is WAY more than you would ever need for a joystick. In fact, because you are using the BU0836, an HE makes much more sense than if you were using a commercial stick like CH, Logitech, or Saitek which all have 8 bits of resolution.

I have never purchased a controller from Leo. I probably will as he really deserves the business and it is a great product from everything I've read. Having a controller with 10-bits of resolution could potentially be very useful for something like elevator trim where you want a lot of sensitivity and pot travel. That's a definite project that I want to pursue one of these fine rainy days.

Good dialogue. Thanks again for the wonderful advice.

-mark

WildWillie
29th January 2008, 07:20 PM
Bought the latest 12bit controller from Leo in December. They are perfect for high resolution work. I used it to create a trim box which use 10 turn pots for Elevator, Rudder, and Aileron trim. Also have a single turn pot for prop pitch.

Leo's has a great product, but he doesn't seem to respond very quickly with emails.

WildWillie

neverig
25th September 2008, 03:17 AM
Hi!

I would like to convert the pots to hall effect sensors in my CH stick+throttle.
The following link is not working:
http://www.members.optusnet.com.au/julian265/il2/pot_guide.pdf

Could somebody email me this pot_guide.pdf file?

Thanks

Gabor Neveri
neverig at freemail.hu

julian265
1st October 2008, 07:00 AM
Email sent! I had removed the old guide to make room for the new.

Here's another simple method of HE sensing - now with linear output, and easily adjustable sensitivity.

http://www.jpfiles.com/hardware/uni_stick.pdf