How to Install muOS Custom Firmware: 12 Steps, 90 Min [2026]

Anbernic RG35XX owners have spent the past two years asking the same question in Discord servers and Reddit threads: which custom firmware actually makes a $60 handheld feel like a proper emulation machine instead of a fiddly hobby project. As of October 2026, the official muOS release page still lists 2601.1 “Funky Jacaranda” as the current stable build, according to the MustardOS Community, even as development on the next version, 2606.0 “Andromeda,” was confirmed in progress the previous month. This tutorial walks through the full install, from picking the right microSD card to configuring RetroArch cores, adding box art, and fixing the boot loops and black screens that trip up nearly every first-time installer.

muOS is a free, actively maintained Linux-based custom firmware built primarily for H700-chipset Anbernic devices (the RG35XX family, RG28XX, and RG40XX series) and the TrimUI Brick and Smart Pro. It replaces the stock Anbernic OS with a faster boot sequence, a cleaner front-end, RetroArch-driven emulation cores, and built-in box art scraping. Under the hood it runs on the MustardOS base, and the project publishes every release through muos.dev. By the end of this guide you’ll have a fully configured handheld with ROMs organized, controls mapped, Wi-Fi connected, and a repeatable backup routine so a bad SD card never wipes out your save files again.

Google · Preferred Sources

Don't miss new tech stories on Google

Add Tech Insider once in the Google app and our stories appear in your news suggestions.

Add Now

What Is muOS and Why Retro Handheld Owners Are Switching to It

Stock firmware on budget retro handhelds tends to be slow to boot, thin on features, and inconsistent about how it scrapes metadata for your ROM collection. muOS was built to fix exactly that. It’s a custom Linux build distributed as a flashable disk image, and its current stable release, version 2601.1 “Funky Jacaranda,” is the build most guides and community wikis point to as of October 2026. The naming convention (each release gets a plant or food-themed codename) has become a running joke in the community, but the version numbers underneath follow a simple year-month pattern tied to real release dates – the base 2601.0 “Jacaranda” build landed on February 20, 2026, according to the MustardOS Community, a full release cycle after 2508.0 “Goose” shipped in August 2025 with more than 600 changes documented by Retro Handhelds.

The appeal comes down to three things. First, muOS boots noticeably faster than the Anbernic stock firmware on most H700 devices. Second, its front-end organizes your library into Content, Explore, Favourites, History, and Apps sections instead of a flat folder list, which matters once your ROM count creeps past a few hundred games. Third, it treats box art and metadata as a first-class feature rather than an afterthought, so once Wi-Fi is configured, most systems populate cover art automatically instead of requiring you to hand-place PNG files next to every ROM.

It isn’t the only option. Projects like knulli, ArkOS, JELOS, AmberELEC, and Rocknix remain active choices for Rockchip-based handhelds (RK3326, RK3566, RK3588 and similar chipsets), and depending on your exact device, one of those might be a better fit than muOS. This guide focuses on muOS because it currently has the broadest, most consistent support across the Anbernic H700 lineup and the TrimUI Brick and Smart Pro – official support for both TrimUI devices only arrived with the 2508.0 “Goose” release in August 2025, per Retro Handhelds, and the lineup together now makes up a large share of the sub-$100 handheld market people are buying in 2026. TrimUI’s newest model, the Brick Pro, launched at the end of June 2026 at $99.99 with a larger 3.95-inch screen and a bigger 5000mAh battery than the original Brick. As of October 2026, muos.dev’s supported-device list still covers the original Brick but does not yet show official Brick Pro support, so check that list before buying a Brick Pro specifically to run muOS. Different board revisions frequently need their own image file even within the same product line.

Choosing the Right Handheld Before You Install muOS

