Forum Replies Created
-
AuthorPosts
-
03/15/2016 at 09:51 in reply to: JUYAO controller – not correctly recognized by Raspberry Pi? #120413DinoflyParticipant
OK problem solved.
The udev configuration should use the name that “evtest” outputs. evtest is not installed by default, so i justapt-get install evtest
to get it.I fixed the rule like this:
ATTRS{name}=="D_R_M JUYAO Dual Arcade",ACTION=="add",MODE="0666",ENV{ID_INPUT_TABLET}="0",ENV{ID_INPUT_JOYSTICK}="1"
And i added a “usbquirks” item to the /boot/cmdline.txt file (at the end of the existing line, not on a new line!) :
usbhid.quirks=0x314:0x326:0x040
03/13/2016 at 22:19 in reply to: JUYAO controller – not correctly recognized by Raspberry Pi? #120226DinoflyParticipantHi,
I can’t get my device to work. I tried adding the udev rule and the cmdline.txt usb quirk but nothing changed.
I wonder, what is the string that should be used in the udev rule to identify the device ? My device does not seem to have the same name than the one i see on different topics when searching Google.
For example, its name in “lsusb” is… empty:Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 004: ID 413c:1010 Dell Computer Corp. Bus 001 Device 005: ID 0314:0328 Bus 001 Device 007: ID 7392:7811 Edimax Technology Co., Ltd EW-7811Un 802.11n Wireless Adapter [Realtek RTL8188CUS] Bus 001 Device 006: ID 413c:2110 Dell Computer Corp.
Here is the full output of “lsusb -v”: http://pastebin.com/54jvby3W
Notice this:iManufacturer 1 D_R_M iProduct 2 JUYAO Dual Arcade
I’ll try with the following udev rule to match with the name of my device:
ATTRS{name}=="JUYAO Dual Arcade",ACTION=="add",ENV{ID_INPUT_TABLET}="0",ENV{ID_INPUT_JOYSTICK}:="1"
Edit: still no luck with this one :(
Any idea ?DinoflyParticipantThanks. I still can’t get it to work but i’ll post my questions in the other topic.
DinoflyParticipantHi,
I have the same issue. Did you find a solution ?
DinoflyParticipantI’ve read about that today and i think you are right. The 3.3V tolerance might be the difference between the old and the new controllers.
DinoflyParticipantI’m talking to myself here, but maybe this will help someone facing the same issue. I finally got 2 controllers working.
I have 5 SNES controllers: 1 old official, 3 new non officials that i bought from Adafruit and 1 old non official “Super-4” turbo controller. All of them work fine on my Super Nintendo.
On the Pi with the GPIO Adapter, i always tested plugging in my official gamepad and one of my Adafruit gamepads. And i had issues with this configuration. Today, i tested with my 2 old controllers (official and “Super-4”). Both worked without any issue with the official SNESDev driver. No ghost buttons, no issues when both are plugged in at the same time.
So this means that the recent SNES controllers from Adafruit don’t quite use the same settings than the old controllers. They work on my real SNES, but have issues on the Pi. Old controllers work as expected. Or am i the only one having issues with recent SNES controllers on the Pi ?
DinoflyParticipantAm i the only one who has this issue ?
Is there anything i can do to diagnose the cause of it ? I have a multimeter and checked every pin for continuity: everything seems ok. Is there a software i can use to monitor the GPIO status and see what changes when i plug in a second controller ?
I still don’t know if it is software related or hardware…DinoflyParticipantI installed axle-h’s SNESDev fork and it solved one of the issues: no more ghost button presses !
But i still can’t connect both of the controllers at the same time :(DinoflyParticipantI just tried plugging the ribbon cables directly into my SNES controller and the issue is still the same. My setup is now as follows :
- A SNES controller plugged directly to the ribbon cables
- A SNES extension cable shortened to 70cm soldered to the ribbon cables, with no controller plugged in
- No overclocking
The issues are still :
- Pressing buttons sometimes trigger other button presses (“A” gets sometimes pressed when “right” is pressed for example). This happens often but games are mostly playable… it’s just really annoying. And in EmulationStation, sometimes it launches games when i just want to go to the next machine by pressing right.
- Plugging a second controller into the extension cable disables both controllers
Do you think both issues are related ? Do i have a short circuit somewhere ? What tests should i do to investigate ?
I think i will try axle-h’s SNESDev fork, i’ve read he made some timing changes so maybe i will have more luck with this version.
DinoflyParticipantTurns out it’s even worse on a real SNES. Why do these extension cables even exist ? X and A buttons get pressed without touching anything…
So it’s not a GPIO or SNESDev issue. I’ll shorten the cables and try again.DinoflyParticipantI’m using the latest stable sd image and just upgraded from binaries using the setup script. Overclocking is set to “Pi2” settings and i’ve put a heatsink on the main chip. The snesdev process is using less than 10% CPU. The controller cable + extension cable is 3 meters long. Everything is connected properly: as I said, when only 1 controller is connected (be it in port 1 or 2), it works (but still has issues with buttons).
Attached is a picture of my soldering to the extensions cables (male side). I will try this on a real snes but the heat of the soldering iron bent some pins in the extension cable male plug so I’ll have to fix this.DinoflyParticipantI have two new weird problems :
1 – i can only plug one SNES controller at a time. When both controllers are plugged in, none of them works (tested with jstest and EmulationStation). If i unplug one of the two, the remaining one works.
2 – the SNES controller pushes buttons by itself, or pushes the wrong buttons. For example when pressing right, sometimes it presses “A” and when pressing up, sometimes it presses “Start”. I saw in the SNES controller protocol that these buttons are next one to another in the Button-to-Clock Pulse Assignment. So i suppose that i have a problem with the clock sync, do you think it is because my cables are too long ?
DinoflyParticipantOK now i have some other problem… the button on the GPIO adapter works well in command line mode (it types “r” when pushed), but i can’t use it to exit a game or rewind. I can shut down the Pi with 5 consecutive pushs.
I think it has something to do with the fact that my keyboard can’t be used at all in Retroarch. Why is that ?
DinoflyParticipantI reinstalled the SD image from scratch and it works now. Still having issues with one of the 2 SNES controllers but i’ll figure it out.
DinoflyParticipantI was so focused on the wiki that i missed the main README file, my bad :)
DinoflyParticipantI must mention that i’m using Raspbian Jessie, and i understand that it isn’t officially supported. I’ll reinstall the official image and try again.
DinoflyParticipantOh i didn’t realize that Jessie wasn’t officially supported, i’m sorry. I upgraded to get the Wii U Pro Controller support, as shown on the wiki. This page recommends upgrading to Jessie without putting any warning on the lack of support for this operation: https://github.com/RetroPie/RetroPie-Setup/wiki/Setting-up-Wii-U-Pro-controller
Even now that i know Jessie is not officially supported, i can’t find this information on the wiki. So i thought that everyone was using the latest Raspbian with the setup script, just like me.
Sorry again for not mentioning this. I’ll reinstall the official image.
DinoflyParticipantI didn’t change anything to /boot/cmdline.txt.
Removing the overclock doesn’t fix the issue either…OK i think i’ll reinstall everything, since i’m having issues with the GPIO Adapter / SNESDev too. I’ll start on a fresh Raspbian Jessie and use the setup script, instead of upgrading to Jessie after installing from the SD image.
DinoflyParticipantI don’t see any error at boot, but the text is really fast so maybe i’m missing something.
Here is my full /boot/config.txt with not so much changes from the default: http://pastebin.com/6j0enptY
The only line i edited myself is the avoid_safe_mode one, for the GPIO adapter.I tried typing the commands you gave me, it didn’t solve the issue :-/
Thanks for helping me !
DinoflyParticipantI just found out that the SNESDev process is using 100% of a CPU at all times, the sames goes for emulationstation :
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 575 root 20 0 3708 1800 1700 R 100.0 0.2 4:58.57 SNESDev 694 pi 20 0 124452 44936 18084 R 99.7 6.0 4:34.96 emulationstatio 279 root 20 0 0 0 0 S 0.3 0.0 0:00.16 RTW_CMD_THREAD 735 pi 20 0 5092 2468 2120 R 0.3 0.3 0:01.04 top 1 root 20 0 5360 3908 2740 S 0.0 0.5 0:05.73 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/0 4 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H 6 root 20 0 0 0 0 S 0.0 0.0 0:00.09 kworker/u8:0 7 root 20 0 0 0 0 S 0.0 0.0 0:00.12 rcu_preempt 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_sched 9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh 10 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 11 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/1 12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/1 14 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/1:0H 15 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/2 16 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/2 18 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/2:0H 19 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/3 20 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/3 22 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/3:0H 23 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 khelper 24 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmpfs
DinoflyParticipantIt shows the image properly, in fullscreen.
DinoflyParticipantpi@retropie ~ $ cat /etc/splashscreen.list /opt/retropie/supplementary/splashscreen/retropie2015-blue-4to3/splashscreen.png
I checked that the file exists:
pi@retropie ~ $ file /opt/retropie/supplementary/splashscreen/retropie2015-blue-4to3/splashscreen.png /opt/retropie/supplementary/splashscreen/retropie2015-blue-4to3/splashscreen.png: PNG image data, 1350 x 1080, 8-bit/color RGBA, non-interlaced
pi@retropie ~ $ md5sum /etc/init.d/asplashscreen 7f6e46c67a78c8ee260a51ada28e8e90 /etc/init.d/asplashscreen
DinoflyParticipantHere are the pictures. Am I doing something wrong ?
DinoflyParticipantIt still doesn’t show the splashscreen after updating the setup script and the list of splashscreens… i don’t know what to do next :-/
DinoflyParticipantWell i do that almost every day hoping that it would solve my issue but i’ll try that again tonight, thanks.
DinoflyParticipantI have the same issue… did you manage to find a solution ?
My display is a 19″ LCD with 1280×1024 resolution, maybe it has something to do with that ? Do i have to choose a splashscreen image that has the exact same dimensions ?DinoflyParticipantHi,
Thanks for all the informations you provided in this topic. This was driving me mad for two weeks. But i’m curious: why bother including shaders in the Retropie distribution that are known to be crashing on the Raspberry Pi and Pi 2 ?
Couldn’t we just remove all the useless and misleading shaders that we cannot use ?DinoflyParticipantHi,
Can the driver detect when a SNES controller is plugged in the GPIO adapter ?
I want to build a 2 players bartop arcade with 2 SNES controllers connectors on the front side of the machine, to be able to play with 4 simultaneous players. Will these 2 empty connectors always appear as existing gamepads even when nothing is plugged in ? -
AuthorPosts