Portable game console runs RetroArch on SigmaStar SSD202D processor

SigmaStar SSD202D “Smart Display” dual-core Cortex-A7 processor has found its way into the MIYOO mini portable game console compatible with RetroArch Linux distribution.

Initially designed for industrial smart displays or other HMI applications, we’ve already seen the low-cost Arm Linux processor with 64MB (SSD201) or 128MB (SSD202D) memory has been integrated into a gateway, a single board computer, and M5Stack UnitV2 AI camera devkit, but somehow, it’s now gone into a consumer device.

MIYOO mini portable game console specifications:

  • SoC – SigmaStar SSD202D dual-core Cortex-A7 processor @ 1.2 GHz with 2D GPU, 128MB DDR3 (Note: no GPU)
  • Storage – 32GB MicroSD card
  • Display – 2.8-inch IPS screen with 640×480 resolution
  • Audio – 3.5mm audio jack
  • User input – D-PAD, Menu, Select and Start buttons, ABXY buttons, R/R2 and L/L2 buttons at the back
  • USB – 1x USB-C port
  • Misc – Power button, Vibration motor, LEDs
  • Battery – 3.7V/1,900mAh battery good for 4 to 5 hours of gameplay
  • Power Supply – 5V/1A via USB-C port
  • Dimensions – 93.5 x 65 x 18mm
  • Weight – 110 grams

The game console ships with a 32GB MicroSD card (likely preloaded with RetroArch), a USB Type-C data cable, a card reader, and a user manual. The seller says it can emulate PS1, CPS1, CPS2, CPS3, FBA, GBA, GBC, GB, SFC, FC, MD, SMS, GG, MEOGEO, PCE, WSC…

The specifications did not mention the processor at all, but I learned about the console via Linux_chenxing Twitter account, and the presence of the SigmaStar SSD202D processor was confirmed by an internal photo taken by Obscure Handhelds which also shows a 4-pin header that should be the UART port for the serial console.

SigmaStar SSD2xx processors have been getting mainline Linux support step-by-step thanks to the Linux Chenxing community (probably meaning dgp by himself, which I’m sure will comment here), so it could be an interesting platform to play with. There’s a thread on Github too. I could not find any official RetroArch support for SSD202D, but while searching I also noticed one Hardkernel’s engineer looked into the processor, not for an “ODROID-GO Lite” console, but an unrelated personal project.

Miyoo Mini portable game console can be purchased on Aliexpress for $50 including shipping, excluding taxes.

Share this:

Support CNX Software! Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

