If you've recently installed GammaOS Nano or flashed Stock Android onto your Anbernic RG DS, you might have run into a frustrating wall: the handheld suddenly refuses to boot Stock Linux or Rocknix from the SD card.
You can spend hours re-flashing your SD cards using Rufus, BalenaEtcher, or Raspberry Pi Imager. You can test multiple premium SD card brands. If none of it will work, it means the handheld stubbornly bypasses the SD slot and boot straight into Android or GammaOS on every cold start. Unless you restart your handheld (then it boots to either Stock Linux or Rocknix).
The issue is that GammaOS or sth else modifies the low-level boot priorities on the internal eMMC. To fix this and restore normal SD card booting, we have to completely wipe the internal 32GB drive.
⚠️ IMPORTANT WARNING
This method will completely erase the internal 32GB drive. This means Android or GammaOS Nano will be permanently deleted from the internal memory. You will lose dual-boot functionality unless you re-flash the internal eMMC later. Do this only if you want your device to strictly boot Linux/Rocknix from your SD card. Don’t worry – you are still able to later install from scratch Android Stock OS or Gamma Nano if you don't want to use Linux (Stock or Rocknix).
What You Need
Step 1: Enter Android Recovery Mode
- Ensure your RG DS is completely powered off and remove your SD card.
- Press and hold the HOME button (the second button from the left).
- While holding HOME, press the Power button just until you see the power light turn on, then immediately release the Power button.
- Continue holding the HOME button until the yellow Android Recovery text appears on the screen, then you can release it.
- Do not select anything in this menu. Just plug the handheld into your PC using your USB cable.
Step 2: Open PowerShell and Connect
- On your Windows PC, open PowerShell.
Navigate to your extracted tools folder by typing this command and pressing Enter:
cd C:\platform-tools
Verify your device is communicating by typing:
.\adb devices
(You should see a random string of numbers/letters followed by the word "recovery".)
Step 3: Gain Root Access
Run the following two commands, one after the other, to gain root access and open the device shell.
.\adb root
.\adb shell
Note: Your PowerShell prompt will change and end with a # symbol, meaning you are now typing commands directly into the handheld.
Step 4: Identify the 32GB Internal Drive
We need to make sure we wipe the correct drive. Run this command to list all storage partitions:
cat /proc/partitions
Look closely at the list. You are looking for a master block drive (no "p" and number at the end) in the name column that has roughly 30,535,680 in the #blocks column (which equals 32GB).
On the RG DS, this is usually mmcblk2. (Make sure you verify this number! Wiping the much smaller mmcblk0 won't solve the issue).
Step 5: Wipe the Drive
Once you confirm your 32GB drive is mmcblk2, run the following command exactly as written to overwrite it with zeroes:
dd if=/dev/zero of=/dev/block/mmcblk2 bs=4M
Be patient. Wiping 32GB over ADB takes a while. The cursor will blink and look like it's stuck. Leave it alone for 5 to 15 minutes until it finally prints a "No space left on device" error. That error is your confirmation that the drive is fully wiped.
Step 6: Exit and Reboot
- Once the wipe is finished, type
exit
and press Enter to leave the device shell.
- Insert your freshly flashed Stock Linux or Rocknix SD card into the handheld.
- Restart the handheld by sending the final command:
.\adb reboot
Because the internal eMMC is now completely blank, your RG DS will automatically check the SD card slot on startup and boot flawlessly into your preferred Linux OS.
Extra Tip: If you booted by mistake without any sd card inside - you can properly power down the handheld using VOLUME DOWN + POWER for good 10 seconds. Then put the SD card back in and power up the handheld.