Playlists On Optical Disc Not Displaying In UI

I posted this issue on the official Lakka Reddit page to get some guidance a few days ago, which was of some help, but figured I’d tap into the brain trust here as well for more answers.

I’m using the latest stable release of Lakka on the Raspberry Pi 3B+ and I’m attempting to run ROMs off an external DVD drive. On the disc, I have the playlist .lpl files and customized icons for the corresponding playlists. On first boot or any reboot, neither appear until I manually select “Restart Retroarch”. Why can’t these load automatically when I’m pointing to the correct and intended directories already?

The drive, sr0, is already auto-mounted to “/storage/roms/bitdisc” (“bitdisc” being the generic name/label of the disc) and I can browse it fine when I go to “Load Content” even if I can’t see the playlists as a menu item yet. The drive is most definitely working and accessible. It’s hooked up through a powered USB Hub, but even plugging both USB ends into the pi directly didn’t solve any problems.

The icons are symlinked in “/storage/assets/xmb/monochrome/png” and are verified to work. Again, hitting “Restart Retroarch” brings everything up, but I’m trying to avoid me and my users doing this every single time we wish to play a game or reboot the system.

I’ve tried editing autostart.sh to change the mount/sleep options, but no matter what I do, Lakka still behaves the same. I’ve also symlinked the entire playlists directory under “storage” to be pointed directly to my disc and it’s the same deal. When I browse to the IP in Windows, clicking on the “Playlists” folder correctly takes me to the inserted disc’s contents as intended, but the actual Lakka UI is still pretty clueless as to what’s going on until a restart.

So could somebody explain to me where the breakdown in the configuration is and hopefully how to correct it? This seems like such a silly and simple thing to have a major problem with and I’ve completely hit a brick wall in this project because of this.

Have you tried restarting the retroarch service from the autostart.sh? that is, to trigger the refresh automatically?

How would I go about doing that? Not sure what command to use.

systemctl stop retroarch.service

will stop it. Replace “stop” with “start” to restart it.

1 Like

I think I’m getting somewhere with that command, but I’m not entirely sure how to format it in autostart.sh. I’ve been doing my best to sponge up Linux info. over the last week (I can do basic low level stuff), but everything I’ve tried doesn’t work lol.

What would be to correct way to write out the stop/start sequence? Because it does what I need in the straight CLI.

The only thing that seems to work in the file is the timezone lol.

I would think this would do it:

systemctl stop retroarch.service && systemctl start retroarch.service

but if it’s not working it may be that the systemctl needs elevated privileges (I don’t recall if it does or not), in which case we’ll have to think of something else.

Hmmm, seems like that command froze up my boot sequence. No worries though, I actually stumbled on a solution myself by just trying whatever I could think of.

#! /bin/bash (sleep 3; systemctl stop retroarch.service; systemctl start retroarch.service; export TZ=“America/New_York” ) &

Now, that’s probably a mess, but it works… most of the time. Sometimes, it will restart and still not load the disc lol. I’m sure that command could be greatly improved upon haha.

Still, this is a giant leap in progress. Thank you!!

1 Like