Freeplaytech Forum

Full Version: After update, gamepad stops working [Freeplay Zero]
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
I’ve finished a very fine Freeplay Zero build, and it’s booting from the most current (6/25) Freeplay Zero image fine. Games play, everything works as it should.

However, after updating RetroPie (from the setup script from shell after exiting Emulation Station) on reboot I totally lose access to the gamepad.

On reboot, once Emulation Station comes up the no gamepad buttons/controls work. 

I can shell in, and using the setup script I’ve tried deleting the controller configs and even replacing the custom Freeplay gamepad config files without luck. I get the no controller detected screen on reboot but it doesn’t recognize any buttons.

Also I’m doing a A-B button only setup (I snipped off the X-Y buttons), but the XY spots seem clear of any obstruction in the shell.

I reflash and everything works again, until I update.

Any ideas?
Yes. The mk_arcade_joystick_rpi driver doesn't seem to rebuild/reinstall itself after a kernel upgrade. It is supposed to, but I still can't figure out why it doesn't. When an update includes a new kernel, this will often happen. Here are the commands to fix it (after rebooting with the new kernel).

ls /usr/src/

Look for an entry called mk_arcade_joystick_rpi-0.1.5.6
(Note that I am assuming that the one you have is 0.1.5.6, but if it isn't, just modify the following commands.)

sudo dkms build -m mk_arcade_joystick_rpi -v 0.1.5.6
sudo dkms install -m mk_arcade_joystick_rpi -v 0.1.5.6

After that, just reboot. You shouldn't need to change any configs or anything.
(07-02-2018, 06:46 AM)Flavor Wrote: [ -> ]Look for an entry called mk_arcade_joystick_rpi-0.1.5.6    
Thank you for the info, totally makes sense. I’m traveling  right now but will try this once I get back home.
(07-02-2018, 06:46 AM)Flavor Wrote: [ -> ]Yes.  The mk_arcade_joystick_rpi driver doesn't seem to rebuild/reinstall itself after a kernel upgrade.  It is supposed to, but I still can't figure out why it doesn't.  When an update includes a new kernel, this will often happen.  Here are the commands to fix it (after rebooting with the new kernel).

ls /usr/src/

Look for an entry called mk_arcade_joystick_rpi-0.1.5.6    
(Note that I am assuming that the one you have is 0.1.5.6, but if it isn't, just modify the following commands.)

sudo dkms build -m mk_arcade_joystick_rpi -v 0.1.5.6
sudo dkms install -m mk_arcade_joystick_rpi -v 0.1.5.6

After that, just reboot.  You shouldn't need to change any configs or anything.

I'm in the same boat. I was trying to see if I could get ppsspp to work by updating Retropie. I've tried 0.1.5.6, 0.1.5.7 and 0.1.5.10 and neither seem to work.
(06-13-2019, 03:50 AM)TexasPorcupine Wrote: [ -> ]I'm in the same boat. I was trying to see if I could get ppsspp to work by updating Retropie. I've tried 0.1.5.6, 0.1.5.7 and 0.1.5.10 and neither seem to work.

After updating to the latest (which I think is now 0.1.6.0), can you post the output of
Code:
cat /etc/modprobe.d/mk_arcade_joystick.conf

It really only needs a single line in there, but it may be rather large if you tried to update several times. I'm guessing that you have an old line in there that doesn't have the correct number of options for the gpio parameter (just a guess).
(06-13-2019, 04:35 AM)Flavor Wrote: [ -> ]
(06-13-2019, 03:50 AM)TexasPorcupine Wrote: [ -> ]I'm in the same boat. I was trying to see if I could get ppsspp to work by updating Retropie. I've tried 0.1.5.6, 0.1.5.7 and 0.1.5.10 and neither seem to work.

After updating to the latest (which I think is now 0.1.6.0), can you post the output of
Code:
cat /etc/modprobe.d/mk_arcade_joystick.conf

It really only needs a single line in there, but it may be rather large if you tried to update several times.  I'm guessing that you have an old line in there that doesn't have the correct number of options for the gpio parameter (just a guess).
Okay, this is the response I got:


options mk_arcade_joystick_rpi map=4 gpio=4,17,6,5,19,26,16,24,23,18,15,14,-20,-1,-1,-1,-1,-1,-1,-1,-1 hkmode=2
#this next line is for use with 4 extra buttons (maybe L2,R2,C,Z)
#options mk_arcade_joystick_rpi map=4 gpio=4,17,6,5,19,26,16,24,23,18,15,14,-20,42,43,41,40,-1,-1,-1,-1 hkmode=2
#this next line is for use with a single PSP1000 analog stick
#options mk_arcade_joystick_rpi map=4 hkmode=2 i2cbus=1 x1addr=72 y1addr=77 gpio=4,17,6,5,19,26,16,24,23,18,15,14,-20,42,43,-1,41,-1,-1,-1,-1
#this next line is for use with 2 PSP1000 analog sticks
#options mk_arcade_joystick_rpi map=4 hkmode=2 i2cbus=1 x1addr=72 y1addr=77 x2addr=75 y2addr=79 gpio=4,17,6,5,19,26,16,24,23,18,15,14,-20,42,43,-1,41,-1,-1,-1,-1
#this next line is an example for use with 8 extra buttons (maybe L2,R2,C,Z,TOP,TOP2,BASE,BASE2)
#options mk_arcade_joystick_rpi map=4 gpio=4,17,6,5,19,26,16,24,23,18,15,14,-20,42,43,41,40,35,36,37,38 hkmode=2
#this next line is for use with a single PSP1000 analog stick using min/max/fuzz/flat parameters
#options mk_arcade_joystick_rpi map=4 hkmode=2 i2cbus=1 x1addr=72 y1addr=77 x1params=374,3418,16,384 y1params=517,3378,16,384 gpio=4,17,6,5,19,26,16,24,23,18,15,14,-20,42,43,-1,41,-1,-1,-1,-1


Thank you!
Yeah, I may have tried a time or two...

whoops. I'm still learning this whole Linux/retropie thing  Big Grin
okay I think I figured it out! I entered:

sudo dkms uninstall -m mk_arcade_joystick_rpi -v 0.1.5.7

which I guess was the last one I installed.

I then entered:

sudo dkms install -m mk_arcade_joystick_rpi -v 0.1.5.10

and now everything seems to work fine.

Thank you for the guidance!
As TexasPorcupine found out, you have to make sure to uninstall all old versions of the driver that may be installed (though there shouldn't be any since DKMS doesn't seem to like the module), then install the most recent version.

In the coming weeks I will be writing a small service that checks on boot if the module is installed, and installs it if it is not (eg after a kernel update).

I also recommend updating to the most recent version of the driver since the install script has been overhauled; you should only need to go to /home/pi/Freeplay/mk_arcade_joystick_rpi and run the install.sh file in there.
Thank you for that info Mootikins.

Now if I could figure why none of my ROMs will launch...
Pages: 1 2