lakka tutorial for raspberry pi

The ultimate Raspberry Pi Lakka tutorial (with pictures)

After making a few tutorials on RetroPie, I recently discovered the Lakka system
I really enjoy it, so I want to share with you what I have learned about in this complete tutorial

How to install and use Lakka on a Raspberry Pi?
The installation process is the same as any operating system.
You need to download the image on the official website and flash it to your SD card
But the good news with Lakka is that everything is working directly, so you can play directly, as soon as you upload the first game

I’ll show you step-by-step how to do this and share with you the few tips I found to make the most of Lakka on your Raspberry Pi
As this tutorial is a complete how-to guide, if you already know Lakka, you can go directly to the section that interests you, using the table of contents below

Introduction

If you are new to Lakka, I recommend starting with this section
I’ll introduce the Lakka system and explain what are the differences with other retro gaming systems like Retropie

Lakka presentation

Lakka is a Linux distribution created for games emulation
It will turn your Raspberry Pi into a retro gaming console

If you already played on PlayStation, the interface should be familiar for you

lakka main menu

Lakka main menu

The Lakka system runs on LibreElec and uses RetroArch for the graphical interface
It’s available for many single computers boards (like Raspberry Pi, Orange Pi, Banana Pi or Tinkerboard), but you can also install it on a generic PC

Lakka strengths

The first Lakka strength is that it starts working directly on the first boot
As I’ll show you in the next sections, once the SD card is ready you can almost play directly
You get the main menu and you need no controller configuration, it’s working right away

Also, the configuration is straightforward.
If you want to enable a share to upload ROMs, there is just one option to change (on/off) and it’s ready
You don’t have to think about user configuration, service start/stop, etc …

And the last thing I really like about it is that you can play PSP and PSX games immediately
On Retropie for example, you need to find and install the BIOS to make it work (and it’s not easy)
On Lakka, it’s working right away, even without BIOS for some games

Lakka vs Retropie

Lakka differs from Retropie, firstly because they use different technologies
Lakka is using RetroArch over LibreElec
Retropie is using EmulStation over Raspbian

Lakka highlights its user-friendly system (ready to play out of the box)
Lakka is also a lighter system, that can work smoothly on any platform, including all Raspberry Pi models

Retropie has a bigger community, so you’ll find help quickly on any issue you have
Retropie also have a better front-end interface and runs Kodi to use it also as a powerful media center

To sum up, both are good emulation systems
Maybe Lakka is better for advanced users even if you can start with no configuration
And maybe Retropie is better for kids that doesn’t know too much about computing
But the best answer is to try both and make your own choice 🙂

Installation guide

We can now move to the installation process
As I said in the introduction, this is straightforward
If you already installed any system on your Raspberry Pi, it’s the same thing

Download Lakka

The first thing to do is to download the Lakka image corresponding to your system

  • Go to the official download page
  • Select your Raspberry Pi model in the list and click on the Download button
    It should look like this
    download lakka
  • Wait for the download to finish and move to the next paragraph

Flash the SD card

Once you download the Lakka image, you have nothing to do with the file
We’ll use Etcher to flash it on your SD card

  • If you don’t have it yet, download Etcher from here
    It’s a tool to flash SD cards easily
    Download and install it on your computer if needed
  • Start Etcher
  • On the left, you need to browse and select the Lakka image
    In the middle, you need to select your SD card (automatic with only one slot)
    And then click on “Flash” to start the SD card creation
  • It should look like this:
    lakka etcher
  • After clicking on “Flash”, the SD card creation starts
    Ignore any error message from your operating system and wait for the Etcher success message
    flash complete etcher

You’re ready to move to the next paragraph, the SD card is ready

First start

  • Insert the SD card in your Raspberry Pi
  • Start the Raspberry Pi
  • The Lakka logo appears in the background while the installation process starts
  • After a few seconds, the Raspberry Pi reboots and the Lakka main menu appears
  • Plug a controller or a keyboard if not already done
    The system will enable and configure it automatically

You can now move to the menu to discover Lakka
In the next section, I’ll help you with the first configuration steps

Configuration tutorial

Now that our system is operational, we can custom the default configuration to get exactly what we want for our retro gaming station

Audio, Video and Languages settings

These settings are basic so I’ll not write a lot about it
You just need to know they are in the Settings menu
But it’s the first thing to do if you have any issues with this

In the video settings, you’ll find everything you need to adjust the display to your screen
In my case everything was fine directly, so I didn’t try anything in the menu
I suppose it’s only useful if you have a small screen (or an old one maybe)

Audio settings are classic.
You can enable or disable audio in game and menu
Then you can adjust the volume or change the output device

Finally, you can change the language in the Settings > User menu

Wireless configuration

If you need to use your Raspberry Pi in Wifi, here is how to configure it:

  • From the main menu, select the Settings icon
  • Scroll to the Wi-Fi item and click on it
  • After a few seconds, the interface displays all the available wireless networks
  • Select the one you want to connect
  • Enter the pass phrase
  • After a few seconds, Lakka adds a “Online” text in front of your WiFi network

