I have been able to get both recognized as joysticks. Both are working fine in Emulationstation. Both register fine with jstest. However, when I run Mame or NES emulators (and probably the others, but these are the 2 I am trying right now), I get a behavior on the buttons where they appear to think they are being held down all the time (sort of).
As an example, when I’m trying Double Dragon, I can play fine for a bit and then all buttons will just stop responding (the joystick directions continue fine though). However, if I push in kick and hold it, then the other buttons start responding again as long as I have it held in. As soon as I release it, all the other buttons stop responding again. If I go into MAME configuration via hitting tab and re-assign the buttons, they will function for a while until the behavior returns.
No matter what I do in jstest, I cannot get anything like this to happen. They always register fine on/off as I am pressing them and never become non-responsive. I saw the thread on the directional auto-fire, but I don’t think that this is the same thing since the joystick controls never have any issue, just the buttons.
Does any of this sound familiar to anyone? Let me know if there is any additional info or logs I could supply that might help.
So I figured this out. I wanted to post a summary of what I had done wrong in case anyone ever stumbles upon this thread.
As it turns out, I had wired the microswitches for my buttons incorrectly. I was using the “C” (common) terminal and the “NC” (normally closed) terminal. What this means is that the button was firing when not being hit and then would stop when you pressed it in. I have no idea why the emulators were ever registering any presses in this configuration, but they were. Once I switched over to using the “C” and “NO” (normally open) terminals, everything was just fine.
All it took was me getting frustrated enough to post on the forums to get the answer.