Atari USB Button Spinner - Not Working

Discussion of keyboards, gamepads, joysticks and other input related peripherals.
98pacecar
Posts: 14
Joined: Sun Jul 18, 2021 3:53 am
Has thanked: 1 time
Been thanked: 1 time

Atari USB Button Spinner - Not Working

Unread post by 98pacecar »

I'm breaking this away from another thread I've posted in the Arcade Cores section as I think it's an input issue and not a core issue. If the mods want to close down my other thread, that's fine.

I picked up one of the Atari branded USB button spinners to use with the arcade cores that support spinners: https://www.microcenter.com/product/624 ... sb-spinner

I believe this is the same as the GRS spinner which seems to work on the Mister. Initial testing on the Mister with analog I/O board has no response in Arkanoid, Tron, or the InputTest core. In WIndows 8, it shows up as a HID compliant mouse and controls the cursor fine. In the shell on the Mister, lsusb shows the same VID:PID as Windows.

VID:PID = 32be:1420

I've added these values as well as ffff:ffff to the mister.ini settings for using a mouse as a spinner. No difference.

I feel like I'm missing something simple, but not sure where else to look. Any advice would be greatly appreciated!

Edit: Adding info from verbose lsusb

Code: Select all

Bus 001 Device 007: ID 32be:1420  
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x32be 
  idProduct          0x1420 
  bcdDevice            2.00
  iManufacturer           1 Baolian industry Co., Ltd.
  iProduct                2 BL button spinner # 1
  iSerial                 3 A03C304C4252
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           34
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 
      bInterfaceSubClass      1 
      bInterfaceProtocol      2 
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      74
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0004  1x 4 bytes
        bInterval              10
can't get device qualifier: Resource temporarily unavailable
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x0001
  Self Powered
User avatar
jlancaster86
Posts: 147
Joined: Sat Jun 27, 2020 1:33 pm
Has thanked: 129 times
Been thanked: 35 times

Re: Atari USB Button Spinner - Not Working

Unread post by jlancaster86 »

Just to be clear, what happens when you plug a regular USB mouse into your MiSTer? Do the cores register the inputs from it?
98pacecar
Posts: 14
Joined: Sun Jul 18, 2021 3:53 am
Has thanked: 1 time
Been thanked: 1 time

Re: Atari USB Button Spinner - Not Working

Unread post by 98pacecar »

Yes, using a basic mouse with 2 buttons works perfectly.
98pacecar
Posts: 14
Joined: Sun Jul 18, 2021 3:53 am
Has thanked: 1 time
Been thanked: 1 time

Re: Atari USB Button Spinner - Not Working

Unread post by 98pacecar »

Spent some more time on this, but nothing concrete figured out.

I cleared out all of the configs related to Arkanoid, but no difference.

I wired up a way to test the built in buttons on the spinner and using the test mode in Arkanoid, I found that the buttons are working fine. So it's something specific to the spinner/mouse part of this.

I've tried to run xinput in the Mister shell, but it's apparently not a part of the linux distro. Looking to see if there's a way to get it installed, but I don't think it will tell me much.

Can anybody point me to something more I can try? I'm pretty much at the limit of what I know to do.

Thanks!
jca
Top Contributor
Posts: 1911
Joined: Wed May 27, 2020 1:59 pm
Has thanked: 145 times
Been thanked: 454 times

Re: Atari USB Button Spinner - Not Working

Unread post by jca »

No sure if it can help but you should have an InputTest core in Utility.
98pacecar
Posts: 14
Joined: Sun Jul 18, 2021 3:53 am
Has thanked: 1 time
Been thanked: 1 time

Re: Atari USB Button Spinner - Not Working

Unread post by 98pacecar »

jca wrote: Fri Jul 23, 2021 3:33 am No sure if it can help but you should have an InputTest core in Utility.
Thanks for the reminder. I had tried that before, but had no luck. I just retested and found the same behavior as Arkanoid. The buttons register, but the spinner doesn’t.

I’ve also validated that it shouldn’t be a power issue. My supply is capable of 12a, so should be more than enough.
98pacecar
Posts: 14
Joined: Sun Jul 18, 2021 3:53 am
Has thanked: 1 time
Been thanked: 1 time

Re: Atari USB Button Spinner - Not Working

Unread post by 98pacecar »

