Skip to content

Most visited

Recently visited


Build a Prototype

Now that you have an early prototype as a proof of concept, you may want to build a few more that is more robust than using a breadboard or protoboard. In this section, we'll walk you through making your own custom boards.

Designing your board (PCB)

Building a custom printed circuit board (PCB) for your prototype enables you to begin testing your app using the components and mechanical layout that are more representative of your final design.

As you're designing your product, there are many considerations for component and PCB design such as industrial design, functionality, cooling, and power.

Create a schematic

Begin by designing a schematic of your device. A schematic defines the components in your design and how they connect together. Your schematic will include the various power and I/O components connected to the SoM.

Figure 1. A schematic with Eagle using open source libraries provided by Sparkfun

Create a layout

The next step is to build a physical drawing for the PCB. This is where you define the size and shape of the board, physical layout of where to place the components, and how the connections (traces) wires are will be routed.

Figure 2. A layout and the resulting PCB

There are many resources online to get you started but here are some design packages:

PCB fabrication and assembly

Once you have a schematic and layout, you can now take this to a vendor to start building your custom PCB. There are three general steps in the process:

There are already plenty of great resources for manufacturing bare PCBs in low quantity. Here's a few in the US:

When selecting final components, conduct due diligence on specifications, pricing, supply, and availability.

This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields


Follow Google Developers on WeChat

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience. (April 2018 — Developer Survey)