If you don’t already own a handheld and are buying specifically to run muOS, the device you pick matters more than any setting you’ll configure afterward. All of the Anbernic H700-based models share the same core silicon, so the differences between them come down to form factor and screen, not raw emulation power. The RG35XX Plus and RG35XX H both use a 3.5-inch 640×480 IPS panel, a 3300mAh battery, and 1GB of RAM, and they’re functionally interchangeable for muOS purposes except for button layout and shell design. The RG35XX SP adds a clamshell flip design reminiscent of the Game Boy Advance SP, at the cost of a slightly smaller footprint for the same internals. The RG40XX H bumps the screen to 4 inches while keeping the same H700 chipset, 1GB RAM, and 3300mAh battery, so it’s the pick if you want a larger display without paying for extra emulation headroom you won’t get anyway.

The TrimUI side of the market targets a different performance tier. The original TrimUI Brick pairs an Allwinner A133 Plus chip (quad-core Cortex-A53 at 1.8GHz) with a 3.2-inch 1024×768 display and 1GB of LPDDR3 RAM, giving it more pixel density than the Anbernic 640×480 panels despite the physically smaller screen. The TrimUI Smart Pro steps up further with a 4.96-inch 1280×720 IPS display, the same A133P chipset, 1GB of LPDDR4x RAM, and 8GB of eMMC storage built in, making it the best-suited TrimUI device in this lineup for PSP and Dreamcast libraries that need every bit of headroom the hardware offers. If your budget allows it, prioritize the Smart Pro or the newer Brick Pro over the entry-level Anbernic boards specifically because their higher native resolution makes upscaled 3D-era emulation look noticeably cleaner.

DeviceChipsetRAMScreenBatteryApprox. Price (USD)
Anbernic RG35XX PlusAllwinner H700, quad-core Cortex-A53 @ 1.5GHz1GB LPDDR43.5″ IPS, 640×4803300mAh$42.99-$49.99
Anbernic RG35XX HAllwinner H700, quad-core Cortex-A53 @ 1.5GHz1GB LPDDR43.5″ IPS, 640×4803300mAh$49.99
Anbernic RG35XX SPAllwinner H700, quad-core Cortex-A53 @ 1.5GHz1GB LPDDR43.5″ IPS, 640×4803300mAh~$65
Anbernic RG40XX HAllwinner H700, quad-core Cortex-A53 @ 1.5GHz1GB LPDDR44.0″ IPS, 640×4803300mAh$69.99
TrimUI BrickAllwinner A133 Plus, quad-core Cortex-A53 @ 1.8GHz1GB LPDDR33.2″ IPS, 1024×7683000mAh$75-$85
TrimUI Brick ProAllwinner A133 Plus, quad-core Cortex-A53 @ 1.8GHz1GB LPDDR3/43.95″ IPS, 1024×7685000mAh$99.99
TrimUI Smart ProAllwinner A133P, quad-core Cortex-A53 @ 1.8GHz1GB LPDDR4x4.96″ IPS, 1280×7205000mAh~$70-90

Specs above are sourced from each manufacturer’s official product pages and current 2026 retailer listings. Prices fluctuate by region and retailer, so treat these as a starting reference rather than a guaranteed checkout price.

Prerequisites: What You Need Before You Start

Gather everything on this list before you touch a single file. Missing one item mid-install is the single biggest reason people end up re-doing this tutorial from scratch.

  • A supported handheld: Anbernic RG35XX (original, Plus, H, SP, or 2024), RG28XX, RG40XX, or a TrimUI Brick or Smart Pro
  • One or two microSD cards, 32GB minimum, 128GB+ recommended if you’re loading PS1, PSP, or Dreamcast libraries – use a name-brand card (SanDisk or Samsung) rated A1 or A2
  • A USB microSD card reader (built-in laptop slots work if your card ships in a full-size adapter)
  • A Windows, macOS, or Linux PC with at least 2GB of free disk space
  • An imaging tool the muOS project recommends: Raspberry Pi Imager, USB Image Tool, Win32 Disk Imager, USBImager, or Rufus (Windows only). The official install guide specifically advises against balenaEtcher because of repeated bad-flash reports
  • A stable internet connection to download the muOS image, which typically runs 150-400MB compressed depending on device
  • Your own legally-owned ROM dumps and BIOS files – muOS ships with zero games or copyrighted BIOS files included
  • 90 minutes of uninterrupted time, plus patience for a first-boot filesystem expansion that can take up to a minute

