5.0 / 13-04-2024
Lakka
Accuracy
Performance
Features
Lakka is a lightweight a open-source Linux distribution that converts small computers into full blown retrogaming consoles. It's also the official Linux distribution of RetroArch and is able to emulate a wide variety of systems and has some useful features such as automatic joypad recognition, rewinding, netplay, and shaders.
...
Most Recent Changes
--5.0--
Based on LibreELEC 11.0 build system
RetroArch updated to 1.17.0
Cores updated to their most recent versions
New cores added:
dirksimple
: Dragon’s Lair player
dosbox-core
: DOSBox
ep128emu
: Enterprise 64/128, Videoton TVC, Amstrad CPC and ZX Spectrum
geolith
: Neo Geo AES and MVS Cartridge Systems
jaxe
: XO-CHIP/S-CHIP/CHIP-8
numero
: TI-83
thepowdertoy
: The Powder Toy
vice_xpet
: Commodore PET
vircon32
: Virtual Game Console inspired by 16/32-bit systems
vitaquake2
: Quake IIMesa updated to 24.0.4
Updated Linux kernelmainline: 6.1.84
raspberry: 6.1.77
amlogic: 6.1.38Added images for following devicesRaspberry Pi 5
Raspberry Pi Zero 2 in Retroflag GPI Case 2W
Raspberry Pi Compute Module 4 in Retroflag GPI Case 2
Generic PC:Support for nVidia GPUs (using proprietary nVidia driver, separate image)
Allwinner SOC:OrangePi Zero2
OrangePi 3 LTS
Amlogic SOC:BananaPi CM4
BananaPi M2 Pro
BananaPi M2S
BananaPi M5
Radxa Zero
Radxa Zero2
WeTek Core
WeTek Hub
WeTek Play 2
Rockchip SOC:Firefly ROC-PC Plus
OrangePi 4 LTS
Radxa Rock Pi 4 Plus
Radxa Rock Pi 4 C PlusRetrorama - theme and dynamic wallpapers for XMB
--4.3--
RetroArch updated to 1.14.0
Cores updated to their most recent versions
fake-08
: added new libretro core (Pico-8)
mojozork
: added new libretro core (Z-Machine)
puae2021
: added new libretro core (Amiga, less demanding version of the core)Mesa updated to 22.1.7
Added image for Orange Pi 4 LTS (Rockchip RK3399)
Added support for more Nintendo Switch variants (Hekate 6.0.1+ is required, on Nintento Switch Lite use touchscreen to change the default input device: Settings → Input → Port 1 Controls → Device Index → top most item)
Updated Linux kernelmainline: 5.10.123
raspberry: 5.10.110
amlogic: 5.11.22
--4.2--
RetroArch updated to 1.10.3
Cores updated to their most recent versions
a5200
: added new libretro corerace
: fixed savestates on arm platformsMesa updated to 22.0.2
Amlogic: disable composite output on generic TV boxes by default
Generic: fix/add back support for Ventoy
--4.1--
RetroArch updated to version 1.10.2
Cores updated to their most recent versions
New cores added
race
: Neo-Geo Pocket
bk-emulator
: BK-0010/0011/Terak 8510a
same_cdi
: Philips CD-i
mame
: MAME current
RetroArch: fixed scanning of .wbfs Nintendo Wii games
pcsx_rearmed
: fixed dynarec on aarch64duckstation
core (Sony Playstation) removedMesa updated to version 22.0.1
Mainline kernel updated to 5.10.109 (PC, Amlogic, Allwinner, NXP)
Raspberry kernel updated to 5.10.103
Nvidia support fixed (driver is now compiled as module)
Added Support for USB Wi-Fi dongles ASUS BT500 and TP-Link UB500
RPi.GPIO Python library added to all Raspberry Pi images (support for custom scripts for various cases)
System files for standalone cores added (no need to add them manually, but we disabled the system files downloader in Lakka - see below)
Removed system files downloader
System files downloader was removed from Lakka, as Lakka already ships files in the system
folder required by various cores. It is still possible to add own files as before, but as some of these files have to match the version of the libretro core, this feature is not available in Lakka in order to avoid incompatibility between core and the files in system
folder (espcially in case of PPSSPP). Files required by following cores are included in the Lakka image:
cannonball
: tile patch and tile map files, you have to add your ROM files if you want to use the core from the standalone launcherdinothawr
dolphin
ecwolf
fbneo
: high score filemame2003-plus
: artwork, high score / cheat / history filesmame
: artwork and sample filesnxengine
: Cave Story filesppsspp
: assetsprboom
scummvm
: themes and DAT files for various game enginesuae4arm
: floppy drive soundsxrick
If you have already added some system files to your Lakka, they will still have priority over files in the image. To remove these files, please remove them via SCP / SFTP from the /storage/system
folder (do not remove them via SAMBA share System
, as this share shows already the path used by RetroArch; you can use the share to add new files).
Bluetooth pairing
Couple releases back a hack was added to RetroArch to remove existing pairings. This is useful in case you need to re-pair a game controller (e.g. you paired it with different device), but as the pairing is already stored in the Lakka OS, only attempt to connect is made. To remove pairing, simply navigate to Settings
→ Bluetooth
, wait for the scanning to finish (you do not need to put your game controller in pairing mode yet) and if you see your game controller, scroll to it and then press the Start
button on connected game controller or press the Space
key on the keyboard. Then restart RetroArch, switch on pairing mode on your game controller, navigate to Settings
→ Bluetooth
, wait for the scanning to finish and chose your game controller for pairing.
We have also added a small fix in cases your game controller would not reconnect after it was already succesfully paired, but it will not automatically connect after waking it up / rebooting. However you need to re-pair your game controller, so please follow the steps in previous paragraph.
To auto-connect your paired game controller after boot, make sure that Bluetooth service is enabled via Settings
→ Services
→ Bluetooth
.
Vulkan / GL
Many cores already support Vulkan, therefore on platforms, where Vulkan support is included (PC with Intel and AMD GPU, Raspberry Pi 4, Nintendo Switch) we recommend using the vulkan
video driver (Settings
→ Video
→ Output
→ Video
). Many cores should automatically switch to different video driver in case they do not support the selected one. If you encounter crash, please try again with gl
/ glcore
video driver, as most probably the level of implementation of Vulkan on the platform / in the GPU driver does not meet the requirements of the core or the Vulkan support for your platform is not supported by the core.
--4.0--
Build system based on LibreELEC 10.0.2
RetroArch updated to 1.10.1
Cores updated to their most recent (versions
superbroswar
: added new libretro core)
(sameduck
: added new libretro core)Mesa updated to 22.0.0
Mainline kernel updated to 5.10.103 (PC, Amlogic, Allwinner, NXP)
Raspberry kernel updated to 5.10.95
Most arm devices switched to aarch64
Rockchip RK3288, RK3328 and RK3399 switched to mainline kernel 5.10.76
Added support for additional Allwinner and Amlogic devices (not tested on our side, as we do not own many of these devices)
Nintendo Switch: complete rewrite of the port with many fixes and enhancements
Tinkerboard and MiQi now use common system RK3288 (hence the change of the image names); you need to place empty file named
.nocompat
in the/storage/.update
folder /Update
Samba shareDropped support for RPi4.arm
This is our first release with the updated build system. We tried to port all our changes to this new build system, but we might have missed some of our optimizations and enhancements. Please report us any regression or missing features or drivers via our issue tracker.
Not all platforms have been ported to the new build system yet. For these platforms we have released a maintenance update (3.7.1) with RetroArch and libretro cores updated to the same versions as in 4.0 release. Lakka users with Hardkernel’s Odroid XU3/4, Odroid Go Advance / Super, and Anbernic’s RG351M / RG351P / RG351MP / RG351V devices get update as well.
--3.7--
RetroArch updated to 1.10.0Fixed crashing when recording/streaming
Cores updated to their most recent versions
wasm4
: added new libretro core
jumpnbump
: added new libretro core
blastem
: added new libretro core
freechaf
: added new libretro core
potator
: added new libretro core
quasi88
: added new libretro core
retro8
: added new libretro core
xmil
: added new libretro core
fmsx
: added new libretro coreMesa updated to 21.3.6
Mainline kernel updated to 5.10.101
Raspberry kernel/firmware reverted to 1.20210831 (to work around issue with 4K displays not initializing)
Disabled wifi powersaving on Raspberry devices to improve wifi stability
Added support for Raspberry Pi Zero 2 W with GPICase
Added utility to turn off Xbox360 gamepads
Recording
For new installs, recorded videos will be saved in /storage/recordings
accessible via SAMBA share Recordings
. If you update from earlier version, RetroArch will by default save videos to /storage/.config/retroarch/records
, which is also accessible via SAMBA share Configfiles
→ retroarch
→ records
. You can change the default path for saving videos via Settings
→ Directory
→ Recordings
. Please, bear in mind that this feature is demanding, especially when using GPU recording (3D cores). It may not work with every core. Please see RetroArch bug tracker for any existing issues with recording.
Config file for recording
Currently it is possible only to use software encoder. Use the below configuration and store it as e.g. Software.cfg
in the following path:
directly on the SD card/drive when connected to a computer:on Switch (works also when connected as mass storage):
/lakka/storage/.config/retroarch/records_config
on other devices:
LAKKA_DISK:/.config/retroarch/records_config
(may require superuser privileges to access this path / write files here)via SAMBA share
Configfiles
→retroarch
→records_config
via SSH/SFTP access to the filesystem:
/storage/.config/retroarch/records_config
Configuration file contents
vcodec = libx264
--3.6--
RetroArch updated to 1.9.13.2Option to control the menu by all users is back
New option for automatic frame delay (accessible via Settings → Latency, and also via Quick Menu; Advanced Settings must be enabled to access this option)
Cores updated to their most recent versions
beetle-fce
: added new libretro core (exists besidesbeetle-fce-fast
)
ecwolf
: added new libretro core
fbneo
: addedhighscore.dat
to RetroArchsystem
folder
mame2003-plus
: added artwork,cheat.dat
andhistory.dat
to RetroArchsystem
folder
scummvm
: added engine files, themes, soundfont and basicscummvm.ini
file to RetroArchsystem
folder,
Mesa updated to 21.2.5
Mainline kernel updated to 5.10.78
Raspberry kernel/firmware updated to 1.20211029
Fixed issue with older Intel GPUs (
crocus
driver is now preferred and usingMESA_LOADER_DRIVER_OVERRIDE
is not required anymore)
Known issues
See GitHub for information about currently open bugs and issues and also for possible workarounds for these bugs/issues.
--3.5.2--
RetroArch updated to 1.9.12
Cores updated to their most recent versions
DAT/XML files for manual scanning of roms for
fbneo
andmame2003-plus
added to the imageDatabase files are now accessible via SAMBA share
Database
Nintendo Switch: fixed booting / shutdown (updated systemd mount units)
disable_ertm=1
removed (caused issues with other gamepads disconnecting)
Known issues
Xbox wireless gamepads
As we removed disable_ertm=1
from the image, you may need to add it back manually in order to make the Bluetooth connection with your Xbox wireless gamepad reliable. To do so you kindly follow these instructions:
Either access your Lakka device via command line and execute: echo options bluetooth disable_ertm=1 > /storage/.config/modprobe.d/xpadneo.conf
Or
access Lakka file system via SAMBA and add file named xpadneo.conf
with following contents to the share Configfiles
→ subfolder modprobe.d
: options bluetooth disable_ertm=1
Older Intel GPUs
If you cannot boot to RetroArch and get stuck on the boot screen with the Lakka flower and you have an older Intel GPUs, follow these instructions to rectify this issue:
Either access your Lakka device via command line and execute: echo MESA_LOADER_DRIVER_OVERRIDE=crocus > /storage/.cache/services/retroarch.conf
Or
access Lakka file system via SAMBA and add (or edit the existing) file named retroarch.conf
with following contents to the share Services
→ subfolder services
: MESA_LOADER_DRIVER_OVERRIDE=crocus
No video output over HDMI on Raspberry Pi
In case you have no video output over HDMI on your Raspberry Pi, edit distroconfig.txt
and remove following two lines:
hdmi_max_pixel_freq:0=200000000
The above settings are aimed to display at maximum 1080p on 4K displays (as 4K is not suitable for Lakka on Raspberry Pi), however it seem that these settings are not working properly with some non-4K displays/TV sets.
--3.5.1--
RetroArch updated to 1.9.11
Cores updated to their most recent versions
Mesa updated to 21.2.4
Updated Kernel/Firmwarefixed Analog / CRT output on Raspberry Pi
--3.5--
RetroArch updated to 1.9.10Added Bluetooth pairing removal (press
START
/Space
in the device list to remove pairing for the selected device)
Cores updated to their most recent versionsEnabled RDP/RSP dynarec on N64 cores on Generic
Mesa updated to 21.2.3DRI i965 driver replaced with GALLIUM crocus driver
Added support for new devicesPiBoyDMG
Capcom Home Arcade
RetroDreamer
Anbernic RG351MP
Added xpadneo driver to support Xbox Wireless gamepads
Added WireGuard VPN support
Updated Kernel/Firmware
--3.4--
RetroArch updated from 1.9.7 to 1.9.9added core option categories
updated translations
general stability improvements to enhance the user experience
Cores updated to their most recent versionsnew core:
upstream Duckstation core (Sony Playstation)
new core: PCSX2 (Sony Playstation 2), available only on 64-bit PC
new core: DOSBOX-pure (DOS)
fixed Play! (Sony Playstation 2) and available on more platforms
fixed Vulkan support in PPSSPP (Sony Playstation Portable)
Mesa updated to 21.2.1
Fixed display of CJK characters
--3.3--
RetroArch updated from 1.9.5 to 1.9.7
Optimized scanning of large data set
Added support for mapping multiple controllers to a single input device
‘Analog to Digital Type’ usability improvements
Updated translations from Crowdin
Cores updated to their most recent versions
Dolpin: add dolphin-emu/Sys folder to RetroArch system folder
New: np2kai core (PC-98)
Generic: enable MIDI sequencer support
Generic: add Gamecon support
RPi: disable 4K modes
--3.2--
RetroArch updated to 1.9.5
Cores updated to their most recent versionsbsnes_hd was added
flycast: enabled OIT for OpenGL platformsRaspberry Pi 3 - now with 64-bit support (aarch64)
Odroid XU3/4 port runs now at full speed
Mesa updated to 21.1.2
Nintendo Switch port is now able to stream your games from your PC (moonlight/sunshine)
New script for collecting troubleshooting logs
Support for loading the image via Ventoy, a bootable USB solution (on PC)
--3.1--
Following the release schedule of RetroArch we bring you updated version of Lakka, so you don’t stay behind.
As usual the release includes the latest RetroArch version at the time, which is currently 1.9.4, as well as updates to all the supported cores to the most recent versions. You can update your existing 3.0 installation using the built-in updater (except on Nintendo Switch; you have to update manually, but gavin_darkglider is working hard to implement updates for Lakka on your console). If you are using older (2.3.x) release, clean installation is recommended.
RetroArch updated to 1.9.4Prevent unnecessary extraction to disk of compressed content files
Brightness restoration
Updated translations from Crowdin
Cores updated to their most recent versions
Added battery stats in RetroArch (for devices that have sysfs node for system battery)
Fixed safe shutdown on GPICase
Fixed audio issues on Raspberry Pi 4
Fixed FMV issues with PPSSPP core
Fixed backlight brightness
Odroid XU3/4 port is now fully functional and will be optimized in future releases
Mesa updated to 21.1.1
VULKAN enabled in Dolphin and PPSSPP (Raspberry Pi 4, Generic 64 bit, Nintendo Switch)
Improvements to the Nintendo Switch portFixed Vulkan renderer
Fixed Joycon mappings
Fixed mounts
Added dock support (note: the kernel will crash/lock-up if the console is put into sleep before placed into dock)
Added some cores that were not included in previous versionbeetle-saturn
bsnes2014
snes9x2002
snes9x2005
snes9x2005_plus
--3.0--
It has been over a year since our latest release, therefore there are many changes in this update. During this time we were working hard to bring you the new and updated Lakka. Thanks to our nightly build infrastructure many of you helped us test this release and gave us precious feedback.
As usual the release includes the latest RetroArch version at the time, which is currently 1.9.3, as well as updates to all the supported cores to the most recent versions, even some new cores were added. This time we recommend doing a clean install to avoid any incompatibility issues, as significant changes to the underlaying operating system and RetroArch were made. The size of the boot partition was increased to 2 GB, which is not compatible with previous installations.
Highlights of this release include:
Operating system based on LibreELEC 9.2 build system
Vulkan API enabled for AMD and Intel GPUs (Generic) and for Raspberry Pi 4
Support for joycons
RetroArch updated to 1.9.3Screensaver (Settings -> User Interface)
Set time zone directly in RetroArch (Settings -> Services)
Menu for pairing bluetooth devices
Better searching in playlists (search term now filters the entries instead of jumping to first match)
Option to automatically enable ‘game focus’ mode when running/resuming content
Explore - search for content accross all your playlists based on various criteria, such as developer, publisher, genre, system, year, …
Content loading animations
Easy dropdown lists for input remapping
Many menu and widget improvements
Fixed Wi-Fi menu (displays access points with longer names correctly)
Performance menu to adjust CPU governor
Cores updated to their most recent versions
Support for new devices/architecture:64 bit images for Raspberry Pi 4 (no 32 bit release)
Odroid Go Advance / Anbernic RG351P/M and V / Gameforce Chi
Nintendo Switch (instructions)
iMX6 with mainline kernel and MESA
New libretro cores:Genesis Plus-GX Wide (widescreen enabled core for SEGA Genesis / MegaDrive)
Stella (port of upstream Atari 2600 VCS emulator)
Supafaust (SNES emulator optimized for multicore ARM platforms)
Swanstation (a.k.a. Duckstation, PSX emulator)
LowRes NX (Retrogame console that can be programmed in BASIC)
Mu (PalmOS emulator)
Opera (Fork of 4DO/FreeDO emulator)
In the near future we will try to polish this release and squash any bugs that will be found and reported. As part of the new release strategy of the libretro organisation we will push new versions of Lakka with updated cores and RetroArch more often than in the past, hopefully twice a month. Our goal is to use 64 bit (aarch64) where possible and we aim to bring 64 bit release for Raspberry Pi 3 in upcoming versions.
We are also preparing for next major release, which will be based on LibreELEC 10. As with this release, support for some devices might be dropped, but we will do our best to keep support for as many devices as possible and managable.
We thank all contributors, who made this release possible, notably to Natinusala, Demetris and davidgf for the Odroid Go Advance ports, and shoutout to Team LibreELEC for their work as well. Special thanks goes to the Switchroot Team - CTCaer, Azkali, Natinusala, M4XW, Plaidman and gavin_darkglider to name a few - for the port to Nintendo Switch.
You are welcome to join our Discord server to contribute to the project, report your findings, ask for support or just hang out with retrogaming and DIY enthusiasts around the globe!
--2.3.2--
The Lakka team wishes everyone a happy new year and welcomes 2020 with a new update and a new tier-based releases system!
This new Lakka update, 2.3.2, contains RetroArch 1.8.4 (was 1.7.2), some new cores and a handful of core updates.
As part of our new tier-based updates, Lakka 2.3.2 is for now only available for the following platforms:
64-bit Generic (
x86_64
)Rasperry Pi 1 and Zero (with and without GPICase)
Raspberry Pi 2 and 3
Raspbery Pi 4
The rest of the platforms will be updated during the following weeks.
As usual, you can update by downloading the new images from the website or by going in the Online Updater directly in your Lakka box.
New tier-based updates schedule
Lakka supports more than 40 different platforms, and it has gotten quite hard to maintain and support them all actively. Some of them are discontinued products, and nobody on the team has them anymore.
As a result, we have decided to split all platforms into different tiers. Basically, higher tier platforms will have active support and more frequent updates, and lower tier platforms will have more sparse releases (if any).
The high tier platforms are the most popular ones:
64-bit Generic (
x86_64
)Rasperry Pi 1 and Zero (with and without GPICase)
Raspberry Pi 2 and 3
Raspbery Pi 4
For now, all other platforms are placed under the lower tier category. We may do a middle tier in the future, with platforms such as Pine64 and Odroid boards, which are still quite popular nonetheless.
Keep an eye for new tier releases on this website and on our social media accounts!
Manual content scanner
It’s been a long time since Lakka got a RetroArch update. This new version adds some welcome features - the most interesting this time is the manual content scanner. You read it right, no more database is required to build your playlists!
Whether it’s because the database is missing or your platform has little memory to handle big scans, you now have the choice to do a manual scan to build playlists on your Lakka box. This new scanning method simply takes all files ending with a known extension in a folder and adds them to the playlist for that system. It’s as simple as it gets!
You can see the manual content scanner menu in the thumbnail of this article (MaterialUI menu driver).
Clean playlists
Another quality of life improvement for playlists is the new “clean playlists” option. This allows you to clean your playlists after removing your games files, as well as resetting core association if the core doesn’t exist anymore.
This new option does the following:
Remove all entries where the game file has been removed
Remove all duplicates
Resets the core association if the core can no longer be foundRetroArch will ask you which core to use the next time you try to run a game from that playlist
If the core association is correct but the core has been renamed since, the new core name is updated in the playlist
Cores can be removed when updating Lakka, even if we try to do it least frequently as possible. For instance, Lakka 2.3 removed a lot of old cores in favor of their new, improved versions.
Thanks to this new clean playlists feature, removing a core is no longer considered a breaking change when updating Lakka.
Disk control improvements
The latest major improvement is the disk control overhaul, which enhances disk swapping for game with a high number of disks (such as Amiga floppy games).
You can read the entirety of the changes made to the disk swapping system in the RetroArch 1.8.4 blog post.
Core updates
As usual, everything in the libretro ecosystem has been updated to the very last version: cores, databases, overlays, joypad autoconfigs…
New core: quicknes
This very lightweight Nintendo Entertainment System was only enabled for some platforms on Lakka. It is now enabled for all of them.
New cores: vitaquake2 and vitaquake3
Only available for the Generic platform for now, those two cores are open source reimplementations of the Quake II and III engines respectively. Originally written for the PlayStation Vita by Rinnegatamante, both homebrews are now available for everyone as libretro cores.
New core: NeoCD
The latest core to be added in this Lakka update is NeoCD-Libretro, an improved version of the NeoCD Neo Geo CD emulator. This new version of NeoCD is more accurate and performs better than the previous standalone emulator, even on low end hardware like a Raspberry Pi.
Goodbye dosbox, hello dosbox-svn
And finally, the old dosbox core retires with Lakka 2.3.2. The newer dosbox-svn core was added some time ago, and it’s time for it to be used as a default and for the old one to be removed.
The future of Lakka
As time goes by, we are slowly moving forward to Lakka 3.0, which we already talked about in a previous release article. We will take this opportunity to drop all the old platforms we cannot maintain and support anymore. Lakka 2.0 will still be available for those, but we won’t be moving forward with them for the future.
The list of all dropped platforms will be made available when we release Lakka 3.0.
In the meantime, you can already try Lakka 3.0 by downloading an image for your device here! Since this is a major rewrite of the system, we would like to have user feedbacks as we work on it. Don’t hesitate to post an issue on our GitHub repository.