HI Handheld Index

Firmware Guide

Anbernic Custom Firmware: Which One for Which Device in 2026

A practical map of which custom firmware fits which Anbernic handheld: muOS, Knulli, Batocera — what each is for, and where to start.

Fabian Brunner

Zürich, Switzerland

Published April 21, 2026

Anbernic’s Linux-based handhelds ship with a perfectly functional stock launcher, but it leaves a lot on the table. The firmware ecosystem around these devices — particularly the H700-based RG35XX family — has matured to the point where installing a custom OS is a 30-minute job that genuinely transforms the experience. Better emulator configuration, RetroAchievements support, proper sleep modes, and cleaner interfaces are standard across all the serious options.

The tricky part is that the options proliferate fast, and the naming is confusing. muOS, Knulli, Batocera, JELOS — these are not interchangeable. Each targets different hardware, takes a different design philosophy, and has a different development status in 2026. This guide maps out which firmware belongs on which Anbernic device, what each one actually does well, and how to get started.


What you’ll need

Before touching any firmware, gather the following:

  • A compatible Anbernic device. The guide covers the RG35XX Plus and RG35XX SP specifically, both running the Allwinner H700 SoC. Check the firmware’s supported device list before downloading — muOS and Knulli are explicit about which builds go on which hardware.
  • Two microSD cards (recommended). Both muOS and Knulli work better with a dedicated OS card and a separate card for ROMs. Cards up to 512 GB per slot are supported per manufacturer specs on both the RG35XX Plus and RG35XX SP. A high-endurance A1 or A2 rated card for the OS slot will serve you better than whatever came in the box.
  • A Windows or macOS machine with balenaEtcher or Rufus installed.
  • 30 minutes — the installation time estimate per both firmware sheets is realistic for a standard flash. First-time setup will add another 15–20 minutes.
  • Risk level: low. Both muOS and Knulli are fully reversible by reflashing the stock firmware image to the OS card. You are not touching internal storage on these devices.

Before you start

Back up the stock microSD card that came with your device. Anbernic preloads a 64 GB card with ROMs; that content is not something you’ll get back from Anbernic support. A full card image backup with Etcher or Win32DiskImager takes about 20 minutes and saves you the headache later.

Know your recovery path: to get back to stock, you flash Anbernic’s official stock image back to the OS card. Both muOS and Knulli’s installations are isolated to the SD card, so the process is fully reversible. You do not need to open the device or touch any ribbon cables.


Which firmware for which device

This is the question that causes the most confusion. Here is the practical answer:

DeviceRecommended CFWBuild CodenameNotes
RG35XX PlusmuOS or KnulliBANANA (muOS)Both officially supported
RG35XX SPmuOS or KnulliBEANS (muOS)muOS BEANS is SP-specific; not interchangeable with BANANA
RG35XX HmuOSBANANAShares build with RG35XX Plus
RG556Stock Android 13Android device; CFW does not apply

The BANANA/BEANS distinction matters: flashing the wrong muOS build onto the wrong device is a common mistake. The RG35XX SP uses the BEANS build; the RG35XX Plus and RG35XX H share the BANANA build. These are different images. Knulli handles device detection differently and ships per-device images labelled by device name rather than codename — read the release filename carefully either way.

The RG556 runs Android 13 and falls outside this guide entirely. You can swap the launcher frontend on that device (Daijisho is popular), but you are not installing a Linux-based custom firmware.


muOS vs. Knulli: the real difference

Both are actively developed, both support RetroAchievements, both offer overclocking, and both take about 30 minutes to flash. The decision usually comes down to two things: interface preference and PortMaster.

muOS uses a custom clean modern UI that is purpose-built for Anbernic hardware. It has its own theme ecosystem and is generally considered the most beginner-friendly option in the H700 community. The interface is minimal and responsive. It does not support PortMaster, which means no native Linux game ports (Stardew Valley, Celeste, DOOM, etc.).

Knulli is a fork of Batocera Linux — it uses the EmulationStation-style frontend familiar to anyone who has used Batocera or RetroArch on a Pi. The reason Knulli exists as a separate project rather than being upstream Batocera is practical: Batocera’s GPL license cannot legally bundle the closed-source GPU and display drivers that H700 hardware requires. Knulli separates those driver bundles. It ships with PortMaster by default and supports OTA updates via the Updates & Downloads menu — two things muOS does not offer.