One clarification that trips people up: muOS does not require you to root the device or unlock a bootloader. Because these handhelds boot directly from the microSD card, installing custom firmware is as simple as swapping the card. Your original card with the stock OS stays untouched, so you always have a fallback if something goes wrong.

Step 1: Confirm Your Device Model and Chipset

muOS images are built per-device, not as one universal file. Flashing the wrong image is the single most common source of boot failures, so before downloading anything, check the model printed on the back of your handheld or in its settings menu. RG35XX, RG35XX Plus, RG35XX H, RG35XX SP, and RG35XX 2024 are all different boards with different image files despite the nearly identical name. The same applies to RG28XX versus RG40XX, and to TrimUI Brick versus TrimUI Smart Pro.

If you bought the device secondhand or the model number was scratched off, open the stock firmware’s system info menu, which nearly always lists the exact board revision. When in doubt, cross-reference the number against the device list on muos.dev before you download – an image built for the wrong board will either fail to boot entirely or boot with a broken display resolution and dead controls, which looks alarming but isn’t permanent damage.

Step 2: Download muOS 2601.1 “Funky Jacaranda”

Go to muos.dev/release/current and locate the entry for your device. Download only from the official site or its linked GitHub releases page – third-party mirrors and video description links have historically been a source of tampered or outdated images, and the muOS project explicitly tells users to “always ensure you download from our official download page or supported mirrors.”

The download is a compressed disk image ending in .img.gz, with your device name and the 2601.1 version in the filename. Do not extract it. The official muOS install guide says to select the compressed .img.gz file directly in your imaging tool, which handles decompression during the write. Extracting first just wastes disk space and adds a step where corruption can creep in. On Linux or macOS you can also stream it from the command line: gunzip -c muOS-image.img.gz | sudo dd of=/dev/YOUR_SD_CARD bs=4M conv=fsync status=progress.

# Verify the download didn't get corrupted in transit (Linux/macOS)
sha256sum your-device-2601.1-image.img.gz
# Compare the output against the checksum listed on muos.dev/release/current
# for your exact device build before extracting or flashing

Skipping the checksum step is how a lot of “boot loop” support tickets start. A partially downloaded or corrupted image can extract without an error and still fail catastrophically on the handheld, so the thirty seconds this takes is worth it.

Step 3: Format and Prepare Your microSD Card(s)

Devices with two card slots (labeled TF1 and TF2 on most Anbernic boards) use Card 1 for the operating system and Card 2 for your ROM library. Single-slot devices run both the OS and ROMs from the same card. If you’re reusing a card that previously held stock firmware or a different custom firmware, back up anything you need first, because the flashing process in the next step wipes it completely.

You don’t need to manually format or partition the OS card before flashing, because Raspberry Pi Imager and Rufus both handle partitioning as part of writing the image. If you’re prepping a second card purely for ROM storage, format it as FAT32 for cards up to 32GB, or exFAT for anything larger, since FAT32 caps individual file sizes at 4GB and some PS1 or Dreamcast disc images exceed that.

Step 4: Flash the Image with Raspberry Pi Imager or Rufus

Insert your OS card into the reader and open your flashing tool. The steps differ slightly by platform.

Using Raspberry Pi Imager (Windows, macOS, Linux):

  1. Open Raspberry Pi Imager and click “Choose OS”, then scroll to “Use custom”
  2. Select the compressed .img.gz file you downloaded, no extraction needed
  3. Click “Choose storage” and pick your microSD card, double-checking the drive letter or disk identifier against the card’s listed capacity
  4. Click “Write” and enter your admin password if prompted
  5. Wait for both the write and the automatic verification pass to finish

