PS2/N64 adapter not reading as JS0/1/2/3 only as HID
-
Hello all, I am trying to get my new Raspberry Pi 3 working with Retropie but having issues with my game pad being detected. in lsusb it reads as:
Bus 001 Device 004: ID 6666:0667 Prototype product Vendor ID WiseGroup Smart Joy PSX, PS-PC Smart JoyPad
but this is not being detected as a gamepad.in lsusb -v it reads as follows:
Bus 001 Device 004: ID 6666:0667 Prototype product Vendor ID WiseGroup Smart Joy PSX, PS-PC Smart JoyPad
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x6666 Prototype product Vendor ID
idProduct 0x0667 WiseGroup Smart Joy PSX, PS-PC Smart JoyPad
bcdDevice 2.88
iManufacturer 0
iProduct 0
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 34
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.00
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 82
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 0x0006 1x 6 bytes
bInterval 10If anyone can help with how to set this up please let me know!
Thanks in advance
-
bump anyone have a suggestion?
-
Hi,
Nothing obvious springs to mind I'm afraid.
Does the controller register any inputs using jstest?
I have a couple of different Wise USB controller adaptors, but not a Wise USB controller; both adaptors work normally. Is there any sort of mode switch on the controller?
-
jstest doesn't register says no file found. there is a mode switch on the adapter and it is set correctly for the ps2 controller.
this is a USB controller adapter btw -
@laxattack Hi,
Your
lsusb
readout isn't very disimilar from mine, although my 3-in-1 Wise adaptor has Lakeview Research listed as manufacturer. Most of the values are the same or very similar, including the device registering as a HID (human interface device)I'm not sure what the cause of the problem is, but here are a few things to check:
Just to clarify, are you using
jstest
in this manner? -jstest /dev/input/js0
Have you tried
js1
js2
etc to see if the controller is registering on a different port?Also, what is listed when you run the following:
ls /dev/input
(for comparison, my system, with a Wise 3-in-1 PS/SS/N64 adaptor connected, with a PlayStation Dualshock plugged in, returns:
by-id by-path event0 event1 event2 event3 event4 js0 mice mouse0
here
js0
is the PlayStation controllerCan I assume that you only have one device connected to the adaptor (as it seems to accomodate N64 and PSX)? - my Wise adaptors allow 3 controllers to be connected, but in real-world use only one controller can be used as the adaptor as a whole maps to a single endpoint, e.g.
js0
)Have you another machine you can try the adaptor on (PC, Mac, Linux etc)?
There's a thread elsewhere in which somebody is having issues with controllers under 3.8.1 RetroPie which worked in 3.7. I don't know if it's related in any way, but here's the link:
https://retropie.org.uk/forum/topic/1836/gamepads-recognized-but-no-function-retropie-3-8-1/7 -
cool! it seems to be under js1, Thank You @RetroResolution ! but now how do I get emulation station to read it?
-
@laxattack When you first started retropie, did the controller configuration run?
I'm not sure off-hand how to force the system to present the configuration menu again in the absense of a working controller (I tend to configure the keyboard first as a fallback).I think this question has been asked elsewhere on the forum, so it's worth a search for how to do this. You may also try searching for 'controller index' or similar.
Sorry I can't do much right now, but I'll see what I can find tomorrow
-
@laxattack Hi,
I managed to find something, but I don't have the ability to test this tonight.
Regarding forcing Emulation Station to automatically re-run the configuration, the RetroPie wiki page for Emulation Station has a section named:
I messed up on the initial prompt that appears when Emulation Station starts for the first time. My controls are completely messed up and out of order. Is there a way to redo this prompt?
I've never tried the method which is specified, so if you choose to do so I'd definitely advise backing up any files you are required to edit or delete before hand.
Regarding your controller registering as
js1
, maybe your usb adapter allows for simultaneous connection and use of controller (unlike mine, which definitely do not)?You don't have any other usb adaptors connected at the same time by any chance? Does you
/dev/input
directory contain an entry forjs0
, or only forjs1
? -
@laxattack said in PS2/N64 adapter not reading as JS0/1/2/3 only as HID:
but now how do I get emulation station to read it?
Emulation Station should have no trouble reading your controller at any jsX entry. There are only a few pieces of software in RetroPie with the device integer limitation. Daphne and ScummVM are the only two I'm aware of, but there can't be north of ten more, including experimental because I've tested all the rest.
If you have a js1 listing then you have to have a js0, so the question is, what do these two entries belong to? If no other controllers are attached, you can pretty much take it as read that they are reserved for the N64 & PS2 portions of the adapter. Ideally, one is lying dormant until activated by the toggle where the other will then become inactive.
You said that your PS2 controller "seems" to be registering under js1, but do you actually get on/off button responses and axis readings when running a jstest? If you're getting no activity from either, it's possible that both are always registering as active on the same event and when either jsX entry tries to access input data, it's getting a silent "resource busy" error. These adapters always seem to have some unique quirks to them, but with a little more info, I think it can be set on the straight and narrow.
-
I figured out that it is reading as js0 due to me plugging in my xboxone controller, I am reloading the retropie image now to start from scratch.
-
I figured out that it is reading as js0 due to me plugging in my xboxone controller.
Wow, that is indeed a strange issue. I'm surprised just removing the controller didn't solve the problems as the jsX listings are supposed to disappear afterward. Assuming this was the problem, you might still continue to run into the same issue if you don't first consider the order in which you plug your controllers. I believe the order in which the usb ports are read at startup is upper left, lower left, upper right, lower right. If these controllers are plugged in after the system has booted, you should also remember to plug in each controller in order of the desired player number.
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.