Any Custom Firmware for the Retron Sq?

  • Thread starter Thread starter UoyKcahi
  • Start date Start date
  • Views Views 26,252
  • Replies Replies 56


I used a German tutorial for, checking and expanding the userdata partition from 40MB to 1GB. Honestly, it was a pain after two days of figuring it out, following others that did it before me. This requires a virtual machine running linux operating systems like Ubuntu for file editing Retron Sq‘s sd card. This Retron Sq is running GB/GBC, GBA, NES, SNES, and Sega Genisis. More involved than expected, hopefully co-op games using the Hyperkin AlphaStar BT Adapter would work? Thanks!

unnamed_1.jpg
 

Attachments

  • Screenshot 2025-09-04 at 9.32.08 AM.png
    Screenshot 2025-09-04 at 9.32.08 AM.png
    278 KB · Views: 36
  • Screenshot 2025-09-04 at 9.32.26 AM.png
    Screenshot 2025-09-04 at 9.32.26 AM.png
    35 KB · Views: 29
Last edited by Food2024,


I used a German tutorial for, checking and expanding the userdata partition from 40MB to 1GB. After two days of figuring it out, following others that did it before me, honestly It was a pain, and surprisingly I needed a virtual machine with linux. My Retron Sq is running GB/GBC, GBA, NES, SNES, and Sega Genisis. This is a lot more involved then I expected, but hopefully co-op games using the Hyperkin AlphaStar BT Adapter could work?

View attachment 525995

How are people expanding it without making it boot up slower?

And can we update the Retroarch cores yet?
 
How are people expanding it without making it boot up slower?

And can we update the Retroarch cores yet?
If you're using the FW provided here in this thread you can create a FAT32 partition of any size and it does not affect performance or load time in any way. Also, you can add your own cores and BIOS files to the userdata partition if you pop the SD card into a Linux machine or Linux VM and just copy cores/info files/etc to where retroarch expects them to be.
 
How are people expanding it without making it boot up slower?

And can we update the Retroarch cores yet?


Following this youtube tutorial checks and, resizes the userdata partition. After this, using Ubuntu can edit the files in userdata for, adding additional cores into the Retron Sq.

I used a linux operating system, Ubuntu, on Oracle's virtual machine VirtualBox. The tutorial for this is German, so using captions (CC) on youtube, and auto-translating them helps. The video's description has any tools that's needed. (scroll up)
 
Last edited by Food2024,
Does anyone know what tool(s) are used to unpack the SquashFS FW image and repack after making changes?

I've done this with an individual partition image before but not with a complete vendor .img file that has multiple partition .img files inside of it.

I have some changes to the boot process and retroarch I would like to make that require editing the rootfs.
 
Does anyone know what tool(s) are used to unpack the SquashFS FW image and repack after making changes?

I've done this with an individual partition image before but not with a complete vendor .img file that has multiple partition .img files inside of it.

I have some changes to the boot process and retroarch I would like to make that require editing the rootfs.
This feature on the Retron Sq was probably chosen by programmers that didn't use, or understand it. It's for updates, and usually there's typically two partitions of A and B. There's supposed to be those two partitions, for old firmware and, new firmware when updating. The Retron Sq v1.2 has 6 partitions, A and B from v1, v2, and v3? with no other firmware updates in 4 years sense?

That's my take on it.
 
Last edited by Food2024,
This feature on the Retron Sq was probably chosen by programmers that didn't use, or understand it. It's for updates, and usually there's only two partitions. There's supposed to be those two partitions A and B for old firmware and new firmware when updating. The Retron Sq V1.2 (3rd update) has 6 partitions, A and B, from v1, v2, and v3. and no firmware updates in 4 years sense.

What your saying doesn't address my question at all.

There are 5 partitions in the CFW image available on the first page of this post, which is a modified version of official v1.2 FW. The partitions are 0.uboot, 1.trust, 2.boot, 3.rootfs and 4.userdata. The CFW also automounts a 6th partition if present that you can create and format FAT32 to store ROMs and other files on. I have extracted the 5 partitions that are part of the image and have gotten rkdeveloptool to extract the rootfs so I could make changes and then repack it properly.