Using Rufus (Windows only):

  1. Insert the card and open Rufus
  2. Under “Device,” select your microSD card
  3. Click “SELECT” and choose the downloaded .img.gz file
  4. Confirm the write mode as “Write in DD Image mode” when prompted – this is critical, since Rufus’s default ISO mode will produce a card that doesn’t boot
  5. Click “START” and wait for completion

This is the step where selecting the wrong drive matters most. If your PC has multiple external drives connected, unplug everything except the SD card reader before you flash, so there’s no chance of overwriting the wrong disk.

Step 5: First Boot and Initial Filesystem Expansion

Eject the card safely, insert it into Slot 1 (TF1) on your handheld, and power the device on. The first boot after flashing is slower than every boot after it, because muOS expands its filesystem to use the card’s full capacity – this typically takes 30 to 60 seconds, sometimes longer on larger cards. Don’t power the device off during this window even if the screen looks frozen; interrupting the expansion is one of the few ways to actually corrupt the install.

Once expansion finishes, you’ll land on a device-type confirmation screen on some builds, followed by timezone and date setup. Confirm your handheld model matches what’s shown (this is a second safety check that you flashed the correct image), then proceed to the main muOS launcher, organized into Content, Explore, Favourites, History, and Apps.

Step 6: Insert Your Second Card (If Applicable) and Add ROMs

If your device has a second slot, power it off, insert your formatted ROM card into TF2, and boot again. muOS scans the card for a roms folder structure and populates the Content menu automatically. Connect the card to your PC first (either directly or by pulling it from the handheld) and create system-specific subfolders – GB, GBA, SNES, PS1, and so on – matching the naming convention muOS expects, which is documented on the device’s info screen inside the firmware itself.

Copy your own ROM dumps into the matching folders. muOS does not ship with any games, and downloading ROMs for titles you don’t own a legal copy of is copyright infringement in most jurisdictions – this tutorial assumes you’re loading dumps you made yourself from cartridges or discs you own.

ROM2/
├── roms/
│ ├── GB/
│ │ └── pokemon-red.gb
│ ├── GBA/
│ │ └── pokemon-emerald.gba
│ ├── SNES/
│ │ └── chrono-trigger.sfc
│ └── PS1/
│ ├── final-fantasy-vii-disc1.bin
│ └── final-fantasy-vii-disc1.cue

Step 7: Add BIOS Files for Systems That Need Them

Some emulated systems – PS1, Sega CD, Neo Geo, and most arcade cores among them – require original BIOS files to run at all. muOS’s RetroArch-based cores expect these BIOS files in a dedicated system directory, following the same naming conventions RetroArch itself uses upstream. Place BIOS files in the BIOS folder on your OS or ROM card (the exact path is shown in muOS’s file browser under Apps), matching filenames like scph5501.bin for US PS1 consoles or scph5502.bin for PAL. Getting the filename or region wrong is the most common reason a PS1 game boots to a black screen instead of the BIOS splash.

As with ROMs, BIOS files are copyrighted firmware and dumping your own from hardware you own is the only legal path to acquiring them – muOS does not, and will not, bundle them.

Step 8: Connect Wi-Fi and Enable Box Art Scraping

From the main menu, open the device settings and locate the network section. Toggle Wi-Fi on, scan for available networks, and select yours. Enter your password using the on-screen keyboard (most muOS builds support a physical Bluetooth keyboard here too, which is much faster than thumbing it in with a D-pad). Once connected, return to the Content menu – muOS will begin pulling box art and metadata for recognized ROMs in the background, matching filenames against its scraping database.

Scraping accuracy depends heavily on clean filenames. A ROM named chrono-trigger.sfc scrapes correctly almost every time; a ROM named ct(u)[!]rev2.sfc often won’t match anything. If you’re migrating from a large existing collection with messy filenames, it’s worth a pass through a batch-rename tool before your first scrape.

