Installation
ArchR Flasher GUI or manual dd
You only need a microSD card (8 GB+, 16 GB+ recommended) and 5 minutes. The recommended path is the ArchR Flasher — it picks the right image variant for your board, applies the correct panel overlay automatically, and verifies the write.
Option 1 — ArchR Flasher (recommended)
The Flasher is a small desktop app (Tauri) that downloads the latest release, picks the correct panel overlay for your motherboard, writes the SD card, and verifies the write. Available for Linux and macOS.
Download the Flasher
Get the latest release from archr-flasher releases.
- Linux:
.AppImage(no install) or.debfor Debian/Ubuntu/derivatives - macOS:
.dmg
Plug your microSD
8 GB or larger. The Flasher will erase everything on the card before writing — back up anything you need first.
Pick the board / panel
Open the Flasher and:
- Choose your board variant — Original or Clone. If unsure, check the back of your device or the boards table on the Features page.
- Choose your motherboard revision from the dropdown (e.g.
R36S-V21_2024-12-18_2551,G80CA-MB_V1.3-20251212_Panel_8). The Flasher reads the silkscreen text printed on the back of the motherboard. - Optional toggles:
- Joypad variant — Auto · K36 · MyMini (only matters for clones)
- JP layout — Japanese button labels (A↔B, X↔Y swap)
- SRs (force simple audio) — for boards with non-standard amplifier wiring
- Dno (skip vendor mode) — disables the boot-time vendor screen on some boards
Write
Click Flash. The Flasher downloads the image (or uses the cache), wipes the SD, writes, then reads back to verify the SHA256.
About 3 minutes total on a class 10 card.
Boot
Insert the SD into the device, power on. First boot does an automatic partition resize and reboots once — total ~30 s. After the second boot you land in EmulationStation.
Option 2 — Manual dd
If you prefer the command line or are on Windows (use Rufus, Etcher, or the Raspberry Pi Imager equivalent).
Download an image
From Arch-R releases grab one of:
ArchR-R36S.aarch64-DATE-original.img.gz— for genuine R36SArchR-R36S.aarch64-DATE-clone.img.gz— for K36 / clone hardware
Decompress
gunzip ArchR-R36S.aarch64-*.img.gzIdentify the SD device
lsblk
# look for your card — usually /dev/sdX or /dev/mmcblkXDouble-check the device path. Writing to the wrong disk will erase it.
Write
sudo dd if=ArchR-R36S.aarch64-*.img of=/dev/sdX bs=4M conv=fsync status=progress
syncApply panel overlay (manual path only)
The default image boots a generic panel overlay. If your screen is blank or distorted, mount the BOOT partition and copy the correct overlay:
sudo mount /dev/sdX1 /mnt
ls /mnt/overlays/ # see all 43 available overlays
sudo cp /mnt/overlays/<your-mb-revision>.dtbo /mnt/overlays/mipi-panel.dtbo
sudo umount /mntFind your motherboard revision printed on the back of the board.
Boot
Insert and power on. First boot resizes and reboots; second boot reaches ES.
First boot
After flashing, the first power-on does the following automatically and then reboots:
1. parted resizepart → /storage uses the full SD
2. e2fsck + resize2fs → ext4 filesystem grows
3. tune2fs -U random → fresh UUID
4. fsck.fat -a -w → BOOT FAT primário/backup sincronizados
5. rebootThe resize log lives at /flash/fs-resize.log if you ever need to inspect it.
The second boot creates ROM directories (one per system) and lands in EmulationStation. From there you can add ROMs and enable SSH.
Variants explained
| Variant | U-Boot | Boot logo | Hardware |
|---|---|---|---|
original | BSP Rockchip | Yes | R36S, R33S, Odroid Go family, Anbernic RG351, GameForce Chi, MagicX XU10 |
clone | Mainline v2025.10 | No | K36, EE Clone, Powkiddy RGB10/RGB10X/RGB20S, MagicX XU-Mini-M, BatLexp G350 |
The two images differ only in U-Boot and panel overlay set. Kernel, rootfs, RetroArch, EmulationStation are identical.
Troubleshooting
Black screen after the boot logo. Wrong panel overlay. Re-flash with the correct motherboard revision selected, or copy the right .dtbo to /flash/overlays/mipi-panel.dtbo from another machine.
Boot loops or hangs after first reboot. Capture cat /storage/.boot_last_hang after the eventual successful boot — it names the script that hung. See Troubleshooting.
"BOOT FAILED" on a clone device with the original image. You picked the wrong variant. Use the clone image.
Flasher says "image checksum mismatch". The download was corrupt. Click "Flash" again; the Flasher re-downloads and retries.