Adjust the controller settings

One of the Lakka strengths is its ability to detect and configure almost any game controller automatically
But you can always check your controller settings, or set it differently if you want

Here is how to do this:

  • From the main menu, navigate to the Settings submenu (second icon)
  • Select the Input item and click on it (Button B or Enter)
    lakka input configuration
  • Now you get a submenu with several options
    • The Toggle Gamepad Combo: to get back to the main menu from a game
      Mine was L3+R3 while I have an SNES controller without L3/R3 🙂
    • The Swap OK & Cancel buttons: if you want to revert ok and cancel buttons (A and B on an SNES controller)
    • Hot keys settings: there are a lot of hot keys you can configure on your keyboard to do some actions. For example, F8 allows you to take screenshot in games
    • And finally, the “Input User X Binds“, where you can configure each key to a specific action
      This is where you can configure your controller as you want
      It looks like this:
      lakka controller configuration
      Set your favorite settings in the User 1 section and move forward

Enable Samba

A feature I really like in Lakka is the ability to access the file system via a Samba share in one click
Samba is a file share service that allows you to get access to the Raspberry Pi file system from another computer on the network

But before this, you need to know the current IP address of your Raspberry Pi

Get the current IP address

As a lot of things, finding the IP address on Lakka is easy

  • In the main menu, stay on the first item (with the Lakka berry icon)
  • Scroll to the Information item and click on it
  • Click on “Network information”
  • You should have one line for each network interface, with the IP address
    I have three lines for the example, but you may have only two (RJ45 or WiFi, not both)
    get your current ip address on lakka

    • lo: local interface, we don’t need it
    • eth0: if you use a network cable, take this IP
    • wlan0: if you are using a WiFi connection, take this one
  • An IP address has this format: A.B.C.D
    For example, my IP address on the eth0 line is 192.168.1.15
    You’ll need it to access the file share later

Enable Samba

Enabling Samba is easy

  • From the main menu, go to the Settings menu
  • Scroll down to the Services item, and click on it
  • In the list, move to the “SAMBA enable” line
  • Click one time to put it “ON” like this
    enable samba on lakka

You can also enable SSH and Bluetooth in the same menu if you want
For SSH access, the user is root and the password is also root

Try to access the file share

You can now access your file share over the network
From your computer follow this procedure:

  • Open your file explorer program (for example: explorer, finder or nautilus depending on your system)
  • Enter the file share in the URL field:
    • Windows: \\<IP>   (ex: \\192.168.1.15)
    • Linux & Mac: smb://<IP>   (ex: smb://192.168.1.15)
  • You should now see all the shared folders on your screen
    lakka windows share

We’ll use it later to upload files to Lakka
For now, you just need to check that this is working, then move to the next configuration option

Customize the menu appearance

By default, the Lakka menu is correct, close to the PS4 menu and you may enjoy it like this
But I’ll show you how you can configure it as you want in the settings

  • From the main menu, go to the Settings section (second icon)
  • Select User interface
  • You have now two interesting submenu
    • Views: in this part you can select which elements you want to display or hide in the main menu
      For example, if you are not using the Video feature, you can hide it in the menu
    • Appearance: here you can configure anything in the main menu:
      • Background
      • Menu layout (for small screens)
      • Menu icon theme (change the icons)
      • Menu shader pipeline (change the background animation)
        Be careful, some of them are very slow on Raspberry Pi, keep the ribbon
      • Menu color theme (choose the main color for your menu)
      • And some other small options to configure shadows and thumbnails

Make all the changes and test you want, and we can now move to the most important part: How to play a retro game on Lakka? 🙂

Playing games on Lakka

Once the basic configuration is done, we are ready to play our first game
In this section, I’ll teach you where to download ROMs and how to install them on Lakka

For this part, I’ll take an example to show you how to install a specific game step-by-step
We’ll try to play “Sonic the Hedgehog 2” on Sega Master System

Download ROMs

Downloading ROMs for any retro gaming system can be complex
You need to avoid illegal stuff and malware while finding the game you want to play

Where to download ROMs for Lakka?

I already wrote an article about where to download ROMs for Retropie
It’s also valid for Lakka, as we need the same files for both

To sum up, I recommend using the RomHustler website to download your ROMs
You’ll find a lot of them on this website and they seem to respect publisher rights, as a lot of ROMs are unavailable because of an ESA request (ESA = Entertainment Software Association)
Also, I had no issue with files downloaded from this website. They all work as expected and there is nothing suspect inside (no malware or anything else)
Download is fast, you just need to wait 10s for each ROM

Download procedure

