Build Your Own Arcade Controls Forum
Main => Main Forum => Topic started by: Spacedueler on January 08, 2012, 03:26:50 pm
-
I'm working on building my own joystick for 720 degrees. Can anyone who has the original, or remembers using one, tell me one detail. I'll try to word my question the best I can:
As you rotate the joystick around, does the knob have to slip through your grip, or can the knob or shaft spin independent of the spinner mechanism below the cp?
In other words, can you grip the joystick firmly and still rotate around in circles without loosening your grip. Like on old manual roll-up car windows. The knob is on it's own axis, dependent of the crank.
Thanks.
-
The joystick rotates freely, so you never have to loosen your grip on the ball.
-
The joystick rotates freely, so you never have to loosen your grip on the ball.
That makes it a bit tougher to make it like the original, but will make for better gameplay. I'll post progress if it works out.
-
Another question regarding the optical encoder for anyone who may have the original 720 joystick wired to an opti-wiz, opti-pac, or mouse hack and connected to a PC. I'm running Windows XP, but I think anyone who can get their 720 stick moving the mouse cursor could give me their results. I seem to have the game working on my home built joystick (proto-type), I can play, the skateboard centers at the first rotation and stays calibrated. I want to know how exact (or not) my centering disc is working - is it "just" working, or is it functioning as the original.
On mine, as I rotate the joystick around, the mouse cursor moves left and right across the screen. (I simply used a blank Windows desktop for the testing background). Then as the joystick passes 12 o'clock, I get the following results on the Y axis (up and down). There seems to be 2 stages a I pass 12 o'clock in each direction:
(all numbers refer to an o'clock position)
Clockwise rotation:
-to set up the joystick, first rotate to 10, then to 2, then back to 10
-now slowly rotating back to 2, as I approach and pass 12, the cursor on the Y axis (up and down) moves slightly: DOWN-UP-DOWN (stage 1)
-then continuing to rotate clockwise all the way around as I approach and pass 12 the cursor moves slightly: UP-DOWN-UP-DOWN (stage 2)
-then continuing to rotate clockwise, every time I approach and pass 12, the results are the same as the previous: UP-DOWN-UP-DOWN
For counter-clockwise rotations, results are similar, but everything happens in reverse.
Counter-Clockwise rotation:
-to set up the joystick, first rotate to 2, then to 10, then back to 2
-now slowly rotating back to 10, as I approach and pass 12, the cursor on the Y axis (up and down) moves slightly: UP-DOWN-UP (stage 1)
-then continuing to rotate counter-clockwise all the way around as I approach and pass 12 the cursor moves slightly: DOWN-UP-DOWN-UP (stage 2)
-then continuing to rotate counter-clockwise, every time I approach and pass 12, the results are the same as the previous: DOWN-UP-DOWN-UP
I hope to find out if the original produces the same results as what is documented above in red. Please let me know if yours is the same. If it's different can you please document how yours moves and post it. Once I get this right I will be sharing my full build. I wonder how many out there are interested in having a 720 joystick that works like the original.
-
At one time, Id thought about a car-window like solution... but now I realize why Atari didnt do that.
For one, it might have resulted in pinched or smacked fingers, from getting under the lever-arm, or hit by it.
The next problem, is that if someone put their weight on the lever arm... it would have bent the main drive shaft.
Its genius what they came up with. Angling the main shaft, makes it nearly impossible to bend, even at the slanted angle. Its much better supported, and Raised up enough to keep from trapping fingers.
And even if someone used a sledgehammer to bend the joystick shaft.. the main internal drive shaft is actually vertical, connected via a horizontal drive arm.
Without copying Atari's blueprint.. you might still be able to make a crank arm, but you would probably want to put a bearing directly under the gripped handle, vertically, on the end of the swing-arm itself. The bearing would keep the player from bending the shaft, as it rolled along the control panel surface. It would leave marks of course. Might need a removable plexi/felt disc riding-surface, so that theres no wear on the CP itself.. and its easily replaceable.
You can see assembly pics here:
http://jstookey.com/arcade/720/720-pictures.php (http://jstookey.com/arcade/720/720-pictures.php)
-
you might still be able to make a crank arm, but you would probably want to put a bearing directly under the gripped handle, vertically, on the end of the swing-arm itself.
You can see assembly pics here:
http://jstookey.com/arcade/720/720-pictures.php[/ur
(http://jstookey.com/arcade/720/720-pictures.php)
Thanks for that reply and link - I have been visiting jstookey's sight for years on and off. My current proto-type is much like what you said and it does have the bearing. (I have to get out there at take some photos to post.) The way I have it set up now is with the shaft for the knob/handle coming straight up - it does have the bearing underneath. I had an idea to make a whole different design to get the angle on the shaft, but I canceled it since it wouldn't let you keep your grip - didn't have the window crank effect. Thanks to Paul for posting that it has that.
Now I just hope someone can document how the centering disc works and can answer the questions in my post above to get that part exact.
-
Here's what I've come up with so far:
-
I just tested mine, and although it would make sense that you would see some movement in the Y axis as the 2 notches are read, I am not seeing any with mine. My guess is that since the disc is so much larger on the original stick, it is not enough to generate any visible movement. The space between the two notches probably keeps the quadrature encoder from detecting the direction as well. Mine looks just like a spinner when I spin it on the desktop.
-
By looking at the original's encoder discs... it appears that the notches on the calibration discs are spaced one notch apart. And the notches match the spinner encoder notches in size and position.
However, I think the problem is going to be that the smaller encoder disc your using may not be high enough resolution. Maybe if you used some gearing, to make the encoder spin several times more per revolution.
They sell some pretty nice gear sets at stevens international:
http://www2.stevenshobby.com:5641/ (http://www2.stevenshobby.com:5641/)
kit: SVM-MR8
Even then, you may need to modify gears to suit your needs.
(drill larger shaft holes, screw & glue shaft collars on them, etc)
-
Thanks for the replies. I hope the group sticks with me on this one. I think I have a 720 controller that anyone can build. I'd like to get it perfect. I played 720 last night for 2 hours and it seems perfect. I was able to play a real 720 degrees machine yesterday too (great opportunity!!!). I actually think my joystick plays better - though not completely authentic and it would never hold up to the abuse of a public arcade. The one I played had a lot of slop in the joystick - maybe needed a rebuild?.. maybe that's how they are originally?... Mine is really solid and smooth with the duel bearing may shaft set up. I need to find a way to add a tensioner - it spins as freely as my spinners.
I just tested mine, and although it would make sense that you would see some movement in the Y axis as the 2 notches are read, I am not seeing any with mine. My guess is that since the disc is so much larger on the original stick, it is not enough to generate any visible movement. The space between the two notches probably keeps the quadrature encoder from detecting the direction as well. Mine looks just like a spinner when I spin it on the desktop.
Paul, What is your mouse sensitivity set at in Windows control panel? Mine was set about halfway across the slider (quite sensitive on the desktop). I adjusted it all the way down - after which I got no Y axis cursor movement on the desktop. In my 720 analog settings I increased Y to 150 and the game runs fine. Would you re-run your test for me with your mouse sensitivity set halfway to max like mine was? If our 720's are calibrating, then the Y axis is register pulse, but we can't see them on the desktop. If you'd run that test again, maybe you to could force some movement out of your joystick's Y axis. Maybe there is a utility out there that captures and displays mouse "pulses...."
Paul - One last thing... What is your configuration? Original 720 joystick > ?what interface? > what operating system? Thanks.
-
maybe off topic but i cant get 720 to run in mame any help is appreciated ;D
-
maybe off topic but i cant get 720 to run in mame any help is appreciated ;D
hope I'm not being rude to ask this thread remain focus specifically on the joystick technical issues. I'll help you were I can but please ask in a new thread for 720 general questions. Thanks!!!
-
By looking at the original's encoder discs... it appears that the notches on the calibration discs are spaced one notch apart. And the notches match the spinner encoder notches in size and position.
However, I think the problem is going to be that the smaller encoder disc your using may not be high enough resolution. Maybe if you used some gearing, to make the encoder spin several times more per revolution.
Let's call them "notches" (the blank space/cut-out) and "teeth" (the divider between the notches) I used these 2 photos:
(http://www.ram-controls.com/images/720CenteringDisc.jpg)
(http://www.ram-controls.com/images/720EncoderDisc.jpg)
Printed them, overlapped them and held them up to a bright light. The big notch on the Centering Disc equals one "notch" and 2 "teeth" on the encoder disc. That is how I cut my Centering Disc.
The skater in 720 only has 16 "steps" in his 360 degree rotation - so I thought maybe a high resolution encoder disc isn't necessary. I used a standard trackball encoder disc - 24 "notches" - I can use mame to accelerate... I did some simple math on the encoder disc (X axis):
72 (original) / 24 (mine) =3
My encoder will have to be accelerated 3x the original. I did this in mame - 720's analog controls: X sensitivity = 150
With these settings, my joystick will rotate the skater perfectly 1:1 8)
I believe the notches in my disc are similar to the notches in the original disc - they each create the same digital pulses per notch. Now the challenge is to get my centering disc to "center" the skater at the correct timing. I stated earlier that I can play the game correctly - for hours - but in theory my joystick will be "centering" early:
Original disc = 2 digital pulses per notch
My trackball disc = 6 pulses per notch (due to the 3x acceleration provided by mame)
Therefore on the original, the first centering notch (Y axis) reaches 12 o'clock one notch before the encoder disc (X axis) = 2 pulses ahead
However on mine, the first centering notch (Y axis) reaches 12 o'clock one notch before the encoder disc (X axis) = 6 pulses ahead
This is why I'm want Paul Olson to re-test his joystick. If I can first match my results with his (or anyone who has the original joystick) then I can experiment with changes to my centering disc and hopefully find the exact match. In the mean time I'm having a blast playing 720!!
-
I tried adjusting the mouse speed in the control panel, but I still didn't see any movement on the vertical axis.
I have an original controller hooked to an Optipac. I use the Real setting for the controller in the tab menu.
Edit: I am using Windows 7 64bit
-
I tried adjusting the mouse speed in the control panel, but I still didn't see any movement on the vertical axis.
I have an original controller hooked to an Optipac. I use the Real setting for the controller in the tab menu.
Thanks for doing that. That is interesting. When you start 720, does your skater calibrate on the first rotation of the joystick? (skater jumps to 12 o'clock as the handle reaches 12 o'clock) - I think that is how the original game works - it's how mine works. If yours does, then your system is receiving data on the Y axis - I wonder why it won't register as movement for you??
-
OK. so I spent a bit of time investigating how the 720's centering disc works in mame. I used two arcade spinners, one on mouse X, the other on mouse Y. With separate control of the X and Y inputs I was able to control the "skater" and observe how he reacted to many different move combinations. I set the Driver Configuration in 720 Degrees to "REAL". I'm using mame 0.144, Win XP.
In 720 Degrees - the game does not "care" which direction the centering disc (Y axis) is spinning as it passes through the optic sensors (12 o'clock position). When the slots in the centering disc pass through the optic sensors and produce "pulses," the skater will move:
-At game start, during the first rotation of the joystick, at the moment of the first pulse on the Y axis, the skater jumps to 12 o'clock, calibrating with the joystick.
-At any pulse after the first calibration, if the skater is between 12 and 3 o'clock (after 12, before 3), the skater will move slightly counterclockwise (it didn't matter if I moved the Y spinner clockwise or counterclockwise- either way the skater moved slightly counterclockwise)
-At any pulse after the first calibration, if the skater is between 3 and 12 o'clock (after 3, before 12), the skater will move slightly clockwise (it didn't matter if I moved the Y spinner clockwise or counterclockwise- either way the skater moved slightly clockwise).
I then did one more test. With my homebuilt 720 joystick connected and my spinner (on the X axis) I purposely put the skater out of calibration: during game play I rotate the spinner to move the skater 180 degrees, putting him half a rotation behind the joystick. Then I rotated the joystick back and forth from 10 to 2 o'clock several times (10 to 20 times). Slowly the skater came back toward 12 o'clock as I moved back and for, and eventually was recalibrated with the joystick handle.
After all that testing I enjoyed playing for another hour - my 720 joystick works great!
-
Thanks for posting your progress and findings on this. I may have a crack at doing this myself.
I recall seeing that there was a company out there (I don't recall the name off hand) who where re-manufacturing these controllers, but this looks like a perfectly acceptable and cheaper solution.
-
Since you designed the stick shaft to be a separate entity, I would definitely make the knob turnable. Even in the original design, it wasn't turnable, and I hated it.
In all, though, kudos for fabbing a workable, and not shabby-looking piece of kit.
-
Since you designed the stick shaft to be a separate entity, I would definitely make the knob turnable. Even in the original design, it wasn't turnable, and I hated it.
In all, though, kudos for fabbing a workable, and not shabby-looking piece of kit.
The actually does spin in mine. There are bearings pressed into the round piece of wood that the shaft is connected to. Odd you say the original wasn't turnable - I just played and original and it did turn, and as Paul posted above, "you never have to loosen your grip."
I have more photos of the build process, but I'm actually going to make a new one with some changes so I'm holding off posting a step-by-step...
-
I remember it not turning. Maybe they altered the design after a short time, because of reports of it not being cool enough. Maybe the angle of the stick meant the knob spinning didn't matter. I dunno, now.
-
Nice work Spacedueler. :applaud:
I've been trying to find a nice 720 joystick for years, and this one looks and sounds awesome.
I'm eagerly awaiting to hear your next update.
-
Nice work Spacedueler. :applaud:
I've been trying to find a nice 720 joystick for years, and this one looks and sounds awesome.
I'm eagerly awaiting to hear your next update.
Unfortunately I got buried with other projects so this one has been sitting still for a bit. My current 720 joystick has been working great. I plan on making a whole new one that should work even better - drew some sketches - that's as far as I got. I will do it when I free up some time and I'll call it version 2 and post a step by step.
I was planning on doing a detailed step by step on this one but just didn't get it done. I had uploaded a lot of photos. To help a little I just added some notes to the photos. They are over at Atariage.com - you'll need and account to view the album - here's the link:
http://www.atariage.com/forums/gallery/album/745-720-degrees-joystick/ (http://www.atariage.com/forums/gallery/album/745-720-degrees-joystick/)
I was planning on posting the step by step over there - you can post like 20+ photos in one post at atariage...
-
One thing that you are missing is the angle on the stick.
Something that would make this project a lost stronger is changing the material of the top plate to delrin (very easy to work with) and place a thrust bearing underneath the rotating portion.
http://www.allelectronics.com/make-a-store/item/BR-9/3-THRUST-BEARING//1.html (http://www.allelectronics.com/make-a-store/item/BR-9/3-THRUST-BEARING//1.html)
Just for reference, in case you hadn't see the page of parts:
http://ram-controls.com/order-720.html (http://ram-controls.com/order-720.html)
I did see somewhere a complete teardown and rebuild of a 720 controller. I don't remember where though.
-
Yeah, I know how that goes. Between family, work and my other various projects it's difficult to get anything done.
I'm just really glad you're working on this project. If it works really well, I'd like to make a dedicated cabinet just for 720.
Thanks again for your hard work.
-
One thing that you are missing is the angle on the stick.
I know. I have sketches of how to incorporate the angle in the next version, but it adds more over all depth to the joy-spinner (yes I'm attempting to coin a new name for the 720 Degrees "joystick" which is really a spinner with a joystick-like handle). The truth is I've recently played a real 720 machine and I think the straight design plays better imho.
Something that would make this project a lost stronger is changing the material of the top plate to delrin (very easy to work with) and place a thrust bearing underneath the rotating portion.
http://www.allelectronics.com/make-a-store/item/BR-9/3-THRUST-BEARING//1.html (http://www.allelectronics.com/make-a-store/item/BR-9/3-THRUST-BEARING//1.html)
I like the specs on the Delrin - a bit pricey though. I think the thrust bearing will get incorporated for sure. I'll need access to a lathe to cut a groove into the "crank disc" to secure it in place, and the mdf will need a sheet metal skin for wear. As far as strength goes, I don't see myself or current family/friend players breaking anything, since we know it's not build for an arcade floor model...
-
just so you know, companies will be more than happy to send you samples of delrin if you ask.
I wonder if the angled stick was to slow the player down, and cause them to have to put more motion into the game....
I have a lathe if you need some work done and don't mine paying for shipping.
-
wonder if the angled stick was to slow the player down
A fast moving crank probably caused some initial hand injuries. Let go / slip off the handle... and the thing slams into your wrist at mach 9.
It probably also made the circle diameter wider, without having issues with a very large spinning disc on the control panel.
But your also right, in that it probably made the player have to really work to made the skateboard spin... rather than simply spinning the controller hard and letting go.
The chain also played a role in this.. adding friction. The chain also prevented the controller from slipping/moving when you let it go.
-
A fast moving crank probably caused some initial hand injuries. Let go / slip off the handle... and the thing slams into your wrist at mach 9.
It probably also made the circle diameter wider, without having issues with a very large spinning disc on the control panel.
But your also right, in that it probably made the player have to really work to made the skateboard spin... rather than simply spinning the controller hard and letting go.
You can still use a spinner (or mouse) in older MAME. Spins are kind of hard, I think, because you have to let go and catch it. I usually end up bailing, versus using a stick (even a digital one) I have more control.
I think the design here thought is right in the middle. I bet it works awesome.
-
Hi Spacedueler,
It's been a few months and figured I'd check in to see if this project is still alive. :)
I would love to see it come to fruition.
-
I don't quite get what was the problem or question. It seems everything worked for him from the start and then ended up working even better than the original.
Anyway, if anyone is building this or wants to test original 720 controller then simply disable calibration input. Character rotation should still follow stick orientation exactly. Calibration is there only for rare occasions to help it keep calibrated due to stress, dust and random errors, but normally it is not really necessary. You want to disable it for testing because it may hide errors in case you have problems with reading the main disk.
To perform calibration without working or enabled calibration input at the beginning of the game point the stick towards 3 o'clock and then start the game while holding the stick there. Once the game boots it will be calibrated because character's starting orientation is towards the east.
-
then simply disable calibration input
BULL.
Calibration IS needed to make the character line up with the direction of the controller.
The game has No idea which way the controller is facing, because there is no start or end point on a circular encoder disc.
Thats exactly why the games designers had to add a calibration disc.
Once the controller has passed the calibration disc's notch, it aligns the on-screen character to face in the correct direction, and from that point on.. shouldnt get de-calibrated... (unless some odd thing like dust or a broken spoke on the encoder wheel)
However, on a home built controller.. if the resolution of the encoder isnt the same, and or the analog settings do not match... then the character will eventually get out of alignment. Which is why calibration would always be needed, even IF you got the game to match on game start without the calibration disc.
-
Calibration IS needed to make the character line up with the direction of the controller.
When? I am talking about TESTING and checking main wheel input.
...and from that point on.. shouldnt get de-calibrated... (unless some odd thing like dust or a broken spoke on the encoder wheel)
That's what I said. What you still don't know is already in the last paragraph of my 1st post.
The game has No idea which way the controller is facing, because there is no start or end point on a circular encoder disc.
In the last paragraph of my 1st post I said: To perform calibration without working or enabled calibration input at the beginning of the game point the stick towards 3 o'clock and then start the game while holding the stick there. Once the game boots it will be calibrated because character's starting orientation is towards the east. Do you understand? Try it out and you will see.
However, on a home built controller.. if the resolution of the encoder isnt the same, and or the analog settings do not match... then the character will eventually get out of alignment. Which is why calibration would always be needed, even IF you got the game to match on game start without the calibration disc.
No. That's exactly why you disable calibration input for testing, so you can set sensitivity and exactly match rotation of the main disc 1:1 with character's orientation. Then you enable it back again so it can get re-calibrated during the play, if it gets de-calibrated at all.
-
Clockwise rotation:
-to set up the joystick, first rotate to 10, then to 2, then back to 10
-now slowly rotating back to 2, as I approach and pass 12, the cursor on the Y axis (up and down) moves slightly: DOWN-UP-DOWN (stage 1)
-then continuing to rotate clockwise all the way around as I approach and pass 12 the cursor moves slightly: UP-DOWN-UP-DOWN (stage 2)
-then continuing to rotate clockwise, every time I approach and pass 12, the results are the same as the previous: UP-DOWN-UP-DOWN
For counter-clockwise rotations, results are similar, but everything happens in reverse.
Counter-Clockwise rotation:
-to set up the joystick, first rotate to 2, then to 10, then back to 2
-now slowly rotating back to 10, as I approach and pass 12, the cursor on the Y axis (up and down) moves slightly: UP-DOWN-UP (stage 1)
-then continuing to rotate counter-clockwise all the way around as I approach and pass 12 the cursor moves slightly: DOWN-UP-DOWN-UP (stage 2)
-then continuing to rotate counter-clockwise, every time I approach and pass 12, the results are the same as the previous: DOWN-UP-DOWN-UP
I hope to find out if the original produces the same results as what is documented above in red. Please let me know if yours is the same. If it's different can you please document how yours moves and post it. Once I get this right I will be sharing my full build. I wonder how many out there are interested in having a 720 joystick that works like the original.
It does not matter, as you know since it's working. The reason why it doesn't matter is because calibration input is not "relative" like main disc input, but works more like a simple on/off switch such as buttons. That means you could actually wire it to a button and thus make it cheaper and simpler design. In theory you could use plain spinner and just put some handle on top of it near the edge.
_| |_________
|..................|
Then you map calibration input to some button and after the game starts you would point the stick to the north and the first press to that 'calibration button' would set character's orientation directly to face the north as well - "instant calibration". So the first ON signal to calibration input after game starts does "full jump" to 12 o'clock, and after that the game should stay calibrated.
Of course you could still calibrate it by starting the game with stick facing 3 o'clock as I already pointed out. In any case if it gets de-calibrated then move stick again to 12 o'clock and keep pressing 'calibration button' until the character aligns, as after the first time each press would yield only small correction steps toward the north, instead of instant jump. With well made "spin-joy", as you call it, you should be able to play a long time before the stick get desynchronized without using any calibration disc, and since then you would use rarely 'calibration button' you might as well map it to START button in MAME, or something like that.
I too would like to know more details about the construction, like list of materials and tools, more close-up photos or some blueprint, stuff like that, and if you managed to improve anything in the meantime, so whenever you're ready...
-
(http://desmond.imageshack.us/Himg833/scaled.php?server=833&filename=spin1eo.jpg&res=landing)
Spinner with a dot.
I don't have any spinners, but if someone could check out if indeed sensitivity can be set so the dot always points the same way as player and if it does not get de-calibrated very easy, then I'll buy one and maybe something like this would be good enough to play the game:
(http://desmond.imageshack.us/Himg20/scaled.php?server=20&filename=spin2p.jpg&res=landing)
(http://desmond.imageshack.us/Himg692/scaled.php?server=692&filename=spin3i.jpg&res=landing)
(http://desmond.imageshack.us/Himg268/scaled.php?server=268&filename=spin4.jpg&res=landing)