In-Depth Technical Analysis of Temu’s 400-in-1 Handheld Game Console

Introduction

The handheld game console we are analyzing has gained significant popularity on platforms like Temu and Amazon, capturing the attention of gaming enthusiasts and bargain seekers. Priced at an $9.48, this mini game console offers an enticing combination of features, making it a sought-after choice for retro gaming enthusiasts.

With its compact form factor and a 2.8-inch screen (I measured 2.4-inch with my micrometer), the console provides a portable gaming experience that can be enjoyed on the go. The inclusion of a 1020mAh capacity battery ensures extended playtime, allowing users to delve into their favorite games without worrying about running out of power.

One notable feature of this game console is its support for two players, enabling head-to-head battles and cooperative gameplay experiences.

As we delve into the technical analysis of this console, we aim to unravel the inner workings of its hardware and software components. By examining its processor, memory, display, and other crucial aspects, we seek to understand how this device manages to emulate a wide variety of NES games while at such a low price point.

 

 

 

 

 

Device Dimensions and Interface

The handheld gaming console, reminiscent of the original GameBoy’s form factor, has dimensions measuring 116mm by 78mm, with a thickness of 21mm. The device’s design choice clearly harkens back to the classic handheld gaming era, likely aiming to invoke nostalgia among users while providing the convenience of a compact, portable device.

Its form factor, akin to the original GameBoy, suggests an ergonomic design suitable for prolonged gameplay. The thickness of 21mm allows the device to comfortably fit in a user’s hands, while providing enough internal volume to house the various electronic components, such as the microcontroller, memory chip, display, and battery.

The user interface comprises a directional pad (D Pad), four face buttons (Y, X, B, A), Select, Start, and a Reset button. This layout, similar to many classic handheld consoles, enables intuitive control over the NES games featured on the device. Specifically, the Y and B buttons are the primary NES-mapped buttons, aligning with the conventional NES controller layout and ensuring a familiar user experience for fans of the original console.

The inclusion of a Reset button indicates a design consideration for user convenience. This button likely directly triggers a hardware reset of the microcontroller, providing a quick way to exit games and return to the main menu.

Processor and Clock Generation

The central core of the handheld gaming console is a chip-on-board (COB) microcontroller, which is encased in a protective epoxy blob. This microcontroller is presumed to be an ARM-based processor, a common choice for such devices due to their efficiency, performance, and wide range of available features.

Given that the game buttons, memory, display (via a flex cable), A/V out, Micro

USB, and NOR Flash all trace directly into the COB, it can be inferred that the microcontroller integrates a substantial amount of built-in peripheral interfaces. This implies a highly integrated system-on-chip (SoC) design, where a single chip incorporates the CPU, memory controller, I/O controllers, and possibly other peripherals. This approach greatly simplifies the PCB layout, reduces system complexity, and lowers power consumption, making it ideal for a handheld device like this game console.

The COB has approximately 110 traces leading to it from various components, further reinforcing the notion of its central role in managing the device’s operation. These traces handle the transfer of data and control signals between the microcontroller and other components, enabling the seamless operation of the device.

The console employs a 21.47727 MHz crystal oscillator to provide a reference clock signal to the microcontroller. While this frequency seems relatively low for a device capable of emulating NES games, the microcontroller likely includes an internal phase-locked loop (PLL) circuit that multiplies this base frequency to achieve the higher operational clock speed necessary for real-time game emulation.

The PCB of the console is single-sided and single-layered, which suggests a focus on cost-effectiveness and compactness in the device’s design. This design choice, while limiting the potential complexity of the circuitry, can sufficiently support the functionality of the device thanks to the high level of integration provided by the SoC microcontroller. The use of a single-layered PCB also reduces manufacturing costs and simplifies assembly, contributing to the device’s affordability.

Memory and Storage