Step 9: Configure RetroArch Cores for Each System

muOS runs its emulation layer on RetroArch cores under the hood, and while most systems auto-select a sensible default core the first time you launch a game, some benefit from manually switching. SNES titles, for instance, run fine on the default core for 95% of the library, but a handful of enhancement-chip games (Star Fox, Super Mario RPG) need a specific core variant to run correctly. From the in-game quick menu, you can swap cores, adjust shaders, remap buttons per-game, and tweak save-state slots without leaving the emulator.

For anything demanding – PSP, Dreamcast, or original PlayStation on the more powerful TrimUI Brick and Smart Pro – check the per-core performance settings and enable frame-skip or reduce internal resolution if you notice audio crackling or slowdown during busy scenes. These settings live inside RetroArch’s own menu, accessible from muOS’s game launch screen.

Step 10: Map Controls and Test Every Button

Before you settle into a play session, run through every button, trigger, and stick to confirm the mapping is correct – this matters more on muOS than stock firmware because custom firmware occasionally ships with a generic control profile that doesn’t perfectly match your exact hardware revision. If a button is unresponsive or mapped to the wrong action, muOS’s input configuration menu (under device Settings) lets you remap individually, and that mapping applies system-wide rather than needing to be redone per emulator.

Also check analog stick deadzones if your device has them – a stick with a small dead zone that’s set too aggressively can make platformers feel unresponsive, while one set too loose introduces drift in racing or shooting games.

Step 11: Set Up Save States and a Backup Routine

Save states are handled per-core through RetroArch and stored locally on your OS card, separate from your ROM files. muOS doesn’t currently document a built-in cloud sync feature, so treat your card as the single source of truth for progress and back it up manually and regularly. The simplest routine: every couple of weeks, connect the card to your PC and copy the save and state folders to a synced cloud folder (Dropbox, Google Drive, or similar) or an external drive.

This matters more than it sounds. microSD cards fail without warning far more often than SSDs or spinning drives, and a card failure on a device with no built-in backup means losing every save unless you kept a copy elsewhere. A simple backup script, run whenever you connect the card to a PC, removes the temptation to skip this step out of laziness.

# Example backup script for macOS/Linux - run after mounting the muOS card
SRC="/Volumes/MUOS/muos/save"
DEST="$HOME/Backups/muos-saves/$(date +%F)"
mkdir -p "$DEST"
rsync -av "$SRC/" "$DEST/"
echo "Backed up $(find "$DEST" -type f | wc -l) save files to $DEST"

Adjust the source path to match wherever your specific muOS build stores save and state files – check the file browser under Apps if you’re unsure of the exact folder name, since it can shift slightly between releases.

Step 12: Apply Themes and Customize the Interface

muOS supports community themes that change the launcher’s visual layout, fonts, and color scheme. Themes are typically distributed as installable packages you drop into a dedicated themes folder on the OS card, then select from the Appearance settings menu. Search volume for “muos themes” is consistently among the highest muOS-related queries, reflecting how much the community treats theming as part of the setup process rather than an optional afterthought. If you want a specific look – a Game Boy-style palette, a modern flat UI, or a nostalgic CRT scanline effect – check community theme repositories before building your own from scratch.

Common Pitfalls When Installing muOS

These are the mistakes that account for most muOS support requests, in order of how often they come up.

  • Flashing the wrong device image. RG35XX, RG35XX Plus, and RG35XX H each need a distinct image file. Always match the exact model before downloading.
  • Writing the ISO instead of the raw image in Rufus. If you don’t manually select “DD Image mode,” Rufus defaults to ISO mode, which produces a card that won’t boot.
  • Skipping checksum verification. A corrupted download can extract cleanly and still fail on the handheld, wasting an entire flash cycle.
  • Powering off during first-boot expansion. The 30-60 second filesystem expansion on first boot is the one moment where interrupting power can actually damage the install.
  • Using off-brand or counterfeit microSD cards. Fake-capacity cards are common on marketplace sites and will corrupt data silently once you exceed their real capacity, even though the OS reports the fake size as available.
  • Downloading from third-party mirrors. Stick to muos.dev and its official GitHub releases; unofficial mirrors and video-description links have been a recurring source of stale or tampered builds.
  • Messy ROM filenames breaking box art scraping. Clean, simple filenames scrape correctly far more often than region-tagged or bracket-heavy names.

