What's new

Interest Check: Repo Restrictor disc for Gundam Stick Monkey Ball joysticks…

My original Monkey Ball stick gives these readings:

monkey_ball_calibration.jpg


Pots are Tocos RA25Y 20FB5K and amp is OEM.
 
Thanks @nem. Your readings are quite different (greater range) to the gundam stick / 2k resistor / op amp combo.

Left: 63
Right: 211
Push: 79
Pull: 207

Travel between axis:
Left & Right: 148
Push & Pull: 128

The game feels fine, but I don’t have the OG to compare to. I wonder if the variance alters gameplay much or the game adjusts based on the values seen in calibration?

Or do I need to change the value of the resistors and install new pots?
 
Last edited:
IMG_2764.jpeg

My readings, Gundam Stick, no Op Amp, no resistors but with a 3D printed restrictor based on nems measurements.

Feels good. Played a lot on a friends original and dont feel any difference. Plays great with this setup. Managed a flawless clear which gives you the 3 extra stages on normal for the first time.
 
^ closer to @nem's readings.

Thinking the value differences now are due to the resistors installed? Paging @Lemony Vengeance for some info on the science and possibly his readings...
I installed the restor values that XeD suggested in the gundam stick thread, they have been deemed “pretty darn close” to the legit values when used with the AMP PCB.
 
I installed the restor values that XeD suggested in the gundam stick thread, they have been deemed “pretty darn close” to the legit values when used with the AMP PCB.
Easy. Can you post up you calibration screen. The values @FrAshi and I are seeing are a bit different?

I’m wondering if those resistor values took into account the Gundam restrictor and now with this repro installed, the resistor needs changing?
 
Original:

@nem:
Left & Right: 148
Push & Pull: 128

@MickyMac
Left & Right: 122
Push & Pull: 134

Gundam Stick, no Op Amp, no resistors but + 3D printed restrictor:

@nnap:
Left & Right: 126
Push & Pull: 169

Gundam Stick, Op Amp, 2k Resistors + new restrictor:

@FrAshi
Left & Right: 81
Push & Pull: 96

@djsheep
Left & Right: 82
Push & Pull: 88

About a 30% decreased range when compared to original. Once again, unsure if this makes a massive difference or if the game takes care of the calibration when op amp is present.

Any readings from people with the Gundam/Op Amp/Resistor/Restrictor combo welcome.

Thread for reference: https://www.arcade-projects.com/thr...nkeyball-banana-and-harness.19145/post-301857
 
ELI5 pls?
I hope you're a smart 5 year old 😂

Some Background: How does this all work (maybe you know most of this but lets get on the same page)
The pots used are linear. This means that if you were to create a graph of the physical position of the stick and the resistance it's providing it would be a straight line. so it looks like this:
linear_pot_plot.png


Each pot is actually acts like 2 resistors. imagine their wired in series and share the center pin. Their values are always a fraction that adds up to a total value of the pot
inside-potentiometer.png

so if you measure the resistance on the outer pins it will be the value of the pot (1K ohm, 5kohm etc.) and will never change based on the pot's position. but if you measure between the left and middle pins that's the value of the "first" resistor, and between the middle and right pins is the value of the "second" resistor. and those values will change with the pot position but always add up to the total.
So if you turn it all the way left the left resistor will be near 0 and the right resistor will be near the pot value, and if you turn it all the way to the right the left resistor will be near the pot value and the right resistor will be near 0. and if you set it in the middle each resistor value will be about half the value of the pot. Because it's "linear" if you measure the position against the resistance it will always create a straight line like the graph above.

Now the way these joysticks work is the pots are used like voltage dividers. so the left pin might be connected to ground and the right pin might be connected to 5V, and the result is that the two resistors that means as they swing through their range of motion they swing through a value of 0V and 5V,

The circuit looks like this:
maxresdefault.jpg


BUT if you plot the voltage output it ends up not being linear, it has a curve:
c7P7U.jpg


If we assume for a moment that we're not using a amp board what does this look like to the game?
So the NAOMI IO board takes in this voltage and then converts it to a number between 0 and 255 (0x00 and 0xFF), this is "analog to digital conversion" if analog has infinite precision then digital has limited precision at most we have 255 "positions" that the joystick can be in through the range.

But because nothing in the real world is perfect. the joystick doesn't actually turn the pot all the way to 0% or all the way to 100%, and the restricter limits this even further so essentially we're chopping off the lower and upper 20% of each of these graphs and only moving around in the middle. Also because nothing in the real world is perfect, where those limits are can shift around from pot to the next and from one stick to the next.

THIS is what the calibration is for so it knows that 0 (0x00) isn't actually the lowest position but maybe 71 (0x47) is, and 255 (0xFF) isn't the max position but maybe 197 (0xC5) is. it might also work out what the center position is too as it might not always be 127 (0x0F).