A pivotal component of the handheld game console is the Samsung K5L2731CAA-D770 NOR flash memory chip. This chip is a crucial element of the system as it houses the console’s operating system, the emulator software, and the ROMs of the 400 NES games featured on the device.

Understanding the memory chip’s specifics requires deciphering the part number “K5L2731CAA-D770” according to Samsung’s nomenclature:

  • “K5” identifies a Samsung NOR Flash memory product.
  • “L2731” conveys the density and organization of the chip. Here, “27” indicates that it’s a 2^27 or 128 Megabit chip, and “31” typically designates a x16 chip concerning word organization.
  • “CAA” signifies the operating voltage and speed of the chip.
  • “D770” is likely to be a lot or batch number, or other specific manufacturing identifiers.

Consequently, the K5L2731CAA-D770 is a 128 Megabit chip, which, when translated into more commonly used storage units (given that 1 Byte = 8 bits), comes out as 16 Megabytes.

The calculated storage size aligns well with the console’s capabilities. It features around 400 NES games. NES game ROMs can vary, but if we take an average NES game ROM to be about 40 Kilobytes and multiply that by the number of games, it yields approximately 16,000 Kilobytes, or 16 Megabytes. This calculation presumes that all games are unique and does not account for the space occupied by repeated titles, the operating system, and the emulation software.

Furthermore, the direct connection between the memory chip and the chip-on-board (COB) infers that the microcontroller possesses an integrated memory controller. This in-built feature expedites the data transfer between the processor and memory, thus facilitating swift and efficient access to game data during emulation.

Power Supply

Powering the handheld game console is a BL-5C lithium-ion rechargeable battery, featuring a nominal voltage of 3.7V and a capacity of 1020 mAh. This type of battery gained popularity as a power source for various Nokia candybar-style cell phones in the mid-2000s, owing to its compact form factor, decent energy density, and relatively low cost. Its usage in this game console speaks to the designers’ intent of keeping the device affordable and portable while providing satisfactory gameplay duration on a single charge.

The charging of the BL-5C battery is managed through the Micro USB port, a widely adopted interface that offers convenience for users. The choice of Micro USB as the charging interface suggests an intention to utilize existing, common cables that users might already possess, thereby reducing additional costs and e-waste.

Given that lithium-ion batteries require specific charging protocols to ensure safety and longevity, the device must incorporate a battery charge controller. This controller, responsible for managing the battery’s charging process, will precisely regulate the charging current and voltage to avoid overcharging or damaging the battery. Given the integrated design of the console and the fact that all other peripheral interfaces trace back to the chip-on-board (COB), it is safe to assume that the charge controller functionality is integrated within the COB as well.

This integration means that the microcontroller is likely equipped with built-in power management features. Such a design would allow the microcontroller to oversee the state of the battery, possibly providing low battery warnings and implementing power-saving measures when necessary. This integration contributes to the compact and efficient design of the console, eliminating the need for separate power management chips and reducing the overall power consumption, which in turn enhances the battery life of the device.

Operating System and Game Emulation

Without direct access to the device’s software or firmware, we can only make educated guesses about the operating system and the game emulation software used on the console. However, based on the hardware setup and the console’s capabilities, we can extrapolate some plausible scenarios.

Considering the device’s simplicity and specific functionality, it likely uses a lightweight, embedded operating system or may even operate with a bare-metal approach, where the application software runs directly on the hardware without an underlying operating system. Such a minimalistic software approach would allow the console to make the most of its hardware resources, providing responsive user interaction and smooth game emulation.

Given the console’s ability to emulate NES games, it is reasonable to assume that it uses a customized NES emulator. The emulator is probably a variation of a known open-source NES emulator, adapted to work with the console’s hardware and to fit within the available memory. The selected emulator would need to be efficient and lightweight, given the constraints of the processor speed and memory.