What I am asking is how I can repack all 5 partitions (using my modded rootfs in place of the original) into the single *.img file that would then be flashed to the sdcard.
 
What your saying doesn't address my question at all.

There are 5 partitions in the CFW image available on the first page of this post, which is a modified version of official v1.2 FW. The partitions are 0.uboot, 1.trust, 2.boot, 3.rootfs and 4.userdata. The CFW also automounts a 6th partition if present that you can create and format FAT32 to store ROMs and other files on. I have extracted the 5 partitions that are part of the image and have gotten rkdeveloptool to extract the rootfs so I could make changes and then repack it properly.

What I am asking is how I can repack all 5 partitions (using my modded rootfs in place of the original) into the single *.img file that would then be flashed to the sdcard.
devtest1.33GPL-2.0+
expat2.2.5MIT
fbv1.0bGPL 2.0
ffmpeg3.4.2LGPL-2.1+, libjpeg license and GPL-2.0+
fontconfig2.12.4fontconfig license
freetype2.8.1Dual FTL/GPL-2.0+
giflib5.1.4MIT
glibcglibc-2.26-146-gd300041c533a
3d837c9f37a099bcc95466860e98
GPL-2.0+ (programs), LGPL-2.1+, BSD-3-Clause, MIT (library)
input-event-daemonv0.1.3input-event-daemon license
jpeg-turbo1.5.2jpeg-license (BSD-3-Clause-like)
kmod24LGPL-2.1+ (library)
libdrm2.4.89MIT
libevdev1.5.8X11
libffi3.2.1MIT
libglib22.54.2LGPL-2.0+
libgudev230LGPL-2.1+
libinput1.8.2MIT
liblockfile1.09LGPL-2.0+, GPL-2.0+ (dotlockfile)
libopenssl1.0.2nOpenSSL or SSLeay
libpng1.2.59libpng license
libpthread-stubs0.4MIT
libretro-vbam36b011c72e5e6f7be4ce
bb24f3b8324ec209aef0
GPL 2.0
libretro-mgbaca9c9119ded9c112eafd
7301460ac25c2765731a
MPL 2.0
libselinux2.7Public Domain
libsepol2.7LGPL-2.1+
libusb1.0.21GPL 2.1
libxkbcommon0.7.1MIT/X11
libxml22.9.7MIT
libzlib1.2.11Zlib
linux-headers4.4.118GPL 2.0
lockfile-progs0.1.17GPL 2.0
memtester4.3.0GPL 2.0
mesa3d17.3.6MIT, SGI, Khronos
mpp-release1.3.8Apache 2.0
mtdev1.1.4MIT
ncurses6MIT with advertising clause
pcre8.41BSD-3-Clause
pixman0.34.0MIT
pm-utils1.4.1GPL-2.0+
readline7GPL 3.0
retroarch3e27a504ed3b3675d377
e985094f3fdb267237bc
GPL 3.0
rt-tests1GPL-2.0+
sdl22.0.12zlib license
No permission issue.------
sdl2_gfx1.0.1zlib license
No permission issue.------
sdl2_image2.0.1zlib license
No permission issue.------
sdl2_mixer2.0.1zlib license
No permission issue.------
sdl2_ttf2.0.14zlib license
No permission issue.-----
upower0.99.4GPL-2.0+
usbdevice0.0.1Apache V2.0
usbmount0.0.22BSD-2-Clause
util-linux2.31.1GPL-2.0+, BSD-4-Clause, LGPL-2.1+ (libblkid, libfdisk, libmount), BSD-3-Clause (libuuid) ISC (rfkill)
wayland1.14.0MIT
wayland-protocols1.12MIT
weston3.0.0MIT
xkeyboard-config2.22GPL 2.0
[th]
Software Name​
[/th][th]
Version​
[/th][th]
License​
[/th]​
Post automatically merged:

Honestly, It will be a nightmare going through that mess. Even people paid to do this for a living would struggle, and hate doing it.
Post automatically merged:

