Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 2497

Raspberry Pi OS • Re: Nespi4 case safe shutdown script to use in raspberrypi OS and which method should i use to boot from an SSD?

$
0
0
Hi,

That post is probably longer than you would expect... :)

As for the SSD, I'd go ahead and do what Retroflag recommends. If I'm not mistaken, you need to insert the SSD into the top half of your Nespi 4 case, connect it by USB to a Windows PC, format the SSD and flash the firmware. But make sure you follow the official instructions ;)

Concerning the buttons: Normally, you would just follow the instructions on Github (link found on the Retroflag website), i. e. you would change to the console or start a terminal window and enter

Code:

wget -O - "https://raw.githubusercontent.com/RetroFlag/retroflag-picase/master/install.sh" | sudo bash
. You will probably run into a few snags along the way, though: Up until Raspberry OS Buster, the script worked quite flawlessly. Since Raspberry OS Bookworm (which you presumably installed), the script has a few issues:
  • The install script adds two lines to the file /boot/config.txt. Since Bookworm, config.txt resides in /boot/firmware/.
  • The script also adds a line to /etc/rc.local, which runs SafeShutdown.py, the Python script that monitors the Nespi case's buttons. The use of rc.local is discouraged, because there may be a few security issues with it, and it was removed from Bookworm.
  • Originally, SafeShutdown.py relied on the python module RPi.GPIO, which has been replaced by rpi-lgpio (see https://pypi.org/project/rpi-lgpio/ or https://github.com/waveform80/rpi-lgpio), which is supposed to be a drop-in replacement. I'm not sure whether all of the old script's functionality has been transferred, though.
How to solve these issues? Well...
  • The first issue can be corrected manually by downloading the Retroflag script (leave out the part "| sudo bash" at the end) and editing the relevant sections. After the changes are made, you can just run it with sudo bash ./install.sh.
  • As for the second issue, you may create a new /etc/rc.local file if the security aspects don't bother you. Just add the text exit 0 as its last (or only) line and the install script does the rest for you. However, it might be better to create a systemd entry that runs the Python script as well. I tried this but am not yet sure if this is really working on my system.
  • The third issue is the trickiest, since it would require delving into the Python code and check which routine is working and which one isn't.
The official Retroflag repo appears to be dead at the moment. They have a few issues and pull requests in their pipeline, so there's probably no help from that side, at least at the moment.

I'll continue to look into this issue (whenever I have time) and can share my results if someone's interested. Getting these buttons and the LED to work should not be an insurmountable issue in my opinion.

There's an alternative to the official script (https://github.com/crcerror/retroflag-picase) whose author cyperghost is also a forum member if I'm not mistaken. However, since you're not using RetroPie, it's probably not that useful for you. Also, it suffers from the same issues.

Statistics: Posted by interlinguex — Sat Mar 08, 2025 7:48 pm



Viewing all articles
Browse latest Browse all 2497

Trending Articles