The hinge on the RG35XX SP also works properly in Knulli: closing the clamshell lid triggers sleep. That feature is listed in Knulli’s fact sheet. If you are buying the SP specifically for the clamshell form factor, Knulli makes that hinge functional in a way that is documented and confirmed.


Step 1: Download the firmware

For muOS: Download from the official releases page at https://github.com/MustardOS/frontend/releases. SHA256 hashes are published in the release notes — verify before flashing. Download the BANANA image for the RG35XX Plus or RG35XX H; download the BEANS image for the RG35XX SP.

For Knulli: Download from https://github.com/knulli-cfw/distribution/releases. Check the GitHub release page for the filename matching your specific device.

Do not download from third-party sites, YouTube “mod packs,” or Discord file shares. Both projects publish checksums — use them.


Step 2: Prepare the SD card

Both muOS and Knulli use a raw disk image that you flash directly to the SD card. You do not need to pre-format the card; the flash process handles partitioning.

For the OS card, 32 GB is sufficient for the firmware itself. If you plan to keep ROMs on the same card, 128 GB or larger gives you more headroom, though the two-card setup is cleaner to manage.


Step 3: Flash the image

  1. Insert your OS microSD card into your computer via a card reader.
  2. Open balenaEtcher (or Rufus on Windows).
  3. Select the .img or .img.gz file you downloaded.
  4. Select the microSD card as the target — double-check the drive letter; this operation is destructive.
  5. Click Flash. Etcher will write and then verify the image.
  6. Eject safely when complete.

The process takes 5–10 minutes depending on card speed. Do not interrupt it.


Step 4: First boot

Insert the flashed OS card into the primary microSD slot (Slot 1). Power on the device.

muOS first boot: You will be prompted to select your device type — choose carefully (RG35XX Plus vs. RG35XX SP are different options). You will also be asked to set the time and date manually. There is no automatic time sync on first boot. After that the UI loads directly.

Knulli first boot: EmulationStation initialises, scans for ROMs, and drops you into the main menu. If you have a second card with ROMs already in place, Knulli will pick them up after a system restart or a manual game list refresh.

Common first-boot issues: if the screen is blank after 60 seconds, you likely have the wrong build for your device (BANANA on an SP, for instance). Reflash with the correct image.


Step 5: Add your games

Both firmwares use a standard ROM directory structure. ROMs go in named folders by system — GBA, PSX, N64, SNES, and so on — on either the second microSD card or a ROMS partition on the OS card.

BIOS files are required for PS1 (and some other platforms). Place them in the BIOS folder at the root of the ROMs partition. Consult the official muOS or Knulli documentation for the exact filenames required — BIOS requirements are emulator-specific and the authoritative list is in each project’s docs.

The RG35XX Plus and RG35XX SP both handle GBA, SNES, and PS1 at full speed under both firmwares. N64 and Dreamcast are playable but game-dependent. PSP performance on these H700 devices is limited regardless of firmware — community testing on the RG35XX SP characterises it as choppy and not something to plan around.


Common issues and fixes

Screen rotation / wrong orientation: Both devices should boot in the correct orientation automatically. If something looks wrong, check that you downloaded the device-specific image and not a generic ARM build.

No sound: Check that the volume is not at zero (a common accidental state after the first boot setup). On muOS, volume is controlled via a system menu shortcut; on Knulli, it is accessible from the EmulationStation main menu.

RetroAchievements not working: Both firmwares support RetroAchievements, but you must enter your RA credentials in the settings menu. It does not pull credentials from any stock firmware account.


Performance tips

Both muOS and Knulli expose overclocking options for the H700 SoC. The base clock is 1.5 GHz on both the RG35XX Plus and RG35XX SP. Modest overclock settings can help with demanding N64 and Dreamcast titles, but run the device for a few sessions at stock clocks first — the H700 is well-matched to its target performance range and most users find overclocking unnecessary for the platforms these devices handle well.

The two-card setup — OS on Slot 1, ROMs on Slot 2 — is the cleanest approach for long-term management. Both cards can be swapped independently. If you want to try a different firmware, you swap only the OS card; your entire ROM library stays untouched on Slot 2.

anberniccustom-firmwareguide