Emulating NES games is a task that, while not overly demanding by today’s standards, still requires a certain level of computational power and accuracy. The NES operates on a MOS Technology 6502 processor, running at approximately 1.79 MHz, along with 2KB of onboard RAM (expandable with cartridge memory). Thus, the emulator on this handheld console must accurately reproduce the behavior of the original NES hardware using its own resources.

One of the challenges of game emulation is the accurate reproduction of timing behaviors. NES games are particularly timing-sensitive, and a well-implemented emulator needs to precisely mimic these timings for games to run correctly. The presence of a 21.47727 MHz crystal oscillator indicates that the device is designed to handle these timing requirements. The frequency of 21.47727 MHz is a common clock frequency for video-related applications and is an exact multiple of the NES’s pixel clock frequency, hinting at its possible use for accurate video signal generation.

Finally, it’s also worth noting that the game selection and the game loading process indicate that the emulator is designed for ease of use. The system boots up directly into a game selection menu, and the games load up quickly once selected, suggesting an efficient game ROM loading mechanism. This mechanism is likely facilitated by the direct memory access (DMA) capabilities of the microcontroller, enabling fast and efficient data transfer from the memory chip to the processor for game emulation.

Game Library and Emulation Analysis

The handheld game console offers an extensive library of games, including some iconic titles from various regions. Here is an analysis of the first 160 games listed in the menu:

  1. SUPER MARIO (Super Mario Bros.)
  2. MARIO 14 (Unknown)
  3. MARIO 3 (Super Mario Bros. 3)
  4. DR MARIO (Dr. Mario)
  5. MARIO BROS (Mario Bros.)
  6. TURTLES (Teenage Mutant Ninja Turtles)
  7. TURTLES 4 (Teenage Mutant Ninja Turtles IV: Turtles in Time)
  8. CONTRA 1 (Contra)
  9. CONTRA FORC (Contra Force)
  10. CONTRA 7 (Unknown)
  11. KAGE (Shadow of the Ninja)
  12. JACKAL (Jackal)
  13. RUSH’N ATTACK (Green Beret)
  14. ADVENTURE ISLANDAD (Adventure Island)
  15. ADVEN ISLAND 2 (Adventure Island II)
  16. CHIP DALE 1 (Chip ‘n Dale: Rescue Rangers)
  17. CHIP DALE 3 (Chip ‘n Dale: Rescue Rangers 2)
  18. BUBBLE BOBBLE 2 (Bubble Bobble Part 2)
  19. SNOW BROS (Snow Bros.)
  20. MITSUME (Unknown)
  21. NINJA GAIDEN 2 (Ninja Gaiden II: The Dark Sword of Chaos)
  22. DOUBLE DRAGON (Double Dragon)
  23. DOUBLE DRAGON E (Double Dragon II: The Revenge)
  24. HOT HIGH SCHOOL (River City Ransom)
  25. HOT HRESTLE (Pro Wrestling)
  26. ROBOCOP (RoboCop)
  27. MORTAL KOMBAT 4 (Mortal Kombat 4)
  28. SPIDER MAN (Spider-Man: Return of the Sinister Six)
  29. 10 YARD FIGHT (10-Yard Fight)
  30. 90 TANK (Battle City)
  31. KAGE LEGEND (Shadow of the Ninja)
  32. ALADDIN 3 (Aladdin 3)
  33. ANTARCTIC ADVEN (Antarctic Adventure)
  34. ARABIAN (Arabian)
  35. BALLOON FIGHT (Balloon Fight)
  36. BASE BALL (Baseball)
  37. BINARY LAND (Binary Land)
  38. BIRD WEEK (Flappy Bird)
  39. BOMBER MAN (Bomberman)
  40. BOMB SWEEPER (Bomberman)
  41. BRUSH ROLLER (Pinball)
  42. BURGER TIME (BurgerTime)
  43. CHACK AND POP (Chack’n Pop)
  44. CHESS (Chess)
  45. CIRCUS CHARLIE (Circus Charlie)
  46. CLU CLU LAND (Clu Clu Land)
  47. COMBAT (Combat)
  48. DEFENDER (Defender)
  49. DEVIL WORLD (Devil World)
  50. DIG DUG 1 (Dig Dug)
  51. DONKEY KONG (Donkey Kong)
  52. DONKEY KONG 2 (Donkey Kong Jr.)
  53. DONKEY KONG 3 (Donkey Kong 3)
  54. DONKEY KONG JR (Donkey Kong Jr.)
  55. DOOR DOOR (Door Door)
  56. EXCITE BIKE (Excitebike)
  57. EXERION (Exerion)
  58. F1 RACE (F-1 Race)
  59. FORMATION Z (Formation Z)
  60. FRONT LINE (Front Line)
  61. GALAGA (Galaga)
  62. GALAXIAN (Galaxian)
  63. GOLF (Golf)
  64. RAID O BUNGELINGHY (Lode Runner)
  65. HYPER OLYMPIC (Hyper Sports)
  66. HYPER SPORTS (Hyper Sports)
  67. ICE CLIMBER (Ice Climber)
  68. JOUST (Joust)
  69. KARATEKA (Karateka)
  70. LODE RUNNER (Lode Runner)
  71. LUNAR BALL (Lunar Ball)
  72. MACROSS (Unknown)
  73. MAGIC JEWELRY (Magical Jewelry)
  74. MAHJONG 4P (Mahjong 4P)
  75. MAHJONG 2P (Mahjong 2P)
  76. MAPPY (Mappy)
  77. MILK N NUTS (Milk & Nuts)
  78. MILLIPEDE (Millipede)
  79. MUSICE (Music Editor)
  80. NAITOU (Unknown)
  81. NIBBLES (Nibbles)
  82. NINJA (Unknown)
  83. NINJA 3 (Unknown)
  84. ROAD FIGHTER (Road Fighter)
  85. OTHELLO (Othello)
  86. PACMAN (Pac-Man)
  87. PIN BALL (Pinball)
  88. POOYAN (Pooyan)
  89. POPEYE (Popeye)
  90. SKY DESTROYER (Sky Destroyer)
  91. SPACE ET (Space Invaders)
  92. STAR FORCE (Star Force)
  93. STAR GATE (Stargate)
  94. TENNIS (Tennis)
  95. URBAN CHAMPION (Urban Champion)
  96. HARPMAN (Harpman)
  97. YIE AR KUNG FU (Yie Ar Kung-Fu)
  98. ZIPPY RACE (Zippy Race)
  99. WAREHOUSE BOY (Load Runner)
  100. 1942 (1942)
  101. ARKANOID (Arkanoid)
  102. ASTRO ROBO SASA (Unknown)
  103. B HINGS (Unknown)
  104. BADMINGTON (Badminton)
  105. BALTRON (Unknown)
  106. BOKOSUKA WARS (Bokosuka Wars)
  107. BOMB JACK (Bomb Jack)
  108. PORTER (Unknown)
  109. CHUBBY CHERUB (Chubby Cherub)
  110. DESTROY (Unknown)
  111. DIG DUG 2 (Dig Dug II)
  112. DOUGH BOY (Unknown)
  113. DRAGON (Unknown)
  114. DRUAGA (Tower of Druaga)
  115. DUCK (Unknown)
  116. ELEVATOR ACTION (Elevator Action)
  117. EXED EXES (Exed Exes)
  118. FLAPPY (Flappy Bird)
  119. FRUIT PIG (Unknown)
  120. GALG (Galaga)
  121. GEIMOS (Geimos)
  122. GYRODINE (Gyrodine)
  123. HEXA (Hexa)
  124. ICE HOCKEY (Ice Hockey)
  125. LOT LOT (Lot Lot)
  126. MAGMAX (MagMax)
  127. PIKA CHU (Unknown)
  128. NINJA (Unknown)
  129. QBAKE (Unknown)
  130. ONYANKO TOHN (Unknown)
  131. PAC LAND (Pac-Land)
  132. PACHI COM (Unknown)
  133. PRO WRESTLING (Pro Wrestling)
  134. PYRAMID (Pyramid)
  135. ROUTE-16 (Route-16 Turbo)
  136. SEICROSS (Seicross)
  137. SLALOM (Slalom)
  138. SOCCER (Soccer)
  139. SONSON (SonSon)
  140. SPARTAN X (Kung Fu)
  141. SPELUNKER (Spelunker)
  142. SPY VS SPY (Spy vs. Spy)
  143. SQOON (Sqoon)
  144. STAR LUSTER (Star Luster)
  145. TETRIS 2 (Tetris)
  146. THEXDER (Thexder)
  147. VOLGUARD II (Volguard II)
  148. VOLLEY BALL (Volleyball)
  149. WARS (Wars)
  150. XEVIOUS (Xevious)
  151. CHINESE CHESS (Chinese Chess)
  152. CHALLENG (Challenger)
  153. MACH RIDER (Mach Rider)
  154. ARGUS (Argus)
  155. GOONIES (The Goonies)
  156. SUPER CHINESE (Kung Fu Heroes)
  157. THIN BEE (Sky Kid)
  158. STAR SOLDIER (Star Soldier)
  159. TRACK FIELD (Track & Field)
  160. FRIDAY THE 13th (Friday the 13th)

