Freeplay Zero Build - thoughts and questions
#11
Hi, thanks for your help. I think I was unclear about some of the problems so I'll clarify when I can.


  1. I am sure I don't have any residue or glue on the d-pad portion of the PCB. One reason is because I never put the dab of glue back over the speaker connectors. Thanks for the link with the cardstock mod. I tried it but it didn't seem to really help so I just removed it. I also learned that GBA d-pads are mushy compared to other consoles (even the GB SP). I don't have a bunch of portable machines with me so it's hard to compare. I just know that with other controllers (xbox one, buffalo snes usb, raspiboy, new nintendo ds, etc) all the d-pads are more clicky. I could love with the d-pad being mushy, if it weren't for ...
  2. The fact it gets stuck sometimes. I know what quick system switch option you are talking about. I actually like it so I leave it on but I never considered it could make ES get sticky with the directional. That is an interesting theory. I can't say for sure if I get stuck in games because my issues are usually the d-pad down direction and in a lot of games, that doesn't really do anything. You are right though, I see it most often in ES when I am not touching anything and all of a sudden it scrolls down to Zelda (end of list). Right now if I press down, it will actually get stuck for 1 second then release. You can see and hear this. It's really annoying. I would order different pads but even at $3 a set, I don't want to keep getting them if I can't be guaranteed they'll be an improvement. I think the silicon pad and the plastic directional cross are actually getting stuck together. PS I know about the two little holes that plug into the posts. I always make sure they are fitted.
  3. If I shave off the bumps on the connectors, are you sure they won't accidentally come out with normal use? I don't mind keeping them in there for a tight "locked" fit except anytime I remove it, I am super scared the two wires will come out. 
  4. If I set my hotkey to select (like normal), do I lose any other functionality? I know I can still use the power button (switch and leave in on position) to initiate the shutdown. Am I missing out on anything else?
  5. Thanks for the tip about triggering the power button twice if I want to set it as the hotkey in the controller configuration. It set it as Button 8. Is that correct?
  6. I'll think about removing the nub. Since I can't think of a reason I'd prefer the power button hotkey, I might just leave it stock (non momentary).
I feel like this is 90% done now. I ordered another shell in order to get a new front face (I really hate my oblong oddly shaped and ugly X Y holes). I also will get a Y screwdriver with it. And new buttons and pads. Hopefully everything can be finalized by next week.
Reply
#12
2) I figured you knew to put the "bumps" over the plastic, but I was just brainstorming there. We have some extra of the silicon pads that go under the dpad. I could send you one to see if it fixes the problem. Let me know if you'd want a replacement to test.

3) I'm pretty certain that the battery connector has quite a lot of friction even with the bumps. In fact, this is what we've done with most of our batteries, because we use them for testing a lot, and that means we're constantly plugging/unplugging them.

4) I don't think so. If SEL is the hotkey, then you just hold SEL and then also tap the other button to do the hotkey combo (IIRC). The main thing (as mentioned) is that in some games, you might accidentally exit (or do other hotkey combos).

5) I think button 8 sounds correct offhand.

6) The whole way the power button was intended to work was to be a power button (not switch). Think of it more like how an iPhone or laptop power button works. The original GBA power switch actually cuts off power to the battery. The FPZ power button sends a signal to the Pi Zero. The software determines what to do with it (like hotkey or shutdown or whatever).

Anyway, do what you like. The whole thing here is that we're supplying hardware, and you can choose how you want to use it. Smile Just because we intended it to be a certain way doesn't mean that it has to be like that.
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
#13
Hmm now that you explained the button vs switch thing, it makes me want to maybe try the mod. Let me try it out as you intended and see how I like it!

Other than the GPIO controller driver, do you know if everything else you have custom (ie shutdown script, es_config, etc) can survive Retropie and kernel upgrades? Will you eventually provide instructions or a script so we can build our own images from scratch OR use an pre-assembled image and be able to patch it to make it FPZ compatible?

I looked at your repo and couldn't figure out what part of the code (in any of the files) is responsible for the way the momentary switch works. I've never seen a Retropie that can handle multiple modes (full switch, press and hold, etc) for a button so I am curious.

Oh thing I noticed is I think the FPZ cannot support restart, of any sort - whether it's from ES or even from a shutdown reboot. Is this a known issue or does it have something to do with my non-modded power switch?
Reply
#14
In theory, the GPIO controller driver is supposed to rebuild itself when you upgrade to a new kernel, but it seems to not work. If anyone that ever reads this is a DKMS expert, maybe they can chime in and help with that piece. At any rate, it's not so difficult to fix, but it is an annoyance.

If you look here https://drive.google.com/drive/u/0/folde...WVoNzNxeVE you can find both instructions to manually add our mods to other SD images and some scripts that are meant to automate this process. I'd say that they're not perfect, but if you're versed in Linux or Rasbian, it should work good enough to get things set up.

The momentary PWR switch code is actually split up based on functionality. The stuff that does the hotkey toggle is in the GPIO driver. The stuff that does the shutdown is in a python script that can be found here: https://github.com/TheFlav/Freeplay-Supp..._daemon.py

You're 100% right about the reboot. What happens is that (when you have the system fully turned off), you press the power button, it supplies power to the FPZ and PiZero. During bootup, the Pi "takes over" and sends a signal that it's in control (which also turns on the green light). When the Pi shuts down (or reboots), the last thing it does is to let go of this signal (which cuts power). If you execute a reboot, it will let go of the signal and then lose power.

This is a Pi thing. It's not a script or software that we provide. It's a function that's built into Raspbian. If there's another way to handle it, I don't know about it. The only way to get it to reboot like you're talking about is to power the PiZero directly through its microUSB (which bypasses all of the FPZ battery and charging circuitry).
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
#15
Thank you so much for this reply, it's super informative. If you're willing, I might try to work on some improvements/scripts to help automate things for other users. None of the steps are difficult for anyone with terminal experience (I know you said it's for advanced users) but it might be nice to have one or two bash scripts people can run to take care of most of it.

Thanks for explaining why restart doesn't work. It's not a big deal, but it's good to understand what's happening behind the scenes.

I did the power switch mod and for now I am sticking with select as the hotkey. I tried it with the switch and it's ok but kind of awkward for me to use. If I come across a game where I am constantly hitting start/select during play, I will definitely switch over to the power switch. Luckily it's really easy to make that change. Thanks again.
Reply
#16
Yeah, we're happy to have help with bash scripting or whatever. We're also happy to have "community" developments that augment or give new functionality. I'm the one that's pretty much responsible for the state of the software, and with the time crunches we seem to always be under, I am mainly just making things work well for the majority of users. We hope/expect there to be people that want to do different things with our hardware, and we're definitely pleased that you'd want to help make some of that more accessible/available.

Did you look inside of that "freeplay-raspbian-setup_8-30-17.zip" file found at https://drive.google.com/drive/u/0/folde...WVoNzNxeVE

It may contain some of the scripting you're talking about, but it could definitely be made more user-friendly. The scripts there are meant to automate the manual process that's in the document, but they're not super easy to use.

One thing I'd like to see that I haven't yet seen (or worked on myself) is trying to install all that on RecalBox. I know a lot of people really like RecalBox, but I haven't seen it run on a Freeplay Zero yet.
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
#17
I haven't touched Recallbox since I am just a fan of RetroPie/ES for now. What I really want to try next is to get a pre-made image and make the FPZ changes to it and make sure it works. I will do that after I get my new shell and fix my d-pad issues. Then I can give you feedback about which parts of the instructions don't work or need adjustment, if any.
Reply
#18
Okay. Great!
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)