ABXY buttons unresponsive
#1
Sorry if this is the wrong place for this. I've been looking around online for a while to no avail. Despite the issue being related to the buttons, I'm fairly certain this is a software issue rather than hardware.

I just got my first Freeplay Zero last night and built it up with little to no trouble. All of the buttons are working except the front letter buttons... The Dpad, start/select, and L/R are all working fine. I'm using the rubber nipple buttons, and have X and Y installed as well. The solder is good (I repair circuit boards for a living so I know what to look for), the traces are clear of debris and damage, and in testing the gpio pins from the zero (according to the fp zero test document) the values for each button pressed are virtually identical to what I measure for the working buttons (like the dpad for instance), so it seems unlikely that it is an issue with the nipple buttons themselves or the traces all the way to the rpi header. I am not having any other issues than these 4 buttons. I've been able to load a couple roms for the purposes of testing, and I have full functionality when connected to a keyboard.

I downloaded and used the image file from the freeplay google drive last night, so I assume it is the most recent version. As I said though, everything else seems to be working fine, it's only those buttons.

I have tried to update the control configuration in the retropie start menu. It says there is one controller detected(the freeplay board), and when I hold a button (any button, even the working ones) to configure the controller, nothing happens. Not sure what's going on.
I'm wondering if there's a configuration file somewhere where I can manually verify the file vs the physical pinout, or if there's just some setup thing I missed.

I'm currently at work, so my ability to reply may be sporadic. On my lunch I'm going to run home and grab the rubber pads and try those instead of the nipple buttons, even though the buttons seem to be working fine.

Any help is appreciated!
Reply
#2
For config stuff, you can take a look at https://github.com/TheFlav/mk_arcade_joystick_rpi

The button driver uses the /etc/modprobe.d/mk_arcade_joystick.conf file.

If you look at the README.md there, you will see a bunch of stuff for installing, calibrating, and testing. If you're using the default buttons and the SD image from Freeplay, then you probably only care about the testing part.

If you can SSH into the machine, then I'd recommend using this to test the joystick device's inputs.
jstest /dev/input/js0

The buttons all use GPIO pins, so you can also test that directly using this command. I _THINK_ it should be available on that SD image.
gpio readall

It will just print the current state of all GPIO. So, run it once and make a note. Then, hold a button while running it again. Maybe even post a copy/paste of that here.

We've seen all sorts of odd problems. One similar (and odd) problem that comes to mind turned out to be a tiny piece (don't recall if it was solder or a wire clipping) that was bridging a couple traces to make the buttons not register.

You should also be able to ring out the traces on the A, B, X, Y buttons back to the Pi header. If you use that same document, you can use your volt meter's continuity tester to see if the button's pad properly routes all the way back to the Pi. If all 4 are not working, then I'd wonder if it's the ground line that's bad.
Card Fighters' Clash 2 English Translation ( http://cfc2english.blogspot.com/ )
Neo Geo Pocket Flash Cart and Linker Project ( http://www.flashmasta.com/ )
Avatar art thanks to Trev-Mun ( http://trevmun.deviantart.com/ )
Reply
#3
You absolute legend!
jstest was exactly what I was looking for.

While running, I tested out all the inputs and all of them were working well except ABXY. I removed one of those buttons and ran it again. I pushed down the exposed button with a pair of tweezers and it triggered in the jstest. Looks like the third party button caps I bought need to be trimmed just a tad. They're getting stopped by the housing of the button so while they feel like they're engaging they're just barely missing contact. I'll trim them down a little bit so they can fully engage and then I should be good to go.

tl;dr (in case this happens to anyone else in the future) - run the jstest and if the buttons aren't registering input, try the buttons again without the caps to see if the caps are your issue


Thanks both for the script I needed and for the fast response!
Reply
#4
That explains why I figured it was software side too... Every time I did the continuity tests on it before posting on here, I had done it fully disassembled, so I was just pushing the buttons with my fingers rather than the caps.
Reply
#5
Awesome! I'm glad you got it worked out AND I'm happy that this is documented here for any future builders that search for a solution.

Thanks!
Card Fighters' Clash 2 English Translation ( http://cfc2english.blogspot.com/ )
Neo Geo Pocket Flash Cart and Linker Project ( http://www.flashmasta.com/ )
Avatar art thanks to Trev-Mun ( http://trevmun.deviantart.com/ )
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)