The game library encompasses a wide range of titles from various regions, including the US, European, Chinese, and Japanese markets. It reflects the popularity and diversity of NES games during the era. However, it is important to note that some games’ titles might not correspond directly to their original NES counterparts due to variations in regional releases, translations, or alternative naming conventions.

During the game emulation process, there are a few noteworthy observations. Some side-scrolling games exhibit frame tearing, which may indicate synchronization issues or limitations in the emulator’s rendering capabilities. Additionally, the speed discrepancy in certain games, such as Super Mario Bros., where the clock and music run at almost double speed, suggests timing inaccuracies or incorrect emulation of the original game’s speed settings.

Connectivity and Peripheral Support

The handheld game console demonstrates a range of connectivity features and peripheral support that enhances its utility and user experience.

The device’s most notable connectivity feature is its Micro USB port. This port serves multiple functions. It provides a pathway for charging the device, as previously discussed, and it is also used as an interface for connecting an external game controller. The choice of the Micro USB standard for this interface is again likely due to its ubiquity and the objective to leverage widely available and affordable cables and peripherals.

The external game controller is equipped with the same set of buttons as found on the console itself, minus the reset button. This design reflects the layout of a typical NES controller but with two additional action buttons, most likely to increase compatibility with a broader range of games. The capability of the device to recognize and accept input from this external controller indicates that the integrated microcontroller includes a USB host or On-The-Go (OTG) functionality. This feature enables the microcontroller to manage USB communications and interact with USB devices plugged into its port.

