GPi Zero 2 v1.52 & GPi Zero v1.15(Retropie Images for Pi Zero/Zero2 + GPi Case 1 & GPi Case 2W)
-
Hey, I don't own any GPi cases. Could I edit a .txt and get it working via HDMI? Getting a blank screen at the moment.
Ta.
Jamie -
@Twippy what do you own atm? Would make more sense to just use a regular RetroPie image if you're going for HDMI on a tv usually
-
Edit /boot/config.txt (This is on the Windows/Any OS Made In The 21st Century accessible partition created on the SD card) and remove the following:
###gpicase### boot_delay=3 dtoverlay=audremap,pins_18_19,swap_lr display_rotate=1 dtoverlay=dpi24 overscan_left=0 overscan_right=0 overscan_top=0 overscan_bottom=0 framebuffer_width=320 framebuffer_height=240 enable_dpi_lcd=1 display_default_lcd=1 dpi_group=2 dpi_mode=87 dpi_output_format=0x6016 #hdmi_timings=320 0 28 18 28 480 0 2 2 4 0 0 0 60 0 32000000 6 hdmi_timings=240 1 38 10 20 320 1 20 4 4 0 0 0 60 0 6400000 1 avoid_safe_mode=1 disable_pvt=1 disable_audio_dither=1 extra_transpose_buffer=2 audio_pwm_mode=2 dtparam=act_led_trigger=default-on ###gpicase###
When running a Pi Zero 2 on a TV, I also uncomment disable_overscan=1 and add the following lines to config.txt:
overscan_scale=1 hdmi_force_hotplug=1 hdmi_drive=2
I'm not sure if it will prompt you to configure an input if it doesn't detect the GPi Case's controller: If so, just configure as usual, if not, the simplest way to fix this would be to connect a keyboard, hit ALT+F4 to drop to a command prompt and run:
sudo ~/RetroPie-Setup/retropie_setup.sh
Then go to Manage Packages -> Core Packages -> emulationstation -> Configuration or
Configuration / Tools -> emulationstation and choose the option to Clear/Reset Emulation Station's input configuration.Once it's all up and running, you'll probably want to disable mono sound mixing and get stereo sound back: Connect to your WiFi, enable SSH under the "Advanced Settings" menu and connect to the hostname "gpizero2" with the username pi and the password raspberry (Or just do this with a keyboard like the config reset step). Then run the following:
sudo echo "# default stereo mix" > /etc/asound.conf
Reboot for the changes to take effect.
It would also probably be a good idea to remove the HDMI/LCD detection script and the GPi Case Safe Shutdown python daemon. From a command prompt, run:
sudo nano /etc/rc.local
And remove the following two lines:
sudo /home/pi/gpihdmiout/detect.sh & sudo python3 /opt/RetroFlag/SafeShutdown.py &
Hit CTRL+X, then Y to save the changes.
Note that there are two minor issues I've found in 1.5 since I released it: lr-picodrive is not set as the default Sega CD emulator and apparently lr-gambatte maps L1/R1 to palette switching functions now that need disabled and saved as a core override so save state/state load work properly for Gameboy games.
-
@Sliver-X said in GPi Zero 2 v1.5 (Retroflag GPi Image for Pi Zero 2 W):
I have two units: Beside the negative battery terminal on the circuit board is printed "V 11" and the combination to change Dpad modes is Start+Up and Start+Left. The image works on both, but I'm aware there is another revision of the board that uses Select+Up and Select+Up. Is that the combination on yours?
I'm trying to trouble shoot a similar issue where the D-pad doesn't work on a fresh install of v1.5. The GPi case version looks like V11 D, do yours also have the 'D'?
I've tried several SD cards and each time the D-pad doesn't work, although buttons seem to be ok. Switching to DC power rather than batteries fixed a random problem where Emulation Station would crash on first boot.
I haven't tried updating the bootloader on the Zero 2, so might try that after disassembling the GPi and connecting a screen etc.
If anyone has any suggestions I would be very grateful! Recalbox works fine, but definitely prefer your work here @Sliver-X if I can get it working!
-
@SignedUp I can confirm that with my V11D case the D-pad does not work with the v1.5 image.
-
Neither of my units have a D on the PCB.
I configured the image on a unit set to "Axis" mode, which is Select+Left on these particular models. You've tried holding Select+Left or Start+Left for three seconds until the power LED flashes purple? Barring that, for whatever reason, does Select+Up or Start+Up do anything?
-
This post is deleted! -
@Sliver-X thanks for the follow up. I didn't realise there were key combo's that might change some kind of settings, so I've tried a few on this V11D case. I've tried these once the image has booted up to the main horizontal / icon menu. Only two seem to do anything:
-
Hold Start + Up on D-pad = red power LED flashes purple momentarily, after about 4 secs of holding buttons. This works pretty reliably, but appears to do nothing other than flash the power LED. D-pad still doesn't work.
-
About 1 time in 5-10 attempts, Start + Left on D-pad also flashes the power LED purple, after which the D-pad now works!
So if it isn't working for you, keep trying the holding down of Start + Left on the D-pad, for 4-5 seconds. Repeat and keep your fingers crossed until the Power LED momentarily flashes from Red to Purple and hopefully your D-pad will now work too.
Thanks again @Sliver-X for a great image (that I can now enjoy!) and for keeping track of this thread to trouble shoot this strange issue with different hardware versions of the GPi case.
-
-
You're welcome, glad that's what it was: I had created a new image that prompts for input config on first load in case this was actually some kind of hardware revision issue instead of the normal mode problem you encountered.
I made some minor fixes as well: I think I've gotten the 50/50 chance of EmulationStation crashing on first boot after the data partition resize runs fixed, set lr-picodrive back as the default Sega CD emulator and replaced lib-fceumm with lib-fceumm-mod (Adds support for a lot more mappers while retaining Save State/SRM compatability with lr-fceumm). I may continue to poke around with it over the next couple of months and release it at some point.
-
Would it be possible to provide the added scripts (I'm mostly interested in the Wi-Fi/Bluetooth Toggle scripts) as standalone package and maybe some more information about the other changes?
I'm asking this because I just picked up a GPI Case 2 with a CM4 lite so I probably can't use the image itself.
-
-
@Sliver-X Oops, guess I was too lazy to scroll up. Although maybe it would be useful to add those links to the first post.
Thanks anyway.
Edit: I just looked at ssh, Bluetooth and WiFi script. Are those permanent changes that will stay after a reboot?
-
Yes, the changes they all make are persistent.
edit
I've also added links to the scripts and themes in the initial post of the thread.
However, I would be hesitant about using the CPU Overclocking or Active CPU Cores scripts on anything but a Pi Zero 2, unless you make modifications to compensate for the hardware on a CM4/etc. All the others are hardware agnostic, but I did do bad practice and hardcoded /home/pi in a few places, which may present problems in the future as Raspian doesn't use the account pi by default anymore.
-
@Sliver-X No problem. Like I said, I'm just interested in the BT/WiFi script to save power. But does the rfkill method actually helps with that?
I was thinking of this and also used to add the following to the config.txt for a different installation:
dtoverlay=disable-wifi dtoverlay=disable-bt
I don't know if that also works on a Pi Zero though, but would that be a better solution to save power?
-
Editing config.txt requires a reboot to make the changes take effect (This was unavoidable for the Overclock, Active Cores and SD Card Bus scripts since there's not really a way to change those attributes on a running system): rfkill is a software controlled switch that has immediate effect and literally turns off/on the radio(s) at the hardware level, so it would save power to the same degree.
See the following for a much deeper explanation of how rfkill works:
https://www.kernel.org/doc/html/latest/driver-api/rfkill.html -
@Sliver-X said in GPi Zero 2 v1.5 (Retroflag GPi Image for Pi Zero 2 W):
You're welcome, glad that's what it was: I had created a new image that prompts for input config on first load in case this was actually some kind of hardware revision issue instead of the normal mode problem you encountered.
I made some minor fixes as well: I think I've gotten the 50/50 chance of EmulationStation crashing on first boot after the data partition resize runs fixed, set lr-picodrive back as the default Sega CD emulator and replaced lib-fceumm with lib-fceumm-mod (Adds support for a lot more mappers while retaining Save State/SRM compatability with lr-fceumm). I may continue to poke around with it over the next couple of months and release it at some point.
Can you share the image with the prompts for input?
I tried the button combinations and none had any effect. Start+Select+Left/Right/Up make the light purple and blink, but it had no effect. All buttons work minus the d-pad
-
excuse me,after using the hdmi mode, I have tried to run this in pi400, because I am lazy to make a hole for HDMI in gpi, then it stucks by “fail to add service already in use?”, after i find out it’s the problem about pi400 have no legacy GL driver stuff? as a noob i am not quite understand so call no legacy GL work on pi400, it will stuck some emulators or make ES no functions? I just wana figure out will it work for pi400 a little, after all I like this image and very appreciate your Optimization, if you don’t mind i even add the pokemonmini logo in your theme, and its size seems work well. Making two retropie ,oh it’s wasting sd card and troublesome.
-
The Pi3/older and Pi4 images are not compatible - you can't use the same image on both systems.
-
@mitu thanks for reply, I may make an new image for 400 tho =)
-
I'm not sure why setting Axis Mode doesn't work for your device unless it's some kind of hardware issue, but I've come up with a method to accomplish resetting the control config while still having them defined by default (Change 8 under Hardware/OS):
v1.51
[Hardware/OS] 1) Updated all OS components to current as of September 22nd 2022. 2) Adjusted partition resize script: ES much less likely to crash on first boot, now. 3) Help screen on first boot explaining how to set Axis Mode for D-pad. 4) Safe Shutdown now verbose instead of a blank screen. 5) New default boot splash screen. 6) Two CPU cores disabled/two active. Can be changed in Advanced Settings. 7) Removed kernel headers and modules for Raspberry Pi 3 boards. 8) Added a failsafe for dpad not working: Creating a file named RECONFIGURE_CONTROLS on the FAT32 boot partition will wipe Retropie's control config and prompt for user defined inputs. 9) Corrected XML errors for unused Dreamcast layout in Eridu, Girsu, Ur and Lagash themes. [EmulationStation] Updated to 9/22/2022 Git build. [Retroarch] 1) Updated to 9/22/2022 application/core builds. 2) Set lr-picodrive back as default Sega CD emulator. [RetroPie] Updated to 9/22/2022 Git build.
I'll release it once I'm totally satisfied with testing, as I want this to be the absolute, forever, really this time version of this project: I also want to make a patch for v1.5 so those running it don't have to do a full re-image yet again.
As it stands, this should resolve all issues that have been reported to me over the course of making this.
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.