Carte microSD posée devant une petite console portable rétro verticale

Knulli is an alternative firmware derived from Batocera, designed for handheld consoles whose Linux kernel is not mainline or whose manufacturer does not publish usable sources. In practice, you write an image to a microSD card, you boot, and you get an EmulationStation interface that handles emulators, controllers, Wi-Fi, scraping and RetroAchievements from a single menu. The current version as we write is called Scarab (build 20260511), released in May 2026. This guide follows the project's official documentation, step by step, with no shortcuts. Allow thirty minutes for the installation, a little more if you are starting from a blank card.

What Knulli is, and what it isn't

Knulli is a fork of Batocera. The project states it plainly: Batocera's licence does not allow closed kernels to be added, which made it impossible to bring machines with a proprietary BSP into the main branch. So Knulli takes the Batocera base and adapts it to low-memory handhelds. If you were coming from Batocera v39 or v40 on that kind of device, Knulli is its direct successor.

It is not a layer laid on top of the original system, and it is not a commercial product: the Knulli trademark is under a non-commercial licence and is not meant to be sold.

Which machines Knulli runs on

The official list is published on the project's Devices page and on the releases page. Here is how it lines up with the machines we sell.

Machine Platform Official image
Anbernic RG35XX Pro Allwinner H700 Yes
Anbernic RG35XX Plus / 2024 / H / SP Allwinner H700 Yes, one image per variant
Anbernic RG28XX, RG34XX, RG CubeXX Allwinner H700 Yes
Anbernic RG40XX H and RG 40XXV Allwinner H700 Yes, two separate images
TrimUI Brick and Smart Pro Allwinner A133 Plus Yes
TrimUI Smart Pro S Allwinner T527 Yes
Powkiddy X55 and RGB30 RockChip Yes
Retroid Pocket 5 and Pocket Mini Snapdragon 865 Yes, with prior preparation
Miyoo Mini Plus SigmaStar SSD202D No
Android consoles (Retroid Pocket 6, Anbernic RG557, AYN Odin 2 Portal…) ARM Android Not concerned

Two remarks. Each Anbernic H700 has its own image: an RG35XX H will not boot with the one for an RG35XX SP, despite the same chip. And some models we sell are absent from the Scarab release images (RG353V, RG353PS, Powkiddy RGB20S); the list moves with every version. Our firmware compatibility table covers these matches.

What Knulli brings over the stock firmware

The main gain is centralisation: you set the emulators from EmulationStation, without going into each RetroArch core's menu. The rest, in practical terms:

  • Built-in scraping of box art and metadata.
  • RetroAchievements.
  • Bluetooth for external controllers, keyboard and mouse support.
  • HDMI output on the machines that have it.
  • File transfer over the network, Samba share reachable from Windows Explorer.
  • Save synchronisation through Syncthing, improved in the Scarab release.
  • Themes, screen bezels, boot logo, shaders, RGB lighting.
  • PortMaster, the library of native ports, installable in two menus.

The trade-offs have to be stated too. The official documentation is not translated into French. The interface is denser than a manufacturer firmware's, and a beginner can get lost in it. A major update often calls for a clean reinstall, and therefore a reconfiguration. And as soon as you connect the machine to Wi-Fi, its data is reachable on the local network with no password until you switch on the protection in the Security menu.

The golden rule. Install Knulli on a second microSD card and put the original card away untouched in a drawer. You lose nothing, you try it out at no risk, and going back takes ten seconds: you swap the cards. It is the only backup that works every time.

The hardware you need

A good quality microSD card, a reliable card reader, and an image-writing tool. The Knulli documentation mentions Rufus, balenaEtcher, Raspberry Pi Imager and Win32 Disk Imager; dd will do if you are comfortable on the command line. Plan for 7-Zip as well: some images are delivered as archives split into several parts.

Don't skimp on the card: a counterfeit or a slow card causes save corruption that then gets blamed on the firmware. Our criteria are detailed in the guide to choosing a microSD card. The cards we ship are checked with a full write-and-read-back pass before they leave.

Step-by-step installation

  1. Identify your exact model. Not the range, the model and its variant: RG35XX Plus, RG35XX 2024, RG35XX H, RG35XX SP and RG35XX Pro are five different machines. Look at the printing on the back and at the box.
  2. Check whether your device needs preparation. The quick-start guide points out that certain machines, among them the Miyoo Flip and the Retroid Pocket models, require an operation before the card is written. The Anbernic H700 machines and the TrimUI ones do not.
  3. Download the image from the official releases page, repository knulli-cfw/knulli-linux on GitHub. The files follow the pattern knulli-<chip>-<model>-<version name>-<date>.img.gz, for example an h700 image for the Anbernic machines or a133 for the TrimUI ones. Never take an image found anywhere else.
  4. Check the integrity of the download. The project does not publish checksums next to its images: there is no official SHA-256 to compare against. Instead, have the archive tested by 7-Zip before writing, since the gzip and 7z formats carry a CRC. If the image is split, download every part (.001, .002…) and extract from the first one.
  5. Write the image to the card with the tool of your choice. The operation erases the card completely. Check the drive letter three times before confirming.
  6. First boot. Put the card in the first slot, remove any card from the second slot, switch on. The boot is long: Knulli expands and formats the games partition. Don't cut the power, don't remove the card.
  7. Wait for EmulationStation. The installation is only finished when the interface appears. The SHARE partition only reaches its final size at that point: there is no use trying to copy anything to it before.
