up & down (y-axis) not working in 3.8
-
@lohocla I fixed this my hexediting HID driver for my USB arcade controller - there's two bytes needed to change - look at my issue reported here https://github.com/raspberrypi/linux/issues/1527/ to see which bytes must be swaped.
-
Is it possible to publish this fix in the main linux kernel?
My linux main-system (Ubuntu 16.04/kernel 4.4.0-31-generic) also has this problem with the joypad!GitHub driver:
https://github.com/torvalds/linux/blob/c05c2ec96bb8b7310da1055c7b9d786a3ec6dc0c/drivers/hid/hid-dr.c -
Is there any way of implementing a quick fix? @SeC, is hexediting the driver something easily done? (googling has only led to a limited understanding of what hexediting is..)
-
@Ravneson You need to install hex editor (ht for example, http://hte.sourceforge.net/, it should be in apt database). Then find hid-dr.so (find / -name hid-dr.so), edit it, look for byte pattern:
09 30 09 33 09 32 09 31 09 34
replace with
09 30 09 31 09 32 09 33 09 34(swap 31 with 33 and vice-versa)
save file, restart, should be ok. Don't remember if driver name is as I wroted (I'm at work now, can't check). Let me know if you need more help as I can prepare simple script to make that change if you don't make it :)
-
@SeC Got ht installed just fine, but stranded on finding the driver as you mentioned it. The closest I could find was "hid-dr.ko", but that couldn't be edited by ht (or at least didn't contain the expected content).. If it isn't too much of a bother it would be great if you could check the driver name as I gave a few suspicious candidates a try to no avail.. (a script would be very gracious of you, but I'm pretty sure I can manage to edit the patterns if I just find the right file :) )
Thanks ever so much for the help! :)
-
@Ravneson Hey, there are 2 locations to edit:
lib\modules\4.4.11+\kernel\drivers\hid
lib\modules\4.4.11-v7+\kernel\drivers\hidfile name is hid-dr.ko
MAke changes to both files, as I don't know which one will be loaded for you. Save changes then reboot, Y axis should be fine.
Look at the picture below, I've marked pattern you need to change (just swap 33 with 31, keep in mind those are hex values, not text). Picture is from windows box, so don't worry :)
-
@SeC Thank you!! :) :) That worked just brilliantly! (for anyone else having the same issue, hexcurse turned out to be a simple & fast hex-editor that can be installed & used on ones Pi)
Cheers!
-
@SeC said in up & down (y-axis) not working in 3.8:
@lohocla I fixed this my hexediting HID driver for my USB arcade controller - there's two bytes needed to change - look at my issue reported here https://github.com/raspberrypi/linux/issues/1527/ to see which bytes must be swaped.
Did you report this upstream btw as mentioned https://github.com/raspberrypi/linux/issues/1527/#issuecomment-225559930 ? (Would be good to get the fix in a future release).
-
@BuZz Didn't have time to prepare proper patch with description, but I have this in my TODO list this week.
-
Hi btw, hope you don't mind me popping in and getting some help, I seem to be having the same problem as you chaps ... now I'm a Linux noob (Boo) ok :/ I've done so well as to install hexcurse and also find the correct files to edit, I have edited these files but come across a write problem. 'Cannot write to file: bad permissions'
Help me please, as I'm going 1 step forwards and 2 steps back.
Thanks. Lee.
-
@Roadkilluk Are you running hexcurse as a superuser, i.e. "sudo hexcurse <filename>"? If not then that could explain why you don't have permission to write to the driver files.
-
@Ravneson said in up & down (y-axis) not working in 3.8:
@Roadkilluk Are you running hexcurse as a superuser, i.e. "sudo hexcurse <filename>"? If not then that could explain why you don't have permission to write to the driver files.
Spot on, thanks for that "Super User DO" ... I see :)
Cheers, I'm now losing at Sensi Soccer with no excuses !!
Lee.
-
@SeC said in up & down (y-axis) not working in 3.8:
@BuZz Didn't have time to prepare proper patch with description, but I have this in my TODO list this week.
Hey, did you find the time to make this happen?
-
A patch would be lovely!
I do not know how to install a hexeditor to retropie :(
-
Since I do not know how to install hex editor in PI...
If I take these files, copy them over to my PC using WinSCP, open them with XVI32, do the substitution then...Can I copy the files back to Pi using WinSCP or they are protected and cannot be overwritten?
-
@Pyjamarama I answer myself. Yes you can. You need to ho bash and sudo cp blah blah (winscp cannot overwite them)
-
After hex edit the driver, the left and right buttons does not work in ES(I use L/R button to skip page). But these button works in games. Does anyone has this problem?
-
re configure the controller in emulaionstation
-
@Pyjamarama I did that but it's not working.
-
This seems like a big enough issue to warrant a patch. It seems that encoder that shows up as Dragonrise is used by many for its ease of use and price. If I FTP the file off, edit it in Windows, and FTP it back, will that be ok?
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.