Output Example: A Successful First Boot

Here’s roughly what you should see if everything went correctly, so you can confirm your install matches expected behavior rather than guessing:

[Boot] muOS 2601.1 "Funky Jacaranda" starting...
[Boot] Expanding filesystem to full card capacity...
[Boot] Expansion complete (42s)
[Boot] Loading device profile: RG35XXPLUS
[UI] Launching muOS shell
[UI] Menu ready: Content | Explore | Favourites | History | Apps
[Network] Wi-Fi: disconnected
[Storage] TF1: 58.2GB free / 64GB
[Storage] TF2: not detected

If your log (visible via the Apps > System Info menu) shows a device profile mismatched to your actual hardware, or the expansion step never completes, stop and re-flash rather than trying to push forward – those two symptoms almost always mean the wrong image or a corrupted write.

muOS vs Other Custom Firmware Options

muOS isn’t a universal answer – it’s built for a specific hardware family. The table below shows where it fits against the other actively used custom firmware projects in the retro handheld space as of 2026.

FirmwarePrimary DevicesBaseBest For
muOSAnbernic RG28XX-RG40XX, TrimUI Brick/Smart Pro (H700-class chips)MustardOS (Linux)Fast boot, box art scraping, dual-card setups
knulliRockchip RK3326/RK3566/RK3588 handheldsBatocera-derived LinuxBroad multi-device compatibility
ArkOSRK3326-based devices (RG351 series, older Anbernic boards)LinuxLong-established Rockchip support
JELOSVarious ARM handheldsLinuxEmulationStation-based front-end
RocknixRockchip and select other ARM SoCsLinuxActively maintained multi-device support

If your handheld isn’t Anbernic H700-class or a TrimUI Brick/Smart Pro, muOS likely won’t have official support, and one of the Rockchip-focused projects above is the better starting point. Always check the specific device compatibility list on each project’s site before committing, since chipset support shifts as new handhelds launch.

What Actually Runs Well on muOS: Performance Expectations by System

Setting realistic expectations before you install saves a lot of frustration later. The H700 and A133-class chips inside these handhelds are built for older, less demanding systems, not for pushing 3D-heavy libraries at full speed. Game Boy, Game Boy Color, Game Boy Advance, NES, SNES, and Genesis all run essentially flawlessly across every device on this list – these systems are decades old and modern ARM chips have more than enough headroom for them, even at the lowest end of the price range.

Nintendo 64 and original PlayStation sit in a middle tier: most titles run well, but a handful of demanding games (heavy N64 titles with high polygon counts, or PS1 games leaning hard on transparency effects) can show occasional slowdown, particularly on the smaller-RAM Anbernic boards. This is where the TrimUI Smart Pro’s higher-resolution screen and slightly faster clock speed give it a real edge over the entry-level RG35XX models, since it has more thermal and clock headroom to draw on. PSP and Dreamcast are the most demanding systems these chips can attempt at all, and results vary title by title – the RetroArch quick menu settings covered in Step 9 (reduced internal resolution, frame-skip) exist specifically to help these two systems stay playable rather than being universally smooth out of the box. Systems beyond that tier, including PS2, GameCube, and Wii, are outside what any H700 or A133-class handheld can realistically emulate, regardless of which custom firmware you install.

Recommended microSD Cards for muOS