How many steps do we actually need?
As you've correctly pointed out the difference between the upper and lower limits determine the number of "steps"or amount of positional precision we have available. What is enough really depends on the game code. They might only have 3 or 4 speeds between stopped and full-speed, or maybe they're using a full 255 (doubtful but not impossible). If the precision of the speed variable in the game is less than the precision of our calibration difference then we're good, adding more steps won't actually change the game play at all. Maybe someone can disassemble the code and give us a idea here, but if I had to take a completely wild guess the game code is maybe 16 or 32 positions total between stopped and full-speed. So a calibration range above 32 or 64 would give us full precision. (again just a completely wild speculation on my part).

Why do we have an Amp Board and what is it doing?
So now that we have the background out of the way on how analog controls work Why did Sega add an amp board here and what is it actually doing?
well one possibility is that the amp board is "stretching" the original linear plot. So if the mechanics of the joystick prevent us from getting the full range of precision then the amp board make the lows lower, and the highs higher and gives us more steps and more precision. I believe that's the assumption you're making, and it's entirely possible that is the goal of the amp board, but that might not be the case.

Op-Amps can do more than just amplify a signal they can change the shape of the signal, so instead of it just being linear it's got one or more curves to it.
like this:
Potentiometer03.gif

My guess is that the Amp board is producing an S-Curve like you see in line "3" above. What does this mean, it means that you have more steps and precision in the middle of the range and fewer at the extremes.
this would mean that very gentle nudges near the dead-zone of the stick might have A lot of precision "steps" where every 1deg of stick angle is a new step, but that the further you get out from the center position the more you have to move the stick to achieve the next step. So maybe dead zone + 5deg of movement is 5 steps, but 5deg to 10 deg is only 1 step and then the next step after that doesn't occur until 30 deg. Alternatively it might work the OPPOSITE of this where there is LESS precision in the center and MORE precision at the extremes a way to kill the dead-zone.

This is speculation on my part but an S-Curve makes the most sense for this circuit and the game, how the s-curve is implemented I'm not sure.

another alternative here is that it's actually performing curve "5" above as a way to counteract the natural voltage divider curve I showed in the earlier graph, as a way to bring the stick position back to a more true linearity.

So really the amp might not actually be significantly impacting the max and min values at all, but instead existing to impact the positions in the middle of the range.

How do we know for sure what it's doing? and compare setups
As I mentioned I think dis-assembling the game code to determine the precision of the speed variable is useful, it will at least tell us the suitable difference between max and min calibration values and at what point we reach diminishing returns. However that tells us almost nothing about the amp board's purpose effective output. There are two ways we can do that.

Option 1:
Recreate the Amp board circuit in a circuit simulator and see what it does across a voltage sweep. This will at least tell you what kind of curve the amp-board is providing and the theoretical amplification rate.

Option 2A:
As @nem suggested measure the voltage input and outputs on an amp board. and plot the output. This will tell you the real-world curve the amp board is providing and the actual amplification rate.

Option 2B:
Do the Option 2A scenario but use an actual joystick as the input. bonus points if you use Gundam pots and monkey ball pots on the same stick and measure both the inputs and outputs. This will give you the direct comparison between the pre-amp analog signal and post-amp analog signal AND the difference between the two different pots.

on all of these though we can't just measure the max and min values, you need to plot this on a graph through the whole range to understand what the amp is doing through the whole range positions.
 
@twistedsymphony - Thank you for breaking that down! Makes much more sense to me than reading that data sheet trying to figure out concepts.

The game plays fine to me... so I'm not going to think about it too much for the time being and just assume it's all good and that the Op Amp is doing it's thing :)
 
@twistedsymphony

Interesting explanation from John Bennet over on UKVAC

If you want to use the amp board then you do need to go the extra distance and replace the lots, but otherwise the MB calibration will handle the pots as is.
I missed this before I wrote my novel above..

it looks like Jon Bennet did indeed do a simulation and proved out it does an S-Curve translation with more precision in the center and less at the extremes.

I also came to the same conclusion he did that the pot value shouldn't theoretically matter. a resistor divider should be producing the same exact output regardless of the total value of the pot. However, this seems to not actually play out in reality, I'm thinking because the pot itself acts like a resistor across the +5V and GND rails and potentially impacting the function of the amp circuit. This is an area where I'm out of my depth though. I'm pretty good at digital electronics and crap at analog stuff beyond basic concepts :D
 
John says: "The general gist is it amplifies the hell out of the signal going into it, so the pot can't be moving much to go full scale in the game...only about the central 20% does anything"

In practice though it does require full movement of the stick to finsh some levels. "Beginner floor 7" you have to fully move the stick to get up the ramps. Or "Advanced floor 26" you won't get a fast roll to stay on the spiral track unless the stick is fully pushed to the top right position.

Plus you can be very very precise with little movements of the stick as needed on many levels.
 
Back
Top