What is the best gamepad controller in terms of thruster control? Xbox (which one), Logitech (which one) or other.
What’s your context for this question?
If you’re looking to control individual thrusters then I’d likely recommend something like our Thruster Commander over a full joystick or gamepad.
If you’re looking for controllers that will allow you to control a vehicle via a flight controller, mass produced game controllers tend to work well in general (as long as they’re compatible with QGroundControl), and the
surface-controller forum tag has a few interesting posts about a variety of custom controller designs. From a uniqueness standpoint I suppose the right side of the Logitech X56 and @UnderseaROV’s ROVorb are the furthest out options I’ve seen from more standard dual-stick gamepads/controllers.
On precision, I tried to find some reference values but couldn’t find much with actual evidence provided to back it up. From what I did find, it seems
- a low-cost gamepad like the Logitech F310 has 8-bit stick resolution (255 values),
- the DualShock3 (PS3 Controller) may have 10 bits (1024 values)
- unclear whether the DualShock4 (PS4) and DualSense (PS5) have the same, higher, or 8 bits, although going backwards seems unlikely
the original XBox controller may have had 8-bit resolution
- this forum post and elsewhere seem to suggest an XBox controller has 16-bit resolution (65535 values) - perhaps that’s true of recent ones, not sure, and even if it does it likely isn’t accurate to 16 bits (16-bit resolution may only have 10-12 bits of accurate precision)
ArduSub supports 800 values for both its control input and the servo outputs, so any controller with 10-bit stick resolution or higher will have more steps than are meaningful for ArduSub to deal with. Beyond that, higher quality controllers will generally suffer less from stick drift over time, and have smaller dead zones (wiggle room near the ‘neutral’ point).
Note that there’s a lot more that goes into controlling a vehicle than just the physical controller in your hand(s) - the mass and buoyancy distribution, thruster locations and orientations and the control algorithm(s) involved can all have a significant impact on the effectiveness, efficiency, and intuitiveness of control. Careful controller selection can be valuable for intuitiveness and convenience of having your important controls readily available, but intuitive controls don’t help much if the thing being controlled is poorly balanced and/or poorly tuned for its dynamics.
As things get to the higher end, latency is likely as important as fidelity (accurate stick resolution). If you’re trying to precisely align something, or are manoeuvring quickly between obstacles, then lag needs to be minimised between your perception (video stream(s), sonar data, etc) and the responses to your actions. Overall latency involves sensors, communication (in both directions), and operator reaction times, and if there’s too much latency then finer-grained control doesn’t help.
I’ve used most of the popular models over the years, and some random chinese vendor ones thrown in as well. The Dualshock3 or PS4 controller both are the best to me. They have internal, rechargable batteries, and can take more of a beating than the logitech and xbox controllers. They aren’t as cheap as random no-name vendor units, but getting those in the right mode can be challenging. The xbox controllers have had terrible compatability across OS versions - but even with an M1 mac the PS4 works great. The spring tension has always felt a bit higher to me in the joysticks as well - which I prefer but some may not like - in other words the joysticks want to spring back to center slightly more than other options.
Many thanks for those first two replies. To answer Eliot question: we use the BlueROV2 within fast currents for professional applications. We will most probably buy ~USD1000 controller at some point but in the mean time I would like to find something around ~USD100 that provides better manoeuvrability and also with buttons that do not get bad quickly such as the camera tilt ones on the Logitech F310. We will look into the products mentioned but if other users can add on the list of feedback that would be much appreciated.
I think there are some small scale commercial ones tailor made for ROV usage.
But generally, a teensy microcontroller setup as a HID (human input device) can easily be programmed to read buttons, switches and joysticks in ridiculous quantities at quite a low price. DIY project, but that might suite some!
A forum user and distributor (?) might still sell the cadillac of controllers: http://www.deltarov.com/new/product/hand-control-unit/
Surface Controller - #254 by etienne
Yes I sell this, am a distributor and forum user