So, to start with my example, here is how to find and download the ROM we need for playing “Sonic The HedgeHog 2” on Sega Master System:

  • Go to the RomHustler website
  • In the top of the website, there is a list of all consoles
    Select the “Sega Master System” console in this list
    console list romhustler
  • When you scroll down, you have a list of ROMs for Master System
  • Find “Sonic the HedgeHog 2” in this list
    At the time of writing, this is the third game in the list
  • Click on the game title
  • You are now on the game page
    You can check the screenshots to see if it’s really the game you wanted
    Then click on the download link: “Click here to download this ROM”
  • After a 10s countdown, you can click again to download the ROM

That’s it, you have your first game ready on your computer
You now need to extract the files from the archive

File formats reminder

The file format for each console is different:

  • Most of the time you have one file for each game, so just extract this file and keep it for the next paragraph
  • Sometimes you can have severals versions for the same game
    For example [U], [J] and [EU] for US, Japan and European versions of the game
    Only keep one, you don’t need to upload all of them to your Raspberry Pi
  • And finally, you can have one game that need different files
    For example, .iso and .cue files for PlayStation ROMs, or, as I already saw, files with .001, .002, …
    In this case, create a folder with all the files inside and upload it entirely to your Raspberry Pi

Ok so for my example, there is only one file, with an .sms extension, so it’s simple
But I need to upload it to Lakka to play Sonic The HedgeHog 2 🙂

Upload new games to Lakka

If you remember well, we have enabled the Samba service on Lakka
And we will now use it to upload games to the Raspberry Pi

That’s why I like the Samba features enabled in one click: it’s simple

  • Go back to your file explorer, as for the Samba test (\\<IP> on Windows for example)
  • In the folder list go to the ROMs folder
  • There is already a “downloads” folder inside
    I recommend creating here a new folder for each console
    So you can know for each game, which emulator you need to use
    For my example, create a “Sega Master System” folder, like this:
  • Then copy and paste your ROM file in the new “Sega Master System” folder

That’s it, you have nothing else to do, the game can already work on Lakka
I’ll show you how to start this game in the next paragraph

Start and play a game

The game file is now in the share folder, so on the SD card
To play your first Lakka game, follow this procedure:

  • From the main menu, scroll to the Load content item and click on it
    load game on lakka
  • You now need to select your ROM location
    Choose the “Start directory”
    And then select “Sega Master System” in the list
    sega master system folder
  • Finally, select the rom file
    It should be something like “Sonice_the_Hedgehog_2_(UE)_[!].sms”
  • When you click on it, Lakka will ask you which core system to use
    There are two available for Sega Mater System
    cores master system
  • Take the first one, I don’t really know the difference
    If it’s not working as expected, take the other one
    Sometimes you’ll have the choice between a lot of consoles, make sure to select the one corresponding to your ROM system
  • And eventually, our game is starting
    Sonic_the_Hedgehog_2_(UE)_[!]-190130-081407

You now know how to download, upload and start any game on Lakka
You can restart this procedure with each game you want to play
Have fun and enjoy the ease of use of the Lakka system

Shaders

Another interesting feature on Lakka is the shaders option
It allows you to improve the image quality (or change it at least)

To try this, use this short procedure:

  • Start your game
  • While in the game, use your Toggle Combo to display the Lakka menu
  • Scroll down to Shaders (last item)
  • Click on Load Shader Preset
  • Then choose a GLS shader in the list, for example “bilinear.glslp” near the end
  • Return to your game
  • You should see a change in the game display
    You can try different shaders and even download them, to find the one you prefer
    This way, you can have a “cartoon aspect” instead of an old pixelated game

Not everybody will like this feature, but I needed to tell you it’s possible

At the same time, you can note that there are a lot of options available in this “pause menu”
You can:

  • Take a screenshot
  • Save your game even if the original game doesn’t offer this feature
  • Record or stream your game
  • Change game and controller options
  • Use the rewind feature or change audio/video settings

That’s a big improvement compared to other retro gaming systems
If you want to play the game like it was years ago you can, but you can also use these features to play it differently

Related questions

What is the netplay host in the main menu? Basically, it’s a multi-player game mode. You can host a game on your Raspberry Pi and allow other players to join you. The host chooses “Start netplay host” and the other players have to choose “Connect to netplay host”.  I didn’t try it, so I can’t tell you more about this

Is it possible to use PS3/PS4/Xbox controllers on Lakka? Yes, Lakka supports almost all controllers. To use it with the cable it’s plug and play, working directly. To make it work wireless, you may need to check the documentation page, its depends on each controller

What is the achievements feature? The achievements settings allow you to enable a PS-like achievement system by giving you rewards and badges when you make a specific action in a specific games. If you want to learn more about it, I recommend checking the retroachievements.org website. You must create an account on this website to use the feature on Lakka

Conclusion

That’s it, you know everything you need to use Lakka on your Raspberry Pi

Personally, I really like this RetroPie alternative, it’s easy to use and working well
Maybe it has fewer features but do we really need more than that?

If you like retro gaming, feel free to check my other articles on this subject:

Leave a Comment