Moreover, the console allows simultaneous usage of the built-in and external controllers, offering support for two-player games. This ability suggests a more sophisticated input management system that can distinguish between inputs from the two different controllers and map them correctly to player actions in the games. It might also imply the presence of an advanced interrupt handling system in the microcontroller, which can efficiently manage multiple simultaneous inputs.

Interestingly, when the console is plugged into a computer via USB, it is detected as an unknown USB device (USB\DEVICE_DESCRIPTOR_FAILURE). This error usually indicates that the device failed to correctly respond to the standard USB device descriptor request issued by the host computer. It suggests that while the microcontroller can function as a USB host for the external game controller, its USB device functionality (allowing it to be controlled by a host computer) may not be fully implemented or is intentionally restricted.

Lastly, the device’s ability to operate solely on USB power, bypassing the battery, points to an integrated power supply design capable of switching between different power sources. This design is beneficial for extended gameplay sessions as it allows the device to function even with a depleted battery, as long as it remains plugged into a USB power source. It also serves to protect the device from power interruptions during battery replacement or removal, ensuring a continuous and reliable gaming experience.

Display and Audio Output

This handheld game console provides its primary user interaction through a 2.4-inch LCD color display and a small monaural speaker.

The LCD display connects to the main PCB through a 24-pin ribbon cable, a typical interface for small to medium-sized LCD panels. The ribbon cable carries various signals required for the display’s operation, such as power, ground, data, and control signals. Given the observed pin connections, it appears that 18 of the 24 pins are utilized, leaving pins 2, 4, 5, 6, 7, and 24 unconnected on the PCB.

