Why not just have built in software recalibration?
If a neutral joystick is supposed to output (0,0). Ask the user to take their hands off the joystick for a min, if its default is sending out (-1, -5), then adjust the values by that amount.
I think every major console already has software calibration. IIRC PS5 likes to hide calibration inside each game vs. having it system wide like other systems.
Unfortunately, recalibration only "fixes" minor stick drift and, due to how the sticks wear, drift tends to go from "minor" to "major" really quickly.
The issue is that the stick will eventually report an increasingly unpredictable position. So it's not an issue of it predictably reporting (-1, -5) at rest, it's more like random values from -5 to 5 in both axes. This also affects the direction when actually pressing the stick so pushing the stick "north" may cause you to move N, NNW, _or_ NNE and unpredictably so.
The other problem is that the position they “rest” at can depend on how they are actuated. If you release something held north, it may rest different than if you release held east.
Why not just have built in software recalibration?
If a neutral joystick is supposed to output (0,0). Ask the user to take their hands off the joystick for a min, if its default is sending out (-1, -5), then adjust the values by that amount.
I think every major console already has software calibration. IIRC PS5 likes to hide calibration inside each game vs. having it system wide like other systems.
Unfortunately, recalibration only "fixes" minor stick drift and, due to how the sticks wear, drift tends to go from "minor" to "major" really quickly.
The issue is that the stick will eventually report an increasingly unpredictable position. So it's not an issue of it predictably reporting (-1, -5) at rest, it's more like random values from -5 to 5 in both axes. This also affects the direction when actually pressing the stick so pushing the stick "north" may cause you to move N, NNW, _or_ NNE and unpredictably so.
The other problem is that the position they “rest” at can depend on how they are actuated. If you release something held north, it may rest different than if you release held east.