Xiegu GSOC Teardown | Open Source Project Begins
by Micah Dubinko from GitHub gsoc-contrib wiki
(Xiegu GSOC Open Source Project Begins!)
The Xiegu GSOC is marketed as a "Universal" controller and data terminal. Let's see how universal it is.
Disclaimer: I'm working off a dataset of one. Some of the oddities I observed may well be specific to the particular unit I have (which is a warranty replacement--not sure whether this is fresh off the factory line, or somehow otherwise refurbished). If you have additional info, I'll include it here. If you're worried about breaking the warranty sticker, there's a fair bit that you can see just by removing the endcaps and maybe using a flashlight.
How you can help: Send me a screen shot (or just manually copy the text) of the initial boot-up screen, immediately after the U-Boot line. My original pre-order unit did not say CubieBoard2, but the replacement one did. Although it also had a different firmware version. Do you get a Cubieboard2 line on boot? Let me know, along with when you received your unit & firmware version.
Fig 1: Outer shell, right endcap. Unless noted, all fasteners require a 2mm hex driver.
Fig 2: Peeking inside right endcap.
Fig 3: Outer shell, left endcap.
Fig 4: Peeking inside left endcap. Careful. With endcaps off, the entire back panel can easily come away.
Fig 5: Back side. The entire back face hinges open (held only by the warranty sticker.)
Fig 6: Revealing the backside interface board.
IMPORTANT NOTE: the indicated fastener (upper left) can NOT be removed from this side--there is an inaccessible nut holding it in place. In general, if a hex bolt seems too difficult to turn, look for another way in.
• Visible silicon:
• Cirrus Logic CS4272 28-pin SSOP - 24-Bit, 192 kHz Stereo Codec
• 5351 popular RF clock generator
• N5532 low noise op amp (2x)
• 4075-2 A#846 3288 ultra low noise amplifier (2x)
• LM386 audio amplifier near speaker connector
• 4925D p-channel power mosfet (reverse polarity protection)
• 5066 J8657 RF module
• LTGKR LT3999 DC/DC driver
• DB2SP LMR14020 Simple Switcher 40V 2A 2.2MHz Step-Down Converter
Topmost relay has visible burn marks or maybe flux?
Note the separate ground planes on the power supply and RF sections of the board, with generous isolation. The several bare parts of the board allow one to see through the board against a strong light. This is a two-layer board.
The DB9 connector seems to basically match that on the display-head of a G90, as the GSOC here plays the same role.
1 2 3 4 5 6 7 8 9 Pin 1 = +V (powers a 3.3v regulator that seems to feed some nearby protection (?) circuits * Pin 2 = snakes off to the other board. Serial? Pin 3 = NC? Pin 4 = snakes off to the other board. Power signal? Pin 5 = GND (system ground; isolated from DC input ground & RF ground) Pin 6, 7 = incoming audio from rig -- leads to input side of a low noise amp Pin 8, 9 = outgoing audio to rig -- leads to output side of a low noise amp * There is a fair amount of what looks like protection circuitry around pins 2, 6-9; SOT-23-5 package with no connection on pin 1 & GND on pin 3. Marking code "V5"... I can't identify the component...
There is some modest reverse-polarity protection as the very first component on the incoming positive power line. Still wouldn't recommend testing it, though.
The area around the rectangular yellow transformer, which seems to be a switching power supply, has markings and clips for an RF shield, though none present.
The speaker has a 1.25mm pitch (JST GS) connector. Oddly, the red wire is connected to the analog ground. Not a big deal for an otherwise isolated monophonic speaker, but weird.
Fig 7: Behind the front panel
Pull off both of the nested knobs on the front panel, and with 4 more 2mm hex screws removed from the top and bottom faces, the front panel will pull away. Disconnect the (extremely nice!) custom rotary encoder attached to the front panel, and put the whole panel aside.
Remove 3 2mm hex screws from nearby the rotary encoder, and 2 1.5mm hex screws on the opposite end of the board. I removed the front facing ones, leaving the back ones in tact. Note that along the bottom are two very fragile flat flex connectors for the LCD and touchscreen. Take care not to tear these.
The front and back boards are held together with a 2x25 connector, that requires a significant amount of force to separate. Carefully pull the two boards apart, being careful not to bend the pins.
Fig 8: Backside of the front board
This is a 4-layer board. Near the rotary controller, the red wire drops into a via that doesn't go anywhere on the other side, and it shows continuity to the 3v3 bus.
There is a noticeable bodge on the smaller ribbon cable/flex PCB for the touchscreen.
Immediately visible silicon:
• STM32 F103C8T6 Cortex M3 microcontroller
• GT811 taped inside smaller FPC - touch screen controller
• PCF8563 real time clock
And wow, that's a CR1220 lithium battery buried all the way down here.
Note unpopulated connector footprints & flat flex connectors. The top-right footprint might be USB micro/OTG. Along the bottom edge next to the rotary encoder cutout is a two pin connector. Battery?? And on either side of the populated flat flex connectors, are two more unpopulated ones. One might be an alternate LCD connector. Not sure what the other might be for.
The LCD connector is a 40-pin Low Voltage Differential Signaling (LVDS) connection, directly supported by the A20. The connections head over to the the lower-left side of the central module. The opposite side of this board is almost entirely covered by an LCD panel that is quite aggressively stuck down, further complicating the tracing of any vias through the PCB.
Fig 9: Einstein A20 board. Shown rotated 180 from previous figure. Pin 1 is on the extreme lower-left.
Fig 9.1 Compare with this pre-release image released by the company:
In situ, the shield (with original fingerprints) was already partially off. If this is common outcome of the manufacturing process, it might help explain some of the RF spurs users have reported.
The central castellated board is identified in boot messages as a Cubieboard2, and in fact is an Einstein A20 variant of the Cubieboard. These go for $59 on Ali Express. Note the unpopulated RF connectors. Even if this board supports wifi, there are no antennas to be seen. (Not that they'd work well inside a metal box.) It has 200 pins, with pin one indicated on the top row at the right.
I wonder what those tactile switches would do to a running GSOC... The RX and TX lines run out to the edge of the board, to an unpopulated connector.
• Allwinner A20 dual core Cortex A7 + GPU
• 2x SKhynix H5TQ4G63CFR (NWMGU501HN) SDRAM DDR3 each 4Gib (gigabit) for a total of 1GiB (gigabyte) RAM
• FORESEE NCEMAM6G-08G eMMC (basically flash) storage -- this appears to be 8GiB (gigabytes)
• AXP209 power management
• metal can AP6210 -- an apparently unused Wifi + Bluetooth module
Every product spec says there is 4GB of storage, but physically here we have 8. There may be a software limitation or inaccessible partition. Will need to get shell access to be sure!
Fig 10: For completeness, the opposite side of the back board, finally freed from the metal chassis.
No idea what kind of trauma was inflicted on those solder connections for the DB9 connector...
Call to action: help me write new firmware for this project. If you have knowledge about embedded Linux or just a willingness to learn, contact me!
Xiegu GSOC Open Source Project