Card quality affects both boot speed and long-term reliability more than most people expect going in. A slow or counterfeit card is the leading cause of “muOS feels laggy” complaints that have nothing to do with the firmware itself.

Card TypeCapacity RangeRated SpeedUse Case
SanDisk Extreme A264GB-256GBUp to 160MB/s readOS card + demanding PSP/Dreamcast libraries
Samsung EVO Select A264GB-512GBUp to 130MB/s readLarge ROM card (2,000+ titles)
SanDisk Ultra A132GB-128GBUp to 100MB/s readBudget OS card for GB/GBA/SNES-tier systems
Generic/unbrandedVaries (often mislabeled)UnverifiedNot recommended – frequent silent data corruption

Advanced Tips for muOS Power Users

Once the base install is solid, a few advanced tweaks make a real difference in day-to-day use. Enable overclocking cautiously through muOS’s performance settings if you’re chasing full-speed PSP or Dreamcast emulation on a TrimUI Brick – push it in small increments and watch for thermal throttling rather than jumping straight to the maximum listed clock. Set up per-system shader profiles instead of one global shader; a CRT shader that looks great on a Game Boy Color library often looks muddy on 3D PS1 titles, so switching per-system keeps visuals sharp across your whole collection.

If you manage a large collection across multiple devices, keep a master ROM and BIOS folder structure on your PC and sync subsets to each handheld’s card rather than maintaining separate collections by hand – it saves hours when a new muOS release changes folder conventions. Power users chasing remote access should also look at muOS Rt:Tailscale, a module that shipped in July 2026 and lets you reach your handheld’s file browser over a Tailscale network without exposing it directly to the internet. Finally, check the Current Releases page on muos.dev before every major firmware jump rather than auto-updating blindly; point releases like 2601.1 are generally safe, but larger version jumps occasionally change folder structures or config file formats in ways that are worth reading about first – development on the next major build, 2606.0 “Andromeda,” was already confirmed in progress as of September 2026, according to the MustardOS Community, so expect another folder-convention shakeup once it lands.

Troubleshooting: 8 Common muOS Problems and Fixes

1. Device won’t boot past the logo screen. Re-flash the image, confirming you selected the correct device model and used DD/image mode rather than the default file-copy mode in your flashing tool.

2. Black screen after the muOS boot animation. Almost always a device-image mismatch. Double-check the exact board revision (Plus vs H vs SP) and re-download the matching file.

3. Controller inputs not registering. Confirm the correct device type was selected during first-boot setup – an incorrect selection can load the wrong input profile. Remap manually through Settings > Input if needed.

4. Wi-Fi won’t connect. Re-enter the password carefully (special characters are a common culprit), try a 2.4GHz network if your router broadcasts both bands, and toggle Wi-Fi off and back on from Settings.

5. ROMs don’t appear in the Content menu. Verify the folder structure matches muOS’s expected naming (check Apps > File Browser for the exact expected paths) and that the card is inserted in the correct slot for your device.

6. Box art isn’t scraping. Confirm Wi-Fi is connected first, then check that ROM filenames are clean and closely match the game’s actual title – heavily tagged or abbreviated filenames often fail to match the scraping database.

7. PS1 or Sega CD games boot to a black screen. Missing or misnamed BIOS files are the near-universal cause. Confirm filenames and regions match exactly what the core expects (for example, scph5501.bin for US PS1 systems).

8. Audio crackling or slowdown in demanding systems. Open the in-game RetroArch quick menu and reduce internal resolution or enable frame-skip for that specific core, particularly on PSP and Dreamcast titles.

Complete Working Project: A 500-Game Multi-System Handheld in One Session