A little more debugging effort today. I hooked up to the serial uart on the DE-10 and captured this as I plugged in the spinner and rotated it:

Code: Select all

The file mouse0 was created.
Close all devices.
Open up to 30 input devices.
make_unique(289B,0057,-1)
make_unique(0E8F,3013,1)
make_unique(16C0,05E1,1)
make_unique(045E,02A1,1)
opened 0( 0): /dev/input/mouse0 (0000:0000) 0 "usb-ffb40000.usb-1.6/input0/A03C304C4252" ""
The file event1 was created.
Close all devices.
Open up to 30 input devices.
make_unique(289B,0057,-1)
make_unique(0E8F,3013,1)
make_unique(16C0,05E1,1)
make_unique(045E,02A1,1)
opened 0( 0): /dev/input/event1 (32be:1420) 0 "usb-ffb40000.usb-1.6/input0/A03C304C4252" "Baolian industry Co., Ltd. BL button spinner # 1"
opened 1( 1): /dev/input/mouse0 (32be:1420) 10 "usb-ffb40000.usb-1.6/input0/A03C304C4252_sp" "Baolian industry Co., Ltd. BL button spinner # 1"
The directory by-id was created.
The directory by-path was created.
Close all devices.
Open up to 30 input devices.
make_unique(289B,0057,-1)
make_unique(0E8F,3013,1)
make_unique(16C0,05E1,1)
make_unique(045E,02A1,1)
opened 0( 0): /dev/input/event1 (32be:1420) 0 "usb-ffb40000.usb-1.6/input0/A03C304C4252" "Baolian industry Co., Ltd. BL button spinner # 1"
opened 1( 1): /dev/input/mouse0 (32be:1420) 10 "usb-ffb40000.usb-1.6/input0/A03C304C4252_sp" "Baolian industry Co., Ltd. BL button spinner # 1"
Input event: type=EV_REL, Axis=1, Offset=1, jnum=0, ID:32be:1420:00
FileOpenEx(open) File:/media/fat/config/inputs/input_32be_1420_v3.map, error: No such file or directory.
FileOpenEx(open) File:/media/fat/config/input_32be_1420_v3.map, error: No such file or directory.
FileOpenEx(open) File:/media/fat/config/inputs/input_32be_1420_v3.map, error: No such file or directory.
FileOpenEx(open) File:/media/fat/config/input_32be_1420_v3.map, error: No such file or directory.
/dev/input/mouse0: xval=0, btn=0, spinner=0, paddle=0
Input event: type=EV_REL, Axis=1, Offset=-1, jnum=0, ID:32be:1420:00
/dev/input/mouse0: xval=0, btn=0, spinner=0, paddle=0
Input event: type=EV_REL, Axis=1, Offset=-1, jnum=0, ID:32be:1420:00
/dev/input/mouse0: xval=0, btn=0, spinner=0, paddle=0
Input event: type=EV_REL, Axis=1, Offset=-1, jnum=0, ID:32be:1420:00
Seems to be complaining that the map file for the controller isn't there, but no matter what I do I can't get the define joystick buttons from the core selector F12 menu to recognize the spinner. Even hitting the buttons on it when it asks for dpad right, it never registers anything. Is there a way to manually create a map for this for testing?

I did go ahead and opened this as an issue in the Github, but wanted to update here as well in case anybody has seen something similar before.
98pacecar
Posts: 14
Joined: Sun Jul 18, 2021 3:53 am
Has thanked: 1 time
Been thanked: 1 time

Re: Atari USB Button Spinner - Not Working

Unread post by 98pacecar »

Just following up on this for future searches. I spoke with Sorgelig earlier today. He noticed that it was using the Y axis instead of the X axis, so it would not be recognized. He added a new option to switch the axis. That got it working perfectly!

New setting is:

Code: Select all

spinner_axis=1
It also took setting the spinner throttle setting to reverse the direction as left and right were reversed:

Code: Select all

spinner_throttle=-50
I've found that -50 feels pretty good in Arkanoid, but I want to spend some more time tweaking it to get the best response.

Thanks to Sorgelig for getting this one working! This is a relatively inexpensive option for a prebuilt spinner and I think will work well with the supported cores.
datajerk
Posts: 1
Joined: Fri Aug 20, 2021 2:43 am

Re: Atari USB Button Spinner - Not Working

Unread post by datajerk »

NM, was a different Atari spinner.
Post Reply