Anbernic Handheld Consoles — Summary & Reference
This article provides an introduction to Anbernic, along with tips, pointers, and best practices for using your Anbernic gaming console. While there are similarities due to emulation and hardware, we have itemised this into Operating Systems (ArkOS, 351Elec, etc) and Devices (351, 353, 503, 552 series, and more).
Who or What is Anbernic?
Anbernic is a Chinese manufacturer of affordable handheld game consoles. The initial 350P and 351P were very popular Linux-based gaming handhelds. Their ever-growing range now offers varied retro gaming consoles from small to large and everything in between. They vary from Linux, Android, and Windows, with the majority running Linux and featuring a nice menu interface that loads your games with ease. Game settings, button layouts, and so on can be relatively easily tweaked, delivering instant fun and options to a broad community of retro gaming enthusiasts.
Are Anbernic Any Good?
Anbernic offers a broad range of gaming handhelds with varied appeal. The one consistent thing is that Anbernic continues to evolve and release different models. They are constantly learning and improving, and continue to deliver retro gaming handhelds with a quality finish. Unlike competing handhelds, Anbernic is usually well priced while always delivering quality controls, a beautiful display, and finish.
What Software/OS Does Anbernic Use?
Anbernic consoles primarily use a variant of the Linux Operating System. They come with a modified version of Batocera from the factory. This uses EmulationStation and RetroArch as an easy-to-use frontend interface to emulate retro gaming consoles.
The higher-spec handhelds use smartphone chipsets with Android drivers, meaning handhelds like the RG405, RG505, RG556, and RGCube are Android OS-based. These Android gaming handhelds come with games however any custom firmware or emulation customisation needs to be carried out manually post purchase.
Custom Firmware (CFM)
The good news is that Custom Firmware is also available from AmberElec, ArkOS, JELOS, and Retro Arena. CFM software is created by passionate developers who contribute their time for free in order to improve the device experience and get more out of gaming consoles including Anbernic ones.
CFM improves the interface you see when navigating consoles and games while streamlining performance, resulting in a better gaming and overall experience. Custom Firmware takes Anbernic and other gaming consoles to the next level.
Custom firmware is currently available for the following Anbernic consoles:
RG351P, RG351M, RG351V, RG351MP, RG353P, RG353V, RG503, RG552, RG35XX
Please keep in mind: We provide generic guidance on how each operating system works, and there may be differences between systems and versions. If you choose to explore and install a system your device did not ship with, it may very likely not be supported by Anbernic, as they, nor your reseller have control over many aspects of these. So, while an exciting time, please tread with caution as setting these systems up comes with its own unknowns and challenges.
Console Architecture Groups
RK3326 Series (Budget Linux)
- RG351P (3:2), RG351M (3:2), RG351V (4:3), RG351MP (4:3)
- RG353P (4:3), RG353M (4:3), RG353V (4:3), RG353VS (4:3)
RK3566 Series (Mid-range Linux)
- RG503 (4:3)
- RG353PS (4:3)
RK3399 Series (High-performance Linux)
- RG552 (5:3)
H700 Series (Budget Linux)
- RG35XX (4:3), RG35XXPLUS (4:3), RG35XXH (4:3), RG35XXSP (4:3), RG35XXPRO (4:3)
- RG34XX (3:2), RG34XXSP (3:2)
- RG40XXH (4:3), RG40XXV (3:2)
- RG28XX (4:3)
T618 Series (High-performance Android)
- RG405M (4:3), RG405V (4:3)
- RG505 (16:9)
T820 Series (High-performance Android)
- RG556 (16:9)
- RG406H (16:9)
- RG406V (4:3)
- RGCube (1:1)
- RGSlide (4:3)
Dimensity 8300 Series (Premium Android)
- RG557 (16:9)
- RG477M (4:3)
Windows Chipset
- WIN600 (16:10)
3 Initial Things to Consider: Charging, Battery Life, and Shutting Down
Charging
Anbernic recommends using a 5V 1A or 5V 2A DC power supply/charger.
A genuine Samsung AC fast charger is well suited with an output of 5V 2A, as will the older iPhone at 5V 1A and iPad chargers delivering 5V 2.1A. However, newer Apple chargers are rated at 9V 2.2A.
You will also need to use a USB-A to USB-C charger. A USB-C to USB-C will NOT charge!
So a large USB connection like what’s on a computer on the power side and the smaller C port on the Anbernic DC port. Keep in mind there are usually 2 OTG Ports of which one is DC.
Nothing is stopping you from using other methods like your computer, battery banks, or chargers. That said we have experienced devices not charging properly and exhibiting strange behaviours when not charged as recommended by Anbernic.
Battery Life
On the topic of battery, if your device has inbuilt WiFi, Anbernic recommend turning it off when not in use to reduce battery drain and improve device performance at low charge.
We have experienced cases where controls have become unresponsive, or display misbehaves at around the 30% mark. So while this isn’t always the case, it emphasises the importance of using the right charger and ultimately battery care for your console.
Shutting Down
You can turn your Anbernic console off using the power button; however best practice is to power it down via the menu by pressing Start → Quit → Shutdown System. We’ll explore this in more detail below.
The Heart of Your Device: SD Card Management
Longevity-wise, as the Micro SD card stores the operating system and titles, you should consider making a backup of the card, or storing it away and upgrading to a premium brand-name card setup.
The standard cards that come in these devices are not premium and can fail, meaning you can lose any tweaks or updates you may have made or even worse, required system files.
There is a consensus in the retro gaming community that the standard cards should be backed up and stored away, and that you purchase a premium card as soon as you can.
Should you choose to not update the card, we recommend backing up the standard cards before proceeding to make any changes to your setup/Micro SD Card.
Backing Up and/or Making a New Card
We use a 3.0 micro SD card reader and Win32DiskImager for Windows 10.
While a 3.0 reader is up to 10x faster than a 2.0 reader, either will do the job. If you experience slow speeds, it could be that your computer’s USB is 2.0.
Keep in mind that whatever your card size is, you’ll need that and more to store it on your computer.
Backup Process:
- Remove the Micro SD Card from your Anbernic by pushing it in. Be prepared as it can fly out once you move your finger away
- Insert into the card reader already connected to your computer
- CAREFULLY cancel any windows and prompts to format the card
- Using Win32 Disk Imager 1.0, click on the folder to the right of ‘Image File’
- Select where you want to save the backup of your SD Card and give it a file name, eg ‘rg351pBackup’ (it will automatically add the .img extension)
- Click ‘Open’
- Open File Explorer and check what drive your Micro SD card is listed as, usually D or E, but be sure, as it will back up whatever drive you select
- Choose that drive from the ‘Device’ dropdown
- Untick OR Do not tick ‘Read Only Allocated Partitions’ as you want all partitions on the SD card backed up
- Click the ‘Read’ button and walk away
Make sure your computer isn’t set to hibernate or turn off when not being used!
To Restore:
To write rg351pBackup.img back to a new SD Card, just do the opposite: choose the existing image file, then the target SD Card from ‘Device’ and click the ‘Write’ button, and walk away.
Formatting SD Cards
- Format tool: SD Card Formatter by TUXERA
WiFi Hardware
- Require USB WiFi Dongle: RG351P, RG351V, RG35XX (female USB-A to male USB-C adapter + 802.11n nano dongle into left OTG port)
- Built-in WiFi: RG351M, RG351MP, RG353 series, RG35XXPLUS and newer models, RG34XX series, RG40XX series
Storage Architecture
Single-card systems (RG351P/M, stock):
- Partition 1: OS (FAT16)
- Partition 2: Emulation files (EXT4, Linux-only access)
- Partition 3: ROMs/BIOS (FAT32, user-accessible)
Dual-card systems (RG351V/MP, RG503, RG552):
- TF1: OS
- TF2: Games partition
XX Series (RG35XX, RG34XX, RG40XX):
Varies from dual-card setup (16GB OS card & 64GB+ Games card) to single-card setup (64GB OS/Games card)
Custom firmware: Can run OS+games from a single card (up to 1TB)
Operating System Reference
Stock Linux Systems (Factory Batocera variant)
Consoles: Most RG351 & RG353 series, RG503, RG35XX series
Interface: EmulationStation + RetroArch
Power Up:
H700-powered devices require holding the power button longer
Power Down:
Start → Quit → Shutdown System (prevents data corruption)
OR: Press M → Shutdown
WiFi Setup (Stock):
- Enable: Start → Network Settings → Enable WiFi
- Connect: Select SSID → Enter password
FTP Access:
SFTP port 22
IP: Check Network Settings
User: root / Pass: varies by system
Exit RetroArch Games:
Press both Joypads → B → Quit RetroArch
OR: Select + Start (double press if hotkey enabled)
OR: Press M → Exit Game option varies by console
Save States:
Press both Joypads → Save State / Load State → A to confirm
RetroArch Core Options:
Both Joypads → Core Options → Screen Orientation / FrameSkip / etc
Remap Controls:
Both Joypads → Controls → Port 1 → Controls → Remap → Save Game Remap File
(Avoid Directory/Core remap unless intentional)
Analog to Digital:
Controls → Port 1 Controls → Analog to Digital Type → Left Analog Forced
351Elec / AmberElec
Consoles: RG351P/M/V/MP (custom firmware)
WiFi: Start → Network Settings → Enable WiFi → Select SSID → Enter key
FTP: SFTP port 22, root/351elec
Exit Game: Select + Start (double press)
Force Exit: L2 + Select + Start
PS1 Controller Fix: Both Joypads → Controls → Port 1 → Device Type (Standard/Dual Shock)
PSP Performance Tweaks: Both Joysticks → Settings → Graphics:
- Frame skipping: 1
- Auto Frameskip: ON
- Force Max FPS: 30
Search Games: Y (per console, not global)
Change Emulator Core: Hover game → X → Advanced Game Options → Emulator
Clean Assets: Start → Emulation Station Settings → Developer → Clean Gamelists
Changing Per Game Emulation Core:
Hover game → X → Advanced Game Options → Emulator → Select core → A
Keyboard/Mouse Games:
Remap DPad/Joypad/Buttons to original controls → Save Game Remap File
Background Music:
Press the left Joypad to skip to the next track
Remove Unused Assets:
Start → Emulation Station Settings → Developer → Clean Gamelists & Remove Unused Medias
Firmware Updates:
Pre-2.0: Fresh install required
2.0+: Place the upgrade file in GAMES/update folder
Download: 351ELEC releases
ArkOS
Consoles: RG351P/M/MP (custom firmware)
WiFi: OPTIONS section (scroll past consoles) → WIFI → Shoulder buttons to navigate → + to connect
FTP: SFTP port 22, ark/ark
Enable: OPTIONS → enable remote access
Exit Game: Select + Start (double press)
RetroArch Access: Hold Select → Press X
Change Core: Select on game → Edit metadata → Emulator → Choose core → Save
Favourites: Hover title → Y
Clock Speed: OPTIONS → High Speed (1.3GHz → 1.5GHz)
GBA Fix: Start → Emulator Settings → Nintendo GBA → Emulator: RetroArch → Core: MGBA
Dreamcast (351MP): Hold A while loading for 640×480 (otherwise 320×480)
File Manager: OPTIONS → 351 Files (navigate with caution, exit: Y → Quit)
JELOS
Consoles: RG353P/M (custom firmware)
Boot Freeze Fix: Hold Volume+ during boot
WiFi: START → Network Settings → Show Network Indicator → Enable WiFi → Select SSID → Enter password
Samba Access: Network Settings → Enable Samba
Windows: \\192.168.0.xxx (root/password set via System Settings)
Update OS: START → System Settings → Start Update
Manual: Place .tar file in \\192.168.0.xxx\update
Root Password: Start → System Settings → Root Password (disable Rotate Root Password if unwanted auto-change)
Edit Game Settings: Hover game → X → Edit emulator/metadata
Windows Explorer Access:\\192.168.0.xxx → Username: root → Password: set in System Settings
Garlic OS
Consoles: RG35XX series, RG34XX series, RG40XX series (custom firmware)
Exit Game: Menu (single/double press)
Power/Sleep: Hold Power (sleeps in-game, resumes on wake)
RetroArch Access: Hold Menu → Press X
Single Save Slot: Menu+X → Back → Settings → Saving → Disable “Increment Save State Index Automatically”
Android Systems
Consoles: RG405M, RG405V, RG505, RG556, RG406H, RG406V, RGCube, RGSlide, RG557, RG477M
Power Up:
Hold the power button until the device vibrates, then it will power up
RG405M Specifics:
- Power: Hold the round button (top right of volume)
- Navigate: Touchscreen or controls
- Exit Game: Round button below Dpad (home arrow)
- Toggle Game Interface: Swipe down twice → R icon ON
- Select/Start: Bottom right below Joypad
RG505 Specifics:
- Power: Hold the round button at the base (near the SD slot)
- Return to Main: Oval back button (right side)
- Launch Interface: Circle button (right side, below back)
- Navigate Game List: A to select console → B to return → A to start game → START+B for in-game selections
- Exit Game: SELECT + START (opens RetroArch → B → UP → Quit RetroArch)
OR: Circle button (exits entire interface) - Power Menu: Hold power → Android options
Factory Reset: Settings → System → Reset Options → Erase All Data
Windows Systems
Consoles: WIN600 (16:10)
OS: Windows 11
Batocera from USB: Power on → Hold Volume- → Select USB via Dpad+X (mouse mode, not gamepad)
Stock RG35XX (Closed-source)
Exit Game: Menu + Start → A on Exit Game
Power: Hold Power (3 sec for shutdown, see Goodbye screen)
Shutdown via Menu: Settings (cogs) → A → Shut down
Stock RG552 (Batocera variant)
Menu Access: Function button (base, not Reset)
Exit: Scroll to selection → A
Dual Boot (Linux/Android):
Boot Android: Remove SD or disable Default Linux boot (Start → System Settings)
Switch OS: Function + Power (hold until green light)
RetroArch Exit: Hold Start/Select together
Boot from Linux: 16GB micro SD in TF1 slot
Universal Functions
RetroArch
Irrespective of operating system or hardware, RetroArch is a common frontend used to navigate, launch, emulate, and tweak game settings.
Accessing RetroArch:
Consoles with dual Joypads (joysticks) usually access RetroArch from within a game by pressing both Joypads down at the same time.
Core Options:
Within RetroArch, you can access specific emulators → Core Option,s including Screen Orientation and FrameSkip
Controls (Most Common Area):
Remap buttons and force the Joypad to be used instead of the DPad:
Controls → Port 1 Controls → Set Analog to Digital Type as Left Analog Forced
Press B till you reach Quick Menu → A A to Resume game
If Joypad now works in place of DPad, go back into RetroArch settings and save these settings. If not, exit and restart the game to return to the default.
Saving Remap Changes:
Once both Joypads are pressed down: Controls → Manage Remap Files → Save Game Remap File → B B B and A A to Resume
Caution: Be cautious not to save remap for Directory or Core as this will change all those games and may result in having to remove remap for specific games where these controller changes don’t work.
Save States & Progress Data
Save States:
Allow you to save game progress and load/continue from that point later. Irrespective of console, many use RetroArch for this.
To Access: Press down on both Joypads while in game → Scroll down → Press A to save current position or load previously saved position
During Gameplay:
Your console tracks progress and updates. The biggest loss risk is saving states/metadata. Depending on play duration, operating system, and settings, this can happen incrementally or at shutdown.
How Progress is Saved:
- RetroArch: Progress saved when you exit a game
- EmulationStation: Saves data to card upon shutdown using menu (not power button)
Proper Shutdown:
Shutting down using Start → Quit → Shutdown System ensures the console has enough time to perform all of the above and shut down in a proper fashion.
Not doing so will mean, at minimum, you lose progress and saves — not recommended and can result in tears of varied levels.
Best practice, please 🙂
Controller Type Switching (PS1 & Other Consoles)
PS1 titles are set to use standard controller by default. If a game loads with no working buttons:
RG351P/M/MP:
Both Joypads → Controls → A → Port 1 Controls → A → Device Type → Select “Standard” or “Dual Shock” using left/right DPad → B → Both Joypads to resume
Repeat the process to try other controller types. In some games, this switches between DPad and Joypad.
This approach works on other consoles to swap controller types when experiencing control issues.
Emulator-Specific Notes
N64
Cores: Mupen64Plus, Mupen64Plus Stand Alone
Change (all games): Select → Advanced System Options → Emulator
Change (per game): Hover game → Select+X → Advanced Game Options → Emulator
Drastic (Nintendo DS)
Not RetroArch-based
Exit: Depress left Joypad → Exit Drastic → B
L2: Switch screens
R2: Toggle single/dual view (L2 after R2 swaps screen order)
R3: Stylus touch (right Joypad moves pointer, A selects)
RG353P/M: Select + Start won’t exit — press left Joystick → Exit → B
PSP
Exit: Select+Start won’t work — press left/right Joystick → Exit → B
RG353P: Press right Joystick → Exit → B
Performance Tweaks (351Elec/AmberElec):
Both Joysticks → Settings → Graphics:
- Frame skipping: 1
- Frame skipping type: Number of frames
- Auto Frameskip: ON
- Force Max FPS: 30
Daphne (Laserdisc)
Not RetroArch-based
Exit: Select + Start together
Coins: Select
Play: Start
Note: Loads slowly — be patient, may appear frozen
ScummVM
Not an emulator — complete game rewrite
Add Games: Tools → Scan Games
Menu: Start (navigate: left Joypad, select: A, exit menu: Y)
Virtual Keyboard: Select (navigate: Joypad, select: A)
Pico-8
Files: Download from lexaloffle.com/pico-8.php
Linux: Use raspi files in root + /carts folder (pico8, pico8.dat, pico-8.txt, pico8_dyn may be needed)
Exit: Start → Shutdown
C64/Amiga
Loading Notes:
Games may take longer to load and appear frozen on the blue C64 load screen — be patient
Basic Controls:
- Keyboard: Select button or press right Joystick (show/hide)
- In-game selection: B button
- Space bar: X (skip intro, etc)
- Run/Stop: R/S key on virtual keyboard (bottom left near Commodore key)
- Enter: RET key (used after entering name)
- Fire button: X+B together (some games)
Navigation:
The right Joypad is used for menu selection, shoulder buttons for Yes/No. The keyboard can also be used for Y/N and other keys. Some games require keyboard and button combinations to start.
Copy Protection:
Enter page/word references using keyboard — you can usually enter anything by pressing Enter
Virtual Keyboard Issue:
If the virtual keyboard is visible when accessing RetroArch settings (Select+X), it may not be removable when returning to the game. Turn VK off before accessing RetroArch, or save settings/remap, exit, and reload the game to test changes.
Controller Configuration:
Select+X (in-game) → Controls → Port 1 Controls
Some games prefer RetroPad with Left Analog (forced), but this varies by console and game. Keyboard-only games may need button mapping to reflect keyboard controls. Can also attach USB keyboard to OTG port using a USB-A to USB-C adapter.
Press B → Quick Menu → Resume to test. Repeat until satisfied, then: Controls → Manage Remap Files → Save Game Remap File
Caution: Be careful not to accidentally save for all games
Atari
Keyboard: Press left Joystick (for game start/player selection)
ZX Spectrum
Keyboard: SELECT (show/hide), A to select
Game Selection: Numbers via virtual keyboard
Kempston Joystick: Both Joypads → Controllers → Port 1 → Kempston Joystick → Manage Remap Files → Save Game/Core Remap File
ROM Management
These instructions are generic and may vary depending on your console, operating system, and any custom settings. Use this as a reference — in-depth guides on ROM versions and settings are available from sources like Retro Game Corps.
Understanding Storage Configurations
Factory OS setups:
- Single-card systems (RG351P/M): OS and games on one SD card across three partitions
- Dual-card systems (RG351V/MP, RG503, RG552): Second micro SD card slot used for games storage by default (software setting, not hardware limitation)
Custom firmware options:
If using custom firmware (ArkOS, AmberElec, JELOS), you can run OS and games from a single card up to 512GB or potentially 1TB.
Adding ROMs
Place ROM in the correct folder for console (N64, MAME, etc)
Check extension matches supported formats
ROM version must match BIOS (MAME: 0.78/0.119/0.213)
Access Methods:
- Remove micro SD → Insert into 2.0/3.0 card reader
- FTP via WiFi (slower than 3.0 reader)
Once you’ve placed the ROM in the correct folder using the methods described above, it should appear in that console’s game list (N64, MAME, etc). Art and image previews will display if present.
Reference: Systems & Paths
MAME Cores Available
MAME2003-Plus (recommended), MAME2000, MAME2010, MAME2015, MAME, FBNeo, FBAlpha2012, FBAlpha2019
Troubleshooting
- ROM not showing: Check folder/extension
- ROM fails to load: Wrong ROM version for BIOS
- Change core: Hover game → X/Select → Advanced → Emulator/Core
Recommended Test Titles
MAME: Pengo (1982)
Sharp X68000: Galaga ’88 (1987)
PC Engine: Xevious (1990)
PC Engine CD: Super Raiden (1992)
Neo Geo: Spin Master (1993)
FBN Arcade: Air Assault (1993)
Sega: Chuck Rock (1994)
PS1: War Games Defcon 1 (1998)
N64: Battle Tank Global Assault (1999)
Dreamcast: 4 Wheel Thunder (2000)
Capcom II: 1944 The Loop Master (2000)
Sega Naomi: WWF Royal Rumble (2000)
GBA: Action Man Robot Atak (2004)
Nintendo DS: Asphalt Urban GT2 (2005)
SNES: New Super Mario Land (2019 fan remake)