Putting the full workflow together, here’s what a complete setup looks like end to end for someone starting from a brand-new Anbernic RG35XX Plus and building out a library spanning Game Boy through PS1.

  1. Confirm the exact board model (RG35XX Plus) and download the matching muOS 2601.1 image from muos.dev
  2. Verify the checksum and flash the compressed .img.gz directly to a 64GB SanDisk Extreme A2 card using Raspberry Pi Imager
  3. Boot the device, wait through the filesystem expansion, and confirm the device profile matches RG35XXPLUS
  4. Format a second 256GB card as exFAT and build the roms/ folder structure for GB, GBA, SNES, Genesis, and PS1
  5. Copy your own legally-owned ROM dumps into the matching folders and insert the card into TF2
  6. Add PS1 BIOS files (dumped from a console you own) to the BIOS directory
  7. Connect Wi-Fi and let box art scraping run in the background while you configure controls
  8. Test every button and stick, then remap anything that feels off in Settings > Input
  9. Launch a PS1 title to confirm the BIOS loads correctly, then check a SNES title to confirm the default core runs at full speed
  10. Set up a recurring backup of the saves and states folders to a cloud-synced folder on your PC
  11. Install a community theme to personalize the launcher
  12. Do a final full power-cycle test to confirm settings persisted after reboot

Following that sequence start to finish typically takes 90 minutes for a first-timer, most of which is spent waiting on downloads and the box art scraper working through a few hundred titles rather than active hands-on work.

Frequently Asked Questions

Does installing muOS void my handheld’s warranty?
Because muOS runs entirely from a removable microSD card and never touches the device’s internal storage or bootloader, most manufacturers don’t treat it as a hardware modification. Swapping back to your original stock-firmware card restores the device to its factory state instantly.

Can I run muOS and stock firmware side by side?
Yes. Keep your original stock-firmware card separate from your muOS card and simply swap them in the device’s slot depending on which you want to boot into that session.

Is muOS free?
Yes, muOS is free and open-source, distributed through muos.dev and its GitHub releases page.

Which handhelds does muOS NOT support?
Devices built on Rockchip SoCs (RK3326, RK3566, RK3588, and similar), including many Powkiddy and older Anbernic boards, generally aren’t covered by muOS. Those devices are better served by knulli, ArkOS, JELOS, or Rocknix.

How do I update muOS to a newer version later?
Check muos.dev/release/current for the latest build, download the updated image for your exact device, and re-flash following the same process – point releases land often, like 2508.2 “Silly Goose” in October 2025, so it’s worth checking even between major version jumps. Back up your saves and ROM folders first, since a fresh flash of the OS card resets its contents (your separate ROM card, if you use one, is unaffected). If you’d rather manage ROMs and saves without re-flashing every time, the companion muOS-app (v0.2.1, released March 13, 2025 on GitHub) adds a lightweight way to browse and transfer files to the card from your PC between firmware updates.

Will muOS run PS2 or GameCube games?
No. The H700-class chips in supported Anbernic devices and the TrimUI Brick/Smart Pro aren’t powerful enough for PS2 or GameCube emulation at playable speeds. muOS is built around systems up through PS1, Dreamcast, and PSP, depending on the specific handheld’s processing power.

What happens if my SD card dies?
You lose whatever wasn’t backed up externally. Because muOS stores saves and states on the card itself with no built-in cloud sync, the manual backup routine covered in Step 11 is the only real protection against this.

Do I need to know Linux to use muOS?
No. muOS’s front-end is designed for controller navigation with no command-line interaction required for day-to-day use. Linux familiarity only becomes useful if you’re troubleshooting deep or contributing to the project’s GitHub repository.

Sofia LindstrÃķm

Sofia LindstrÃķm

Editor-in-Chief

Sofia LindstrÃķm is the Editor-in-Chief at Tech Insider, where she leads editorial strategy and oversees coverage across AI, cybersecurity, and enterprise technology. With over a decade in Swedish tech journalism, she previously served as technology editor at Dagens Industri and covered the Nordic startup ecosystem for Breakit. Sofia holds an MSc in Media Technology from KTH Royal Institute of Technology and is a frequent speaker at Web Summit and Slush. She is passionate about making complex technology accessible to business leaders.

View all articles