what is the best Arcade Spinner for Retropie v.4.8.2 on pi4?
-
@giandeejay said in what is the best Arcade Spinner for Retropie v.4.8.2 on pi4?:
Because Raspberry GPIO is most powerful of arduino and maybe there is a method to program it better..
Not quite, the RPI GPIO doesn't feature an ADC, which I think it's needed to translate a spinner/analog joystick readings into a HID device.
-
@mitu ok...but what kind of protocol is used by spinner ? In market place there are very cheap adaptor called UART to USB connectors...maybe this hardware can recognise spinner when converted on raspberrypi usb port?
Adaptor UART/IIC/SPI/Ttl/ISP to USB
Or the problem is not so simple to solve as I think ? -
@mitu ok...but what kind of protocol is used by spinner ?
I don't think there's a standard. Some of them just send the potentiometer read value, others may send relative motion read-outs.
In market place there are very cheap adaptor called UART to USB connectors...maybe this hardware can recognise spinner when converted on raspberrypi usb port?
UART is usually serial, I don't think the spinner communicates that way.
-
@mitu said in what is the best Arcade Spinner for Retropie v.4.8.2 on pi4?:
Some of them just send the potentiometer read value,
AFAIK potentiometers would be used for paddles, not spinners (who turns endless left/right) ;>
@giandeejay the links provided within the 3rd one of my previous post seem to be a good start as a research on that topic: wikipedia: Incremental Encoder and the article on SeedStudio about Rotary Encoders.
And maybe there is a way to use a variant of rotary encoders on the raspi: ThePiHut: How to use a rotary encoder with the raspberry pi ... (though that [mechanical stepcount] one used there is with 5 contacts vs. the propably [optical/magnetical (??))] wanted 4 (VCC/GND; Phase A/B) and I am not sure if it would be usable for an arcade-spinner (speed/flyweight to go where?/etc.)).
-
AFAIK potentiometers would be used for paddles, not spinners (who turns endless left/right) ;>
You're right, I got them confused.
-
@giandeejay Sigh :D Maybe it is easier than we have thought, though this may need some more RTFM I think (i.e. what kind of encoders exactly) ... citing the README from /boot/overlays (overlays are added within /boot/config.txt)
Name: rotary-encoder Info: Overlay for GPIO connected rotary encoder. Load: dtoverlay=rotary-encoder,<param>=<val> Params: pin_a GPIO connected to rotary encoder channel A (default 4). pin_b GPIO connected to rotary encoder channel B (default 17). relative_axis register a relative axis rather than an absolute one. Relative axis will only generate +1/-1 events on the input device, hence no steps need to be passed. linux_axis the input subsystem axis to map to this rotary encoder. Defaults to 0 (ABS_X / REL_X) rollover Automatic rollover when the rotary value becomes greater than the specified steps or smaller than 0. For absolute axis only. steps-per-period Number of steps (stable states) per period. The values have the following meaning: 1: Full-period mode (default) 2: Half-period mode 4: Quarter-period mode steps Number of steps in a full turnaround of the encoder. Only relevant for absolute axis. Defaults to 24 which is a typical value for such devices. wakeup Boolean, rotary encoder can wake up the system. encoding String, the method used to encode steps. Supported are "gray" (the default and more common) and "binary".
-
@Ashpool said in what is the best Arcade Spinner for Retropie v.4.8.2 on pi4?:
though this may need some more RTFM I think (i.e. what kind of encoders exactly)
... Ok, to be more precise - maybe not kind of encoder, but specifications of it. ... Whats about VCC? Is it providable via Raspi GPIOs? (24V/12V, etc. / are any resistors or other elements needed in the connection?)?
From a few hits I got on german sides - up to what frequency is it usable, as most use-cases i've found are more on a radio-dial/step-by-step area -> so arkanoid could well be covered, but any game which needs/supports a whack-just turn, turn, turn... high-frequency spinner may be out of reach by what is offered within that overlay/raspi abillities... At least there must be a reason why people switch to arduino or other atmel based solutions as a HID interface... But I am still curious and interested in/towards possible answers ;) -
I am wondering about this spinner. I would like to play some MAME Tempest with it. How would I configure it to work with RetroPie?
-
@appas That's a Controller with USB connection, and as such not related to this topic (even if the threads title may imply it). Read the Docs for mouse like devices and maybe this article about spinner turn counts and if there are any remaining questions, please open a separated topic for it.
-
@Ashpool hi to all, i have finally found a great solution for my Spinner and now I have a great Spinner Working on Retropie v4.8.2.
Hardware used:- 1 Industrial Rotary encoders (7 dollars)
- 1 Alloy Wheel for rotary encoder 6mm
Cost 1 euro ( in Italy). - 1 Arduino Pro Micro Atmega32u4 board 5volt powered (a "clone" version of Arduino Leonardo Board but most powerful than Leonardo and space saving, not a Sparkfun "red board", but a "blue board of Pro Micro" founded on Amazon). Cost 5 dollars
- 1 Raspberry Pi4 on my autocreated Bartop and Arcade Cabinet.
I have programmed this Arduino pro micro board using 2 libraries joystick.h and mouse.h and thanks to CraigB for the rest of source code doing "quadrature" for spinner...and the correct command line to preset spinner over Retropie adding it at /boot/cmdline.txt file.
(a Declaration of Spinner by Vendor ID and Product ID in Hex value, so retropie can recognise it)...
So, my Arduino pro micro board is connected by A/B channel of spinner but controlled by sketch software using interrupt (fastest and very accurate Reading than directly Reading from TXD / RXD pin channels, slow read).
So my industrial rotary encoder (600 point per rotation)is connected (4 Cables at all) on digital PIN 2 (A)and 3 (B) and pin GND and VCC PIN 5volts of Arduino Pro Micro board and Arduino pro micro is also connected to raspberry pi4 with a normal "micro usb cable" on 3rd USB port (others 2 usb ports are connected by 2 joystick and 10 buttons per player, on my Bartop).So i have Programmed the pro micro with sketch by my pc with IDE software and after that i have connected it to raspberry and rotary encoder acting like a "man in the middle" device.
Arduino pro micro is already (natively) an HId device for every other pc/tablet/linux/mac/raspberry/ smart tv/ or everything else...And when my spinner (rotary encoder+pro micro board + usb cable+alloy wheel) was connected To raspberry pi4 With Retropie 4.8.2 i have added it on retroarch like a mouse for player 1 and 2.
I have also enabled "mouse auto detection/connection" option in retroarch...And now my new "ardu- spinner " works very well !
On FBA emulator works very well also with OutRUN and ALL driving games like a good "steering wheel", the spinner works fine also on Arkanoid and similar games and so on...
Also in Mame2010 and Mame2003 my spinner works great.
And also on sega Supermodel3** games my spinner works very well ...The most important thing before play with my "arduino based spinner" is to set the correct mouse index in retroarch> input> user 1 binds, for earlier version of retropie the documentation Is good , mouse index was a number , but from version 4.8.x mouse index is not (only) a number but a name of periphericals, infact my Arduino is viewed by retroarch like a mouse index named "Arduino Leonardo"...and Works very well.
So I have done:
The greatest spinner at lowest price...
Thank you very much**I know normally Segasupermodel 3 was not included in retropie 4.8.2 but i have take a little modification on my retropie 4.8.2 like integration of Sega Supermodel3 (correcting all the bug on its original source code and recompiling it on pi4 without errors) and I also made a New integration of vulkan drivers in some emulators like lr-ppsspp and others thanks also to pikiss tools...
-
@giandeejay Good to find that someone found my github page how to build a spinner and also trackball using an AtMega32U4 MCU (MicroController Unit). I also did some Youtube demos of the devices. Original hack was JoeW but his build diverged from mine since 2019. I did multiple versions of code with and without buttons (joystick or mouse). Even a MiSTeR version with adjustable sensitivity. There were multiple build versions like on thingiverse. I know someone in Europe had multiple language translation of my version howto. I was even so popular the Chinese did a knot-off of my design at retroarcadecrafts and alibabba/aliexpress.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.