19 Replies to “Portable game console runs RetroArch on SigmaStar SSD202D processor”

  1. >thanks to the Linux Chenxing community
    >(probably meaning dgp by himself, which I’m sure will comment here), 

    There’s two of us now. Romain is doing great work digging through the hundreds of commits we have backed up and throwing them to mainline.

    There seems to be a bit of interest in this thing so maybe someone will come along to help with the remaining bits like getting sound working, display without using u-boot to do some of the setup, working out the 2D gpu.

    1. I remember this coming up last year. The goal being to have this sorta fill the gap between micrcontrollers and SBCs. I’m probably in the target audience 🙂 I’ve tried several times to get serious and write some STM32 HAL code and it’s always sorta fizzled out b/c of the layer of complexity – so to me this is very very enticing. I’d love to write some quick code on a full Linux system, test, copy over, and run – and have that all work directly/immediately. I think I could even run some JVM code and have tons of libraries at my disposal.

      But what’s the battery life situation at the moment? Can this be in standby for long durations? (days? months?)

      I think other than price (well maybe not in this particular case) that that’s the real sticking point that potentially sets this apart from other SBC. RPi’s and company don’t seem to really ever be designed around battery life

      I’m guessing since this is supposed to run on cameras it should be pretty okay?

      And I kinda wonder about the microcontroller-y side of things.. lik can it be woken-up on external interrupts?.. stuff like that? I’m not quite sure where to start learning about that side on things on Linux. I remember looking into GPIO for instance and it seemed like the space was still in flux on Linux

      1. STM32 HAL is really bad. I tried to use on a project because my old boss wanted us to use it, but everytime i needed more performance or flexibility, i needed to write my own code. And i needed to rely on help from the internet because their docs didnt cover much this cases.
        Seriously, go away from STM32 HAL.

      2. For having run some tests on @dgp’s smaller BreadBee, the power usage was around 0.8W, so you could theoretically hope for 12 hours on a single 2.6Ah Li-ion cell. Here you have a more powerful CPU and a display, this will draw more power of course, but we’re clearly within power levels where batteries and solar panels are possible. Regarding the older MSC313E there’s not even a heatsink on the CPU, and remains so cool to the touch that you need to look at the leds to figure if it’s running or not 😉

      3. >I remember this coming up last year.
        >The goal being to have this sorta fill the gap between
        >micrcontrollers and SBCs. I’m probably in the target audience

        My main thing is I want people to stop putting microcontrollers onto networks/the internet.

        >But what’s the battery life situation at the moment?
        >Can this be in standby for long durations? (days? months?)

        The SSD202D datasheet claims it has a deepsleep mode that goes down to ~3uA.

        >don’t seem to really ever be designed around battery life

        This family of chips can turn everything off and be woken by GPIO, RTC, ADC, IR..

        1. > This family of chips can turn everything off and be woken by GPIO, RTC, ADC, IR..

          I guess my questions is how are these functionalities exposed to the user?

          I tried to look into how people do micro-like things with the RPi and they seem to generally be working through the WiringPi library. In principle it could also be somehow exposed in a more generic way through the unix device lists.. but that’s a wild guess

          1. There is no full datasheet as far as I know. Even people that signed their NDA didn’t get one with register descriptions 😀

        2. Very interested as well on how to achieve this !
          Any link to the datasheet or even better: to the related code in an existing SDK?

  2. I like the SOC and the fact that it’s getting mainline support but with no GPU it’s not worth that much.
    Also personally I don’t like the screen size, I would have liked at least 4.3 and at 2.8 it’s just too small for me.

    1. From what I can tell from the discussion of this thing not having a 3D GPU isn’t a big problem for 2D system emulators. Apparently hardware scaling to match the emulated machine resolution to the LCD is important.

      The display blocks in these chips are designed for TVs, car navigation etc I think. There’s MediaTek chip used in cheap LCD TVs that is actually a relative of these chips.. anyhow the 2D hardware is apparently capable of doing scaled blits etc. From what I can tell that’s what the emulator guys want.

      1. The “emulators guys” use either CPU software scaling (integer) or GPU scaling (bilinear). I was the first to use a dedicated hardware scaler.
        https://github.com/OtherCrashOverride/libgo2/blob/bc992566bb86f2fe0c8d981d4db46e2e2beb5b0e/src/display.c#L640

        I also had to write my own RetroArch alternative to make use of it:
        https://github.com/OtherCrashOverride/retrorun-go2

        The GO-Advance only had a 480×320 display. However, nobody ever complained because the Rockchip scaler did excellent bicubic hermite interpolation after enabling it:
        https://github.com/hardkernel/linux/commit/770849d01e304a1daf46cab563bc666625fa6a78#diff-a71518107f3a70bc9b544c75c80bdffa8e8e0def85f68c3277f763d3dd82da32

        There were attempts to integrate the work into RetroArch by the community. However, I do not know what ultimately became of that effort.

        1. That line isn’t quite representative of use of scaler, but if it works, then I congratulate you on that.

  3. Are those SOCs available in small quantity from trusted sources? Or does one have to buy by the boat load?

    1. You need to be in china and buy ~2000 of them to get the from source. But:

      • You can get them on taobao in singles. Along with stuff like the SSD210 (68pin QFN dual core cortex a7..)
      • You can get them on aliexpress
      • You can get solder down modules for ~$10 from either of the above.

      Super weird for a thing like this or any other Chinese fabless vendor you can get the IDO solder down modules from digikey:

      https://www.digikey.com/en/products/detail/seeed-technology-co-ltd/102110558/14552872?s=N4IgjCBcoLQBxVAYygMwIYBsDOBTANCAPZQDa4ArAJwDsIAugL6OEBMZ4ADK2GJxRQRMgA

      They are a bit more expensive but this sort of thing being stocked at digikey is pretty rare.

      1. Actually if I’d use a module instead of a cpu/mcu then I won’t be limited by the kind of requirements like built in ram etc. But I could go for any kind of cpu, as the module designer took care of all the high freq./impedance controlled stuff, as well as BGA soldering.

Leave a Reply

Your email address will not be published. Required fields are marked *

Advertisement
Advertisement