RPi4.arm vs. RPi4.aarch64 nightly builds


What’s different between the RPi4.arm and RPi4.aarch64 versions of Lakka? It’s just the migration to a 64 bit architecture? Are the features the same in both versions, or are there differences e.g. in the available cores, system settings or utilities?


Yes, 32 vs 64 bit, AFAIK. Some cores run faster slightly faster with 64-bit (beetle-psx, bsnes), others run much faster with 32-bit (picodrive, pcsx-rearmed).

Hi @hunterk, thanks for the clarification, that makes sense. For my part, I’m more interested in FBNeo, MAME and consoles up to 16 bit. I’m already satisfied with the speed/performance of the emulation. On the RPi4, I just noticed that the GPIO features don’t work (like the power off button, status light, and fan control), and I thought I might be using the wrong version.

You should be able to use RPi.GPIO in nighty builds. If needed there is an example for the Retroflag NESPi 4.

@gouchi, thanks. I had a look at this. It did not work at first, but somehow I managed to fix it… :slight_smile: There is a conflict between @DevilBlackDeath 's script and one line it writes to config.txt when it’s installed. That causes a kernel panic when the shutdown button was pressed. I removed the offending line and the shutdown button now works fine.

Just to reclarify on a public topic for others, the kernel panic is expected behavior in this case. With dt-overlay=gpio-poweroff the pi’s kernel expects to have its power cutoff (it is after all sending a poweroff in order to indicate shutdown is complete and power can be turned off), but if you don’t have a case with a button or have a case with a button, but that button is still on, then power isn’t cut off, and the kernel panic is thrown after 3 seconds as a warning message. As far as I can tell from what I’ve read, this is not an “actual” kernel panic, in the sense that the kernel critically failed, and your system is at risk, it’s intentionally triggered as a warning of unintended behavior.

I’ll probably add something to the README but if you’re using a safe shutdown script, you should only shutdown your system by using the poweroff button (at least when your case comes with an on/off switch instead of a push switch, push switch cases could definitely be turned off with normal shutdown options).

Here are some MAME benchmarks that compare 32 bit vs 64 bit on RPi3 and RPi4 that might be useful for deciding.


@DevilBlackDeath, thanks, I was not aware of this detail. My shutdown button is just a momentary switch. Maybe that was the problem. Anyway, it woooorks! :sunglasses:

As an alternative to a warning in the README, you could tweak the install script in order to ask the user what kind of case/power button he’s using, and only add the dtoverlay line to config.txt if appropriate.

Hi all,

I’ve also been comparing 32 vs 64 bit on my Raspberry Pi 3 and have noticed, as mentioned earlier in this thread, that pcsx-rearmed performs much better with 32-bit.

I understand that that dynarec is unavailable in the aarch64 image. Will this be available in future 64-bit releases or are there issues that make this difficult to implement?