What your saying doesn't address my question at all.

There are 5 partitions in the CFW image available on the first page of this post, which is a modified version of official v1.2 FW. The partitions are 0.uboot, 1.trust, 2.boot, 3.rootfs and 4.userdata. The CFW also automounts a 6th partition if present that you can create and format FAT32 to store ROMs and other files on. I have extracted the 5 partitions that are part of the image and have gotten rkdeveloptool to extract the rootfs so I could make changes and then repack it properly.

What I am asking is how I can repack all 5 partitions (using my modded rootfs in place of the original) into the single *.img file that would then be flashed to the sdcard.
Post automatically merged:

What your saying doesn't address my question at all.

There are 5 partitions in the CFW image available on the first page of this post, which is a modified version of official v1.2 FW. The partitions are 0.uboot, 1.trust, 2.boot, 3.rootfs and 4.userdata. The CFW also automounts a 6th partition if present that you can create and format FAT32 to store ROMs and other files on. I have extracted the 5 partitions that are part of the image and have gotten rkdeveloptool to extract the rootfs so I could make changes and then repack it properly.

What I am asking is how I can repack all 5 partitions (using my modded rootfs in place of the original) into the single *.img file that would then be flashed to the sdcard.
Post automatically merged:

Using dd on Linux

"sudo dd if=/dev/sdX of=output.img bs=4M status=progress

Replace /dev/sdX with your actual device name and output.img with your desired image file name.

Identify the disk: Determine the device name of the disk containing the 6 partitions (e.g., /dev/sdb, /dev/mmcblk0). Use tools like lsblk, fdisk -l, or parted -l to identify it. " (AI Overview)
Post automatically merged:

Search: how to convert 6 partitions to a img file
 

Attachments

  • Screenshot 2025-09-04 at 8.33.55 PM.png
    Screenshot 2025-09-04 at 8.33.55 PM.png
    151.4 KB · Views: 39
  • Screenshot 2025-09-04 at 8.34.09 PM.png
    Screenshot 2025-09-04 at 8.34.09 PM.png
    157 KB · Views: 30
  • Screenshot 2025-09-04 at 8.34.17 PM.png
    Screenshot 2025-09-04 at 8.34.17 PM.png
    120.8 KB · Views: 40
  • Screenshot 2025-09-04 at 8.50.46 PM.png
    Screenshot 2025-09-04 at 8.50.46 PM.png
    148.4 KB · Views: 39
  • Screenshot 2025-09-04 at 8.51.53 PM.png
    Screenshot 2025-09-04 at 8.51.53 PM.png
    169 KB · Views: 34
Last edited by Food2024,
I just did this to the Retron Sq. Honestly, it took like 2 days to figure it out but, is the best thing I've picked up (Sega genisis, Game boy/ Color, NES, SNES, and GBA). It was a such a pain though
 
Hi everyone,

I'm considering buying a RetroN SQ because I really like the design and I currently see some offers around 100€. However, I have a few questions about the current state of the custom firmware.

From what I understood earlier in this thread, one of the goals of the CFW was enabling saving directly to the cartridge instead of only using emulator save states. Is this currently working?

Also, how is the GBA performance right now? I'm mainly interested in games like Pokémon, Minish Cap, and Mario, so a smooth experience would be important for me.

Is the gameplay with CFW noticeably better than with the official firmware, especially regarding GBA emulation and saving?

Thanks a lot for any updates on the current status!
 
Hi everyone,

I'm considering buying a RetroN SQ because I really like the design and I currently see some offers around 100€. However, I have a few questions about the current state of the custom firmware.

From what I understood earlier in this thread, one of the goals of the CFW was enabling saving directly to the cartridge instead of only using emulator save states. Is this currently working?

Also, how is the GBA performance right now? I'm mainly interested in games like Pokémon, Minish Cap, and Mario, so a smooth experience would be important for me.

Is the gameplay with CFW noticeably better than with the official firmware, especially regarding GBA emulation and saving?