If Windows offers to format a partition it cannot read, refuse. Those are Knulli's system partitions. Formatting them makes the card unusable.

The configuration to do right after

Language

The interface language is set from the main menu, Start button, in the system settings. The exact menu wording changes from one version to another, to be confirmed on your build. The project documentation, for its part, exists only in English, Spanish, German, Polish, Turkish, Brazilian Portuguese, Italian and Japanese.

Wi-Fi and network

Start then Network settings, switch on Wi-Fi in the settings section. Once connected, the machine appears in Windows Explorer at the address \\KNULLI\share, and SSH access uses the root login. Go straight to the Security menu to set a password if you are not on your home network.

Buttons

Start, Controller & Bluetooth Settings, Controller Mapping to pair an external controller. Do not, however, remap the console's built-in controls: every Knulli image ships with a mapping optimised for the machine, and remapping breaks hidden virtual functions, such as D-pad to stick conversion. To change the buttons for one specific game, go through the emulator's settings.

Sleep and battery life

The official FAQ covers fast battery drain on the Anbernic RG35XX and RG40XX, and a distorted display on recent revisions of the RG35XX SP. Read the project's troubleshooting page before concluding that there is a hardware fault.

Where to put your games

Everything goes through the /userdata folder, which corresponds to the SHARE partition of the main card, or to the main partition of the second card if you use one. The path to remember is /userdata/roms/, with one subfolder per system, plus /userdata/bios for system files and /userdata/saves for saves.

An important point about dual cards: SD1 and SD2 cannot both serve as game storage at the same time. You choose one or the other in the settings, and in dual-card mode the internal SHARE partition is no longer used or reachable over the network. For the detail of folder names per system, refer to our article on firmware folder structures, we are not rewriting it here.

A reminder: a firmware supplies no games. We distribute neither ROMs nor BIOS files and we point to no source. See where to play legally for the legitimate ways of building a library.

The most common trap

It is rushing the first boot. Three mistakes come up constantly: copying games before the SHARE partition has been expanded, leaving a second card inserted during the installation, accepting Windows' offer to format. All three end in a complete reinstall.

The second trap concerns major updates: after moving up a version, do not restore the system folder from your previous installation. The configuration files are not compatible from one major version to the next and you inherit inconsistent settings. Restore the games, the saves, the themes, not the system folder. If a game still refuses to start despite everything, our guide my game won't launch goes through the causes.

Updating

Three routes exist, documented by the project.

  • OTA. Main menu, Updates & Downloads, update type on Stable, then Start Update. An internet connection is needed. Don't interrupt anything during the operation, don't launch a game alongside it.
  • Boot package. For minor updates, you download the matching package from the releases page, replace the boot/batocera file on the BATOCERA partition with the supplied file, renamed, then restart.
  • Complete rewrite. For major versions. The Scarab release notes explicitly recommend starting again from a clean installation, since the configuration files are not compatible with earlier versions. Back up /userdata first.

On recent versions, a clean installation remains the safe route, even when an update looks possible. It takes longer, but it avoids erratic behaviour that is impossible to diagnose afterwards.

Going back

If you followed the golden rule, there is nothing to undo: you switch the console off, you put the original microSD card back, you switch on again. The manufacturer firmware returns exactly as it was, since Knulli lives on its own card and does not touch the original one.

This holds for machines that boot from the card, the Anbernic H700 and TrimUI ones in particular. On models that required prior preparation, restoring follows the reverse procedure described in their documentation: to be checked case by case. To compare alternative firmwares with each other, see our guide to installing custom firmwares.

Frequently asked questions

Does Knulli erase my console's original firmware?

No, if you install it on a different microSD card. On machines that boot from the card, the manufacturer firmware is on the original card: as long as you don't write over it, it stays intact. Models that require prior preparation are the exception, read their documentation page first.

How can I check that the downloaded file isn't corrupted?

The project does not publish an official checksum file next to its images. Have the archive tested by 7-Zip before writing: the gzip and 7z formats contain an internal CRC and a damaged archive will be reported. If the image comes in several parts, download all of them.

My console boots but nothing shows for several minutes, is that normal?

On the first boot, yes. Knulli expands and formats the games partition, and the documentation warns that the operation can be long. Don't switch the machine off. If the screen stays black after several restarts, you have probably written the image for another variant.

Can I use the same second card as muOS?

The project's troubleshooting FAQ addresses this precise case, as well as reusing a card formatted for Garlic. The behaviour depends on the file system and on the folder structure each firmware expects: consult the official answer before sharing a card, rather than trying it and reformatting everything afterwards.

Is PortMaster included?

It is not pre-installed. After the installation, open the menu, go to Device Settings and choose Install Portmaster. An internet connection is needed to install it and to fetch the ports. The library holds close to five hundred games, but your console will only show the ones compatible with it.

Does Knulli change my machine's emulation performance?

It doesn't change the hardware. An Allwinner H700 will stay in the same waters: Super Nintendo and earlier, PlayStation 1, a little Nintendo 64 or Dreamcast depending on the title. Knulli brings up-to-date emulators and accessible settings, not power.

If you are still hesitating about which machine to install it on, or if you are looking for a model whose alternative firmware is well supported, browse our selection of Linux retro consoles.

Batocera, Console rétro portable, Firmware personnalisé, Installation, Knulli, Rubrique-technique

Leave a comment