HI Handheld Index

Firmware Guide

ROCKNIX vs JELOS: Why You Should Migrate (and How)

JELOS was retired in March 2024. ROCKNIX is the official successor from the same team. Step-by-step migration for RG353 and compatible RK3566 devices.

Fabian Brunner

Zürich, Switzerland

Published May 1, 2026

If you built your RK3566 or RK3326 device library on JELOS, you picked a solid foundation — EmulationStation frontend, RetroAchievements support, PortMaster, overclocking. The problem is that JELOS reached its end of life in March 2024, and the original maintainers stopped cutting new binaries. The project is archived, not dead, but you’re not getting fixes or new emulator cores.

ROCKNIX is not a third-party fork from someone who liked the project. The same team that built JELOS started ROCKNIX as the actively-developed successor. The architecture is nearly identical — it’s still an immutable Linux distribution with an EmulationStation frontend — which means migration is less disruptive than switching between fundamentally different firmware families. If you’re still on JELOS in 2026, this guide walks you through the move.

What you’ll need

  • A microSD card (same card your JELOS install is on, or a blank one for a clean install)
  • A card reader connected to your PC or Mac
  • One of: balenaEtcher, Rufus, or dd on Linux/macOS
  • 30 minutes minimum, longer if you’re transferring a large ROM library
  • Risk level: low on SD card installs; medium if your device requires touching internal storage (this varies by device — the RG ARC-D and RG ARC-S specifically require wiping the Android partition for internal installs)

Compatible devices for ROCKNIX as of the verified fact sheet: Anbernic RG353P, RG353M, RG353V, RG353VS, RG503, RG ARC-D, RG ARC-S; Powkiddy RGB30, RK2023, RGB10 Max 3, RGB20SX, X55.

Before you start

Back up your JELOS SD card before touching anything. On most devices JELOS uses a dedicated STORAGE partition for saves, states, scraped media, and your EmulationStation configuration. Clone the whole card with dd or use balenaEtcher’s “Create Image from Drive” feature. Copy the STORAGE partition contents to your PC separately as a second backup — this is what you’ll restore to ROCKNIX’s equivalent partition after flashing.

ROCKNIX uses the same EmulationStation frontend and a similar directory structure, so most saves and states carry over cleanly. Scraped media and custom themes may need re-scraping or manual transfer.

What gets wiped: the system partition, kernel, and base OS. Your ROM library on a secondary microSD card is untouched. Your saves and states on the JELOS storage partition will be wiped when the image is written — hence the backup step above.

Recovery path: if something goes wrong, you can re-flash your original JELOS image from the backup. JELOS binaries are archived on GitHub and archive.org. The install is fully reversible on SD-card-based devices.

Step 1: Download the firmware

Go to the official ROCKNIX releases page: https://github.com/ROCKNIX/distribution/releases

Nightly builds are available at https://nightly.rocknix.org/ if you want the absolute latest, but for a migration the stable release is the sensible choice.

ROCKNIX offers two image types — a generic image that covers the full Rockchip SoC family, and device-specific images optimized per device. For best results, download the device-specific image for your hardware if one is available.

SHA256 checksums are published in the release notes. Verify your download before flashing:

sha256sum ROCKNIX-RG353P.aarch64-YYYYMMDD.img.gz

Compare the output against the hash in the GitHub release. A mismatch means a corrupted download — re-download before proceeding.

Step 2: Prepare the SD card

If you’re flashing to a blank card, no pre-formatting is needed — balenaEtcher and dd will write the full partition table from the image. If you’re reusing your existing JELOS card, the flash will overwrite everything.

Recommended card: a quality A1 or A2-rated microSD at UHS-I Speed Class 3 or better. Slow cards cause stuttering during game loading and can cause write errors during flashing. Cards marketed specifically for dashcams and surveillance (high endurance) tend to perform poorly for random I/O — use a mainstream gaming or standard application card.

Step 3: Flash the image

With balenaEtcher (recommended for beginners):

  1. Open balenaEtcher and select “Flash from file”
  2. Choose the .img.gz file — Etcher handles decompression natively
  3. Select your target SD card (double-check the drive letter/device node)
  4. Click “Flash” and wait for the verification pass to complete

With dd on Linux/macOS:

gunzip -c ROCKNIX-RG353P.aarch64-YYYYMMDD.img.gz | sudo dd of=/dev/sdX bs=4M status=progress conv=fsync

Replace /dev/sdX with your actual card device. Run lsblk first to confirm.

With Rufus on Windows: Select the .img.gz, choose DD mode (not ISO), and write to the SD card. Rufus will warn you that the card will be erased — confirm and proceed.

The write typically takes 5–15 minutes depending on card speed and image size.

Step 4: First boot

Insert the card and power on your device. First boot on ROCKNIX takes longer than subsequent boots — the system expands the storage partition to fill the remaining card space. On a 64 GB card this can take 60–90 seconds. Do not power off during this process.

You’ll land in the EmulationStation frontend. The interface will be familiar if you came from JELOS — same navigation paradigm, same scraper integration. ROCKNIX will prompt you to configure your Wi-Fi credentials if it doesn’t carry them over from a previous install.

Common first-boot issues:

  • Black screen after logo — the device-specific image may not match your exact hardware revision. Try the generic image for your SoC family.
  • Controller not responding — ROCKNIX auto-detects most button layouts, but you may need to re-run the controller mapping wizard under Settings.
  • Date/time wrong — connect to Wi-Fi; ROCKNIX will sync NTP automatically.

Step 5: Add your games

ROCKNIX mounts a STORAGE partition visible as a network share over SMB when connected to your local network. This is the simplest way to transfer a large ROM library from a PC without physically removing the card.

Default ROM directory structure follows standard EmulationStation conventions:

/storage/roms/gba/
/storage/roms/psx/
/storage/roms/n64/

BIOS files go in /storage/roms/bios/. The ROCKNIX documentation at https://rocknix.org/ lists the exact filenames and MD5 hashes required per system — follow that reference rather than guessing, because core-specific BIOS naming is unforgiving.

If you backed up your JELOS storage partition, you can copy the roms/ and bios/ subdirectories directly across. Saves and save states stored in the saves/ and states/ directories are compatible in most cases because ROCKNIX uses the same RetroArch core set.

Common issues and fixes

The ROCKNIX fact sheet has no open issues: entries at the time of writing, which reflects a relatively clean project health for a firmware this young. Community observations worth noting:

Performance tips

These apply specifically to what’s documented in the ROCKNIX feature set:

  • OTA updates — ROCKNIX supports over-the-air updates. Check for updates from the Settings menu after your Wi-Fi is configured. Staying current is the main reason you migrated, so don’t skip this.
  • Overclocking — ROCKNIX exposes per-device CPU governor and frequency settings. These are accessible under System Settings. Start conservatively; thermal throttling on plastic handhelds without active cooling is real.
  • PortMaster — the PortMaster integration is included. Access it from the main EmulationStation menu to install community ports. Your JELOS PortMaster installs do not carry over automatically; reinstall from the ROCKNIX PortMaster catalogue.
  • RetroAchievements — enter your RetroAchievements credentials under Settings → RetroAchievements. Hardcore mode and leaderboards are supported.
  • Netplay — available through RetroArch for supported cores. Requires a stable Wi-Fi connection; 5 GHz is strongly recommended over 2.4 GHz for latency-sensitive games.
rocknixjelosmigrationfirmware