Without detailed specifications for the LCD panel and its ribbon cable interface, we can only speculate about the exact purpose of each pin. However, given standard practices, it is reasonable to infer that the unconnected pins may be for optional features not used in this particular application (e.g., touchscreen interface, additional power lines, etc.) or they could be reserved for future use. The remaining 18 pins would then be used for power, ground, and to carry the display data and control signals.

The LCD panel part number, SHZ-24-134-24L V2, unfortunately, doesn’t seem to correspond to any known product in online databases. This lack of information might be due to the panel being a custom part or an OEM product not intended for retail sale. Nevertheless, judging by its form factor, we can make an educated guess that it likely sports a resolution sufficient for NES games, possibly in the realm of 320×240 pixels. This would be more than enough to accurately display the native resolution of NES games, which is 256×240 pixels.

Moving on to audio output, the game console employs a small monaural speaker to reproduce the chiptune soundtracks and sound effects of the emulated NES games. Given the size of the console and its power constraints, the speaker is likely a simple, compact component, possibly a piezoelectric type due to their efficiency and simplicity. The audio signal is probably directly driven from the microcontroller, likely through a simple digital-to-analog converter (DAC) and amplifier circuit. The DAC converts the digital audio data from the games into an analog signal, which the amplifier then boosts to drive the speaker.

It’s worth noting that NES games typically feature monaural audio, so a single speaker setup is adequate for faithful reproduction of the original game sound. Any stereo effects would likely be lost in this setup, but the impact on the overall gaming experience should be minimal considering the console’s target audience and price point.

Top of Form

Conclusion

The handheld game console we have analyzed is an intriguing blend of both vintage and modern electronics, delivering a unique gaming experience by leveraging the charm of classic NES games with the convenience of modern-day portable technology.

While the device might seem simple on the surface, the underlying technology is sophisticated. It combines an ARM-based microcontroller, likely hidden beneath the blob-on-board package, and a Samsung NOR Flash memory chip for storing the library of 400 NES games.

The device’s operation is likely managed by a simple yet efficient embedded operating system, potentially a form of RTOS, which offers low overhead and real-time processing, vital for the game emulation process. The NES games are probably run through a software emulator coded into the firmware. This emulator interprets the 6502 processor instructions of the original NES games into corresponding instructions that the device’s ARM-based microcontroller can execute.

The console’s user interface comprises a 2.4-inch LCD color display, a small monaural speaker, and an array of buttons that mimic the classic NES controller layout. The device can also interface with an external controller via the Micro USB port, supporting two-player gameplay. Furthermore, the console can output video to an external display through a composite video port, showcasing the impressive multitasking capabilities of the underlying microcontroller.

Powering this device is a 3.7V 1020mAh BL-5C rechargeable Lithium-ion battery, a model that has proven its reliability and efficiency in various electronic devices over the years.

Overall, despite some limitations, such as the difficulty in identifying the device when connected to a computer via USB, this game console represents a compelling case study of affordable, portable consumer electronics. Its design cleverly balances cost, performance, and user experience, proving that with the right technology and ingenuity, it’s possible to deliver a fun and nostalgic gaming experience in a compact, handheld form factor.

 

0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

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