Thanks a lot for any updates on the current status!
I don't know the state of the CFW, but the GBA performance was fixed it an update. Turns out it's a Retroarch core that had frameskip enabled, and turning it off was the fix.

I'd just like to have an alternate CFW that can run EmulationStation or something as a front-end launcher. Some kind of bootable Linux that doesn't slow down the boot sequence when I expand the ROMs partition.
 
  • Like
Reactions: Patho
I don't know the state of the CFW, but the GBA performance was fixed it an update. Turns out it's a Retroarch core that had frameskip enabled, and turning it off was the fix.

I'd just like to have an alternate CFW that can run EmulationStation or something as a front-end launcher. Some kind of bootable Linux that doesn't slow down the boot sequence when I expand the ROMs partition.
Right now I am looking at the Retron SQ or the GB Operator, but I do like the fact that I dont have to connect the Retron to a computer.
I saw conflicting informations about how the Retron saves files. Right now I believe it doesnt save to cartridge with the official firmware?
 
Right now I am looking at the Retron SQ or the GB Operator, but I do like the fact that I dont have to connect the Retron to a computer.
I saw conflicting informations about how the Retron saves files. Right now I believe it doesnt save to cartridge with the official firmware?
Correct, it doesn't save to the carts. It dumps the cart and save to the machine and then fires them up in the emulator. The GB Operator does save to the cart after you're done playing. A Chromatic from ModRetro can stream the video output to things like OBS over USB C, for streaming if that's your jam. It now does audio over Type C as well. There's also IPS screen kits for various Game Boy models that have a 720p HDMI out solution. So you've got a few options to play your real carts on.
 
  • Like
Reactions: Patho
Ty so muc Jayro. I already digged a bit, the chromatic is new for me.
Already looked into:
GC + Japanese GB Player with GBI

HDMI, Consolizer Kits (Dont wanna gut my nearly mint gba)

Homeboy 88 ( Just GBA tho (fpga), you can find it on Aliexpress)

GBA "Switch" Kit (like gutting, I also dont want to modify my GBA, can find it on Aliexpress)

Retron devices (The SQ looks really neat but not being able to save on the cart is a no no / the Retron 5 is fugly and way too expensive)

GB Operator.
-> I think this will do, its the cheapest and I can put in and look at my cartridges.

Yeah, still sideeying on the GB Player. But I also dont have a GC...
"Native" experience or FPGA would be awesome but I think it shall be the operator.

TY, helped me alot on my decision
 
  • Like
Reactions: Jayro
Ugh... I'm giving in. I bought this device a while ago to allow my daughters to play all the retro Pokémon games on the big screen as a family, but I never documented my changes back then. I need to reproduce the steps for another device I'm donating. I'll try to do a better job of documenting my changes and will hopefully get the source up on github.

Props to @Food2024 for posting the German YouTube video and adding your comments. It gave me a great starting point.
Post automatically merged:

Here's the AI generated translation of the German YouTube video linked above and here:







Chapter 1: Teaser


Fed up with Game Boy titles running without options? The Retro Gamer finally gets settings, proper color palettes, and the ability to play other games too — we'll show you how it's done.


Chapter 2: Intro


Welcome to this video! I'm [the host], and today we'll show you how to get even more out of your Retro Gamer console. In our review of the console, we already explained its advantages and numerous disadvantages. Although the system is solidly built and comes with a decent controller, it still has clear weaknesses in the area of firmware and Game Boy Advance support. The storage space for your games on the included micro SD card is too small, the color scheme of Game Boy games can't be adjusted, and the same goes for the button mapping of the controller. Under the hood, the console fortunately runs a customized Linux — and with a little effort using RetroArch, many of these shortcomings can be fixed. We can even make the console capable of playing ROM files from other consoles like the Super Nintendo and Mega Drive. So, ready? Let's go!


Chapter 3: Setup Requirements


