Board Layout

The schematic is the logical connection of the components, while the layout is the physical connection. So the first task is to set up the design rules in KiCad. I’m planning on using JLCPCB’s four-layer service; their capabilities can be found here. Rather than putting the exact capabilities in, I typically round the numbers up; you don’t want to be designing on edge.


I chose the AS4C512M16D3L-12BIN, a 1GB DDR3L SDRAM IC housed in a 96 pin BGA package.

96 Pin Ball Grid Array (BGA) package
A33-OLinuXion Top layer
CK/!CK: 0.2mm
addr[0:15], !WE, !CS, !RST, DBA[0:2], ODT, !CKE, CAS, RAS: 3mm
DQ[0:7]: 1.27mm
DQ[8:15]: 1.27mm

Power Supplies

As outlined in the last post, I chose the TPS62095RGTR to power the rails with higher current requirements. This switch-mode power supply (SMPS) operates in the buck (step down) configuration. I went with switching power supplies over linear power supplies for their efficiency improvement. It’s pretty simple to calculate the max efficiency of a linear power supply - it is denoted by the equation below.

Max efficiency for an LDO
Hot loop
Power Distribution Layer

Bill of Materials Generation

In KiCad, working with components can be a pain. It would be best to end up with an automatic procedure to generate a CSV containing all the part numbers, manufacture, references and component quantity. You should then take that CSV and dump it directly into your part supplier’s BOM tool. One of KiCad’s shortcomings is its ability to group components by value (or other fields) and then apply one part number to the lot.

The Build

After the design is finished, it’s time to order all the parts; I grabbed the parts from LCSC and boards from JLCPCB. I had to find someone on Alibaba to get the A33's from, as this isn’t a standard stocked component.

Bare Bords
Pasted Boards
Pre-Reflowed Bords
Finished Boards!


A keen observer would have noticed the 0ohm resistors bridging the supplies' output to their main power distribution rail. Isolating the supplies' output from their load was done to verify the output voltage before connecting them to the rest of the electronics. An improper voltage could easily damage the downstream electronics. All the switching supplies worked as expected when firing up the boards, meaning the output voltage looked correct. If I were working for a client, I would check all the ripple on the rails under the continuous and discontinuous mode, load the rails with a digital load to check the thermals and supply current, check the transient response to ensure the supplies can react to dynamic loading, check the efficiency and check the quiescent current consumption. However, I’m not working for a client, so that a simple DMM check will suffice. I start by checking for dead shorts from the outputs to GND and outputs to other outputs. After this seemed okay, I fired on a current limited 5V@100mA supply and checked the outputs with a DMM on DC mode (ensure correct voltage) and AC mode (ensure the voltage isn’t switching all over the place). Everything seemed kosher.

The Great Divide

Up until now, I have designed a single board that will be used for evaluation, and this is called the “non-form factor” board, or NFF for short. You have probably noticed that it isn’t the correct shape to fit inside the enclosure. This brings us to the great divide: the fork of the NFF board into the power form factor and compute form factor. The power board’s purpose is to take 250-120V and convert this to 5V using a flyback supply feeding the switching regulators. The regulators then convert 5V into 3.3V, 3.0V, 2.5V, 1.35V and 1.1V (just as on the NFF). The power board feeds all these rails into the compute board, containing everything else in the design, such as the A33 MPU, RAM, SD card slot, two WiFi radios and USB port. There are several pros and cons to going with a two-board system. I’ve designed several of these before, so let's talk about it.

Pros of “two board system”

  • You can rev each board individually. If you want to switch regulators on the power board and you have the inventory of the compute board, you don’t have to discard the compute boards.
  • Noise isolation, you’re physically moving all the switching regulators away from the sensitive electronics.
  • Different board manufacturing capabilities. I might choose 1oz copper for the compute and 2oz for the power. Compute might need 4 layers while the power only needs two layers.
  • Vertical space gain. There is a lot of horizontal board space taken by the BGA, RAM, SD card and radios. However, there is very little vertical space required. By stacking two boards, I’ve doubled the horizontal space.


  • Cost. It’s more expensive to build two boards instead of one.
  • Signal Integrity. If you have high-speed signals running between boards, you have to worry about the SI of the board-to-board connector.
  • Assembly time. Gotta plug em together, yo.
  • Mechanical design and interface.
RTL8188CUS Step File
RTL8188CUS Symbol
CUI’s PBO-15C-5
CUI’s Recommended Design

The Mech

I am not a mechanical engineer. Until now, everything I’ve talked about has been in my wheelhouse. Now we’re getting into the sketchy stuff. The upshot is I have lots of mech friends, so I can bring them my crappy design to laugh at and eventually help fix.

Low Cost all Charger



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store