Joystick throttle?
-
- Top Contributor
- Posts: 1323
- Joined: Thu Jun 11, 2020 2:31 am
- Has thanked: 15 times
- Been thanked: 213 times
Joystick throttle?
With the controller mapping choices being 2-button, 4-button, and Gravis, is it reasonable to assume that things like throttle levers on more advanced joysticks simply can't be mapped?
-
- Top Contributor
- Posts: 1323
- Joined: Thu Jun 11, 2020 2:31 am
- Has thanked: 15 times
- Been thanked: 213 times
Re: Joystick throttle?
OK, I intended that to read "can't be mapped by the current core". Most throttles show up as another axis, what isn't clear to me is whether that axis data is 'passed through' to the underlying OS.
- Kitrinx
- Core Developer
- Posts: 187
- Joined: Sat May 23, 2020 2:14 am
- Location: NYC
- Has thanked: 1 time
- Been thanked: 149 times
- Contact:
Re: Joystick throttle?
Standard controllers can have up to 4 axis and 4 buttons. Complex controllers (like gravis pro) attempt to serialize the data of one of the buttons to (very slowly) transmit more buttons and etc.
What you describe is a 4 button 4 axis joystick. I would have added this to the 4 button mode, however, MiSTer's framework currently only supports having 1 set of axis mapped. (ie one analog stick). The second controller's analog stick will still work in this mode, but I understand the akwardness of using it this way. If mister's framework gets support for a second analog stick in the future, I can add it.
What you describe is a 4 button 4 axis joystick. I would have added this to the 4 button mode, however, MiSTer's framework currently only supports having 1 set of axis mapped. (ie one analog stick). The second controller's analog stick will still work in this mode, but I understand the akwardness of using it this way. If mister's framework gets support for a second analog stick in the future, I can add it.
-
- Posts: 13
- Joined: Mon Jul 06, 2020 11:20 pm
Re: Joystick throttle?
+1 for multiple axis support for controllers in the MiSTer framework. Flight sims run well on ao486 My thrustmaster is ready for x wing.
Re: Joystick throttle?
I am curious if anyone is hooking up game port joysticks to the mister, and how they are doing it (simply game port -> usb adapters?). I wonder if there is any chance of a SNAC or SNAC-like interface for game port devices.
-
- Posts: 34
- Joined: Sun May 24, 2020 7:13 pm
- Has thanked: 21 times
- Been thanked: 14 times
Re: Joystick throttle?
Yeah a throttle is almost a necessity for a good flight sim experience. Even support for something like the Gravis Analog Pro (3 axes, 4 buttons) would be great.Bartdesign wrote: ↑Fri Aug 21, 2020 7:16 pm +1 for multiple axis support for controllers in the MiSTer framework. Flight sims run well on ao486 My thrustmaster is ready for x wing.
- Kitrinx
- Core Developer
- Posts: 187
- Joined: Sat May 23, 2020 2:14 am
- Location: NYC
- Has thanked: 1 time
- Been thanked: 149 times
- Contact:
Re: Joystick throttle?
You'd need at least 8 wires for it, and we have 7 under the best of circumstances, so at least one button or axis wouldn't make it. I'm not sure if the timing chip lived in the joysticks for pc or in the game port card, like atari did it. If it's in the stick it might be possible, otherwise not.
- Kitrinx
- Core Developer
- Posts: 187
- Joined: Sat May 23, 2020 2:14 am
- Location: NYC
- Has thanked: 1 time
- Been thanked: 149 times
- Contact:
Re: Joystick throttle?
After looking it over, it seems most joysticks do have the timer on board. The lack of an 8th wire though will prevent it from ever being an ideal solution, missing one axis or button. IMHO the best route to an ideal scenario is to get a good gameport to usb converter (I believe McGyver is designing one) and work towards adding a second analog stick to the mister framework. Then all four axes and buttons will work with no downsides.
Re: Joystick throttle?
I am indeed working on a gameport to USB adapter. I'm currently implementing the Microsoft Sidewinder range. Since you have implemented GrIp support in the core, could you consider implementing the Sidewinder Precision Pro or 3D Pro? They use a similar principle, button1=clock and button2=data. The Sidewinder range need a trigger to send a data package, X1 is used as a trigger (pulled low for a couple of hundreds of microseconds). The good thing with these is they have four axes (X, Y, Throttle and Z-Rotation), hat switch and ~9 buttons.Kitrinx wrote: ↑Sat Aug 22, 2020 2:26 pm After looking it over, it seems most joysticks do have the timer on board. The lack of an 8th wire though will prevent it from ever being an ideal solution, missing one axis or button. IMHO the best route to an ideal scenario is to get a good gameport to usb converter (I believe McGyver is designing one) and work towards adding a second analog stick to the mister framework. Then all four axes and buttons will work with no downsides.
- Kitrinx
- Core Developer
- Posts: 187
- Joined: Sat May 23, 2020 2:14 am
- Location: NYC
- Has thanked: 1 time
- Been thanked: 149 times
- Contact:
Re: Joystick throttle?
Sure, do you have a link to a protocol description? Otherwise I can hunt it down.MickGyver wrote: ↑Sat Aug 22, 2020 3:53 pm I am indeed working on a gameport to USB adapter. I'm currently implementing the Microsoft Sidewinder range. Since you have implemented GrIp support in the core, could you consider implementing the Sidewinder Precision Pro or 3D Pro? They use a similar principle, button1=clock and button2=data. The Sidewinder range need a trigger to send a data package, X1 is used as a trigger (pulled low for a couple of hundreds of microseconds). The good thing with these is they have four axes (X, Y, Throttle and Z-Rotation), hat switch and ~9 buttons.
Re: Joystick throttle?
Great! Here is an avr implementation for the Precision Pro (with a description of the protocol): https://github.com/MaZderMind/SidewinderInterface. Here is the relevant code for the Linux driver implementation for the Sidewinder range: https://github.com/torvalds/linux/blob/ ... dewinder.cKitrinx wrote: ↑Sat Aug 22, 2020 4:06 pmSure, do you have a link to a protocol description? Otherwise I can hunt it down.MickGyver wrote: ↑Sat Aug 22, 2020 3:53 pm I am indeed working on a gameport to USB adapter. I'm currently implementing the Microsoft Sidewinder range. Since you have implemented GrIp support in the core, could you consider implementing the Sidewinder Precision Pro or 3D Pro? They use a similar principle, button1=clock and button2=data. The Sidewinder range need a trigger to send a data package, X1 is used as a trigger (pulled low for a couple of hundreds of microseconds). The good thing with these is they have four axes (X, Y, Throttle and Z-Rotation), hat switch and ~9 buttons.
-
- Posts: 34
- Joined: Sun May 24, 2020 7:13 pm
- Has thanked: 21 times
- Been thanked: 14 times
Re: Joystick throttle?
Having the second analog stick added to the framework would indeed be ideal. That way for using old sticks, it's simply a matter of obtaining one of the many gameport>usb devices and then mapping the controls in. And folks could map to modern dual stick controllers to if desired.
Re: Joystick throttle?
Now it would be awesome that there was an option in ao486 to present the controller as a CH Flightstick Pro + Rudder Pedals, which should be compatible with most games (+Win9X) and relatively simple to translate: as far as I know, buttons to buttons, axes to axes and the only tricky part is to map the POV, as it sends 2-button combinations (also simultaneous button presses should send nothing to avoid interfering with the POV).