To follow along, you'll need: a PC, a cheap USB hub, a USB keyboard (wired or wireless), a USB stick (preferably USB 3.0 or newer), and a micro SD card with at least 2 GB of storage. Since the RetroArch software loads from the card, a reasonably fast one is recommended — but you can go with the smallest size, and we'll explain why later. You'll also need some software: a tool for writing images to USB sticks or SD cards, a partition editor, emulator cores for additional systems in RetroArch, and ideally the latest firmware for the Retro Gamer. If you're doing this on Windows, you'll also need a tool to access Linux file systems.


Chapter 4: Software Download


It's not exactly easy to mod the Retro Gamer, but it's worth it — and if our viewers follow our instructions carefully, they'll definitely have more fun with it afterward, I can promise you that. We'll download all the required software upfront to get it out of the way. All download links are also in the video description below. For flashing images, we use Balena Etcher, which you can download at balena.io. It's also available as a portable version, so you don't even need to install it and can delete it afterward if you want. Save it to the desktop. For editing the SD card partition, we use the GParted live image, available at gparted.org or SourceForge, which you'll need to boot from a USB stick. Save that to the desktop too. To play games from other systems later, you'll need some emulator cores — just Google "Libretro nightly cores," which will take you to the Libretro buildbot where you can download the latest cores. In the side menu, select Linux → ARMv7 NEON HF → Latest, and you'll see the available cores for download. We created a "cores" folder on the desktop and downloaded the following cores: Game Boy Advance, SNES, Mega Drive, and Neo Geo. If your Retro Gamer isn't on the latest firmware, download it from the product page at hyperkin.com/smart-boy. At the time of this video, that's version 1.2. Since Windows itself still can't read or write Linux file systems, you'll also need the program "Linux File Systems for Windows" by Paragon Software, available as a trial version at paragon-software.com.


Chapter 5: More Storage Space


First, we tackle the problem of insufficient storage on the SD card. As explained in our review, the console basically just creates ROM files from your Game Boy cartridges and saves them to the micro SD card — specifically on the user data partition. Unfortunately, Hyperkin not only formatted this partition as FAT32 but also made it a laughably small 65 MB, which means even a few GBA titles can become a problem. So we need to write the downloaded firmware to a larger micro SD card and then use GParted to enlarge the user data partition so we have enough space for more games. Insert your micro SD card into the card reader and launch Balena Etcher. Select the firmware ZIP archive, choose the SD card as the target, and start flashing. Once done, insert your USB stick and launch Etcher again — this time select the GParted ISO, choose the USB stick as target, and start a new write process. When that's done, boot your PC from the USB stick to launch the GParted live system. Keep both the stick and SD card plugged in. The method for booting from USB via BIOS varies by device — usually you press Escape, F2, F8, F10, F12, or Delete shortly after turning on the PC. Many devices show a brief on-screen hint. Once you've selected the USB stick in the boot menu and set your keyboard layout and language, the GParted live system will greet you. At startup, a dialog to repair the partition table of the SD card will appear — just confirm it. Then switch the dropdown in GParted to your SD card to see its partitions. At the bottom, you'll find the tiny user data partition. Right-click on it, deselect the green checkmark, then right-click again on user data and select "Resize." In the following dialog you can set the new desired size — but here comes the first limitation: you should NOT use the entire remaining space on the SD card. The reason is that the console's boot time depends directly on the size of this partition — the larger the user data partition, the longer the startup takes. We tested different sizes and found 1 GB to be just barely acceptable. 1 GB may not sound like much, but in practice it's enough for quite a few 8- and 16-bit console games, and it's still better than staring at a black screen for minutes while the console boots. Seriously, it takes a really long time — we're not sure exactly what's happening, but Hyperkin definitely needs to fix this. Set the new size to 1024 MB and confirm. Once done, you've successfully expanded the storage. Exit GParted and return to Windows.


Chapter 6: Configuring RetroArch


Before dealing with emulator cores and ROMs, you should set up access and configuration for RetroArch. Eject the card, put it in the console, insert any cartridge, connect the controller and keyboard via USB hub, and start the console. Once the game loads, press F1 on the keyboard — the RetroArch quick menu should open, and you can now navigate settings with either keyboard or controller. First, set a button combo so you can access the menu in the future without a keyboard. Go to Settings → Input → RetroPad Combo and choose your desired button combination — we chose Start + Select. Then go to Settings → Video → Aspect Ratio and set it to "Core Provided" to let each emulator core determine the aspect ratio — we had some odd issues with a few GBA games without this. If you want to remap your controller buttons, go to Input → Port 1 Controls and go through the inputs. To prevent your changes from being lost on restart, save the configuration via Configuration → Save Current Configuration. Next, for the Game Boy color scheme: go back to the quick menu for the VBM emulator core (which should still be loaded), then Options, and select a fitting color palette under "GB Palette" — we like "Virtual Game Boy" for an authentic look. Save the settings under Quick Menu → Overrides → Save Core Override. Now you can turn off the console and reconnect just the controller. When you insert a game and restart, it should display with the original Game Boy color palette, and you can open the RetroArch menu anytime with Start + Select.


Chapter 7: Copying Emulator Cores & ROMs


Now for the emulator cores and ROMs. Plug the SD card back into your PC and return to Windows. To access the user data partition, install the previously downloaded "Linux File Systems for Windows" tool. It's free as a 10-day trial; after that, transfer speeds are reduced, but for the small amounts of data we're copying, that's still fine. We couldn't find a good freeware alternative without limitations — if you have a suggestion, please leave it in the comments. Once installed, the partition should appear automatically in your drive overview. If not, click "Restart the service" in the program window. Now just copy the downloaded emulator cores and ROMs to the card. Unzip the cores in the download directory and copy them into the "cores" folder on the SD card. For ROMs, create a folder with the same name in the root directory of the card and save your games there. Done! You can now play ROMs from other systems on the console.


Chapter 8: How to Launch ROMs


Boot the console with a cartridge inserted and the SD card in, then press Start to go directly to the RetroArch menu. There, select the emulator core for the desired console via "Load Core" — for example, FCEUmm for NES — then via "Load Content" navigate to your ROMs folder and select the game. And that's it!


Here's a look at how the Retro Gamer handles our game selection — starting with a round of Castlevania 3... and we're also throwing Zelda into the mix. In our review we mentioned that this game is one that the console can't properly read from the cartridge, but if you generate a valid ROM via another reader, the console plays the file without any problems.


As you can see, RetroArch plays games from 8- and 16-bit consoles without issue — even Neo Geo titles and Super FX games for the SNES work fine. Just keep in mind that the Retro Gamer doesn't have particularly powerful hardware. PlayStation games should technically still be within reach performance-wise, but CD images require significantly more storage space on the SD card, and honestly, the performance you'd get wouldn't be very impressive.


Chapter 9: Conclusion


To summarize: after all our modifications and settings, we're now able to store significantly more games on the Retro Gamer — including original cartridges. We can finally access RetroArch and change the color scheme, button mapping, and all other settings. And on top of that, we can even play games from other consoles — NES, SNES, Mega Drive, and Neo Geo — even though a Game Boy cartridge still needs to be inserted to do so. All of this required a lot of work, which ultimately pays off. Making all these features available out of the box on what is supposed to be the perfect retro console — that's a different story. But at least the worst missteps by Hyperkin can be somewhat fixed this way. That doesn't mean the manufacturer should be let off the hook — they really need to deliver an improved firmware with proper settings options. Until then, we'd still advise against buying the console new. But if you've already bought one like us, or can get one secondhand cheaply, our guide should help you meaningfully improve your Retro Gamer experience. If you want to see more about the Retro Gamer, check out our review of the console, or take a look at our test of the Super Retro-Cade by Retro-Bit, which tries to compete with the NES and SNES Mini for a low price. And if you enjoyed today's video, leave a comment and a like — this was [the host] for Gizmo!
 
Last edited by jerris,
It would be great, if anybody who successfully modded the RetroN SQ firmware would create a flashable image file of it! I would appreciate it a lot!!!

So far I tried SirRandalls Image and tried the last version of shinrukus.

Super Mario Land 2 is still not running. So I definitely can relate to giving in.
 

Site & Scene News

Popular threads in this forum