I have Zeb's plunger, and the first time you pull the plunger on a table, it auto calibrates. When it calibrates, the plunter travels from position 0 to 1. If the park position is .1667 and there is a ball in the shooter lane, the auto calibration causes the plunger to jump to 0 initially then move to 1. This initial jump to 0 from .1667 can launch the ball 1/2 way up the shooter lane. I think this was the reason for the request to change park position to .01, to eliminate that unexpected short plunge due to the plunger auto calibration.
It's all relative, I suppose, but in my opinion it would be better to address this in the plunger firmware than to change the long-time VP behavior. VP has had an established standard for this since it originally supported mech plungers - I'm pretty sure this was based on the Mot-Ion plunger behavior, since the earliest plunger code in VP looks to be specifically written for that kit.
VP's expectation from the device is as follows. The device reports joystick axis coordinate 0 when the plunger is at the park position. It reports the maximum positive joystick axis coordinate when the plunger is pulled all the way back. It reports the extreme negative joystick axis coordinate when the plunger is pushed all the way forward.
My first preference would be to just have that be the universal standard and expect all new plunger devices to conform, and consider it a bug in the device if it doesn't. It's a simple convention, and it's the way it's always worked since VP had plunger support to begin with. All of the plunger devices that I'm aware of have upgradeable firmware, so if everyone can agree this is the right convention, it should be a simple matter of tweaking the firmware for any existing devices that don't already follow it.
If the firmware writers can't all agree on the one convention, the next best thing would probably be to just add more special-case code per device to VP. VP already has code that recognizes six or seven different plunger/nudge devices so that it can apply special-case handling to each. So any devices that really must follow different conventions can just have the necessary compensating code added to VP, and we can leave the main body of the code as it's always been to maintain compatibility. This isn't as nice as everyone following one convention, because special-case code means more complexity and more opportunities for bugs, but I think it's better than breaking the long-standing behavior for everyone.
Edited by mjr, 26 August 2016 - 04:30 AM.