As part of being an open source company, Adafruit provides the design files for all Adafruit designed printed circuit boards (PCB). These are provided as Eagle CAD files and hosted on GitHub.

This guide shows you how to find, download, and view these files. It also shows how to perform some commonly requested tasks, like extracting a designed part for use elsewhere.

This guide is not meant as a way to learn Eagle CAD. Only very basic usage is covered here. For more in depth coverage of Eagle CAD usage, checkout these guides:

The easiest place to start looking is the Downloads page of the associated Learn guide for the product. This page is typically near the end of the guide. Look for something that references "EagleCAD PCB file" or similar.

Here's an example download using the Circuit Playground Express guide. GitHub is not really meant for hosting files for individual download. Each repository is intended to be treated in its entirety. So be careful to download the files as shown here. Otherwise you might end up with something unexpected.

Do NOT right click, "Save link as..." in your browser. That will not download the actual file.

From the guide Downloads page, find and click on the link to the Eagle CAD PCB files.

This will take you to the Github repository. Click on the Code button.

Then click on Download ZIP and save to your PC somewhere.

This zip file will contain the schematic (.sch) and board (.brd) files for the PCB. Extract both of these and save them to the same location.

Cloning (optional)

If you are familiar with git, then you can also just clone the repo.

git clone https://github.com/adafruit/Adafruit-Circuit-Playground-Express-PCB.git

We won't cover installing and using git here though. We'll assume if you want to go this route you know what to do.

The easiest way to view the downloaded PCBs file is by using the same software they were created with - Eagle. You can download a free version here:

The free version has some limits on the number of board layers and size. However, you should still be able to view any of the downloaded PCB files.

Board and Schematic Files

Eagle splits the PCB design in to two distinctly different files:

  • .sch - This is the schematic file. It defines the overall electronic circuitry for the device.
  • .brd - This is the board file. It defines the physical board layout, including its shape, routing electrical traces, pads, silk screen, etc.

These two files are bonded together. Changes in one directly affect the other. For basic viewing, this isn't too important. Just keep in mind that typically both files are open at the same time.

Opening the PCB Files

Here's an example:

Start Eagle and it will bring up the Control Panel.

From the drop down menu, select:

File->Open...->Schematic...

Navigate to where you extracted the files and open the .sch file.

The schematic will open and look something like this.

The board file will also open and look something like this.

Basic Navigation

What you do next depends on what you're after. We'll cover some common use cases next. But if you just want to look around, basic navigation is pretty easy.

  • Zoom in/out using the mouse wheel.
  • Drag view by clicking and holding mouse wheel while dragging.

When the board file first opens it may look like a mess. There are numerous layers used for the board definition, things like the copper, holes (drills), silkscreen (labels), etc. You can selectively turn these on/off to clean up the view.

To bring up the Layers dialog, click the layers icon in the upper left corner of the board layout window.

The Visible Layers dialog can be used to turn layers on/off.

To turn on/off an individual layer, left click with mouse button in the eyeball column. If the eyeball is shown, the layer is visible.

Multiple layers can be selected by dragging with left mouse button, using <CTRL>+left button, and/or <SHIFT>+left button.

Then use the Show Layers and Hide Layers buttons to turn on/off all selected layers.

Layers Explained

Here are several sources of information that explain what each layer is.

Custom Art Silk Screen Layers

These layers typically end up being something other than the standard tPlace and bPlace layers. Scroll down and look in the 200 range for layers with names like 200bmp.

Since the board and schematic files are linked, you can use one to find parts in the other. For example, where on the Circuit Playground Express is the accelerometer? It's pretty easy to find on the schematic, there's a big label that says "Accelerometer". Here's how you can use that to find the part on the board.

In the schematic window, click the eyeball icon (Show).

Then click on the accelerometer part in the schematic.

The part will highlight in both the schematic and board views.

This can be done in either direction, schematic->board or board->schematic. Even though highlighted, the part can sometimes still be hard to find on a busy board. Try turning off layers to help clean up the view.

This also works for electrical traces.

Parts in Eagle are stored in library files with a .lbr extension. Creating these parts from scratch to populate a library can be a time consuming process. It's possible to extract parts from existing PCB files for re-use or importing into your own libraries.

For example, let's say you have a custom board you are working on and plan to use the LIS3DH accelerometer. There's one of those on the Circuit Playground Express. Here's how you can can extract the LIS3DH Eagle part from the Circuit Playground Express PCB files.

Extracting Parts

Be sure to run the following from the schematic window.

In the board view window, select

File->Export->Libraries

(this is just a shortcut to exp-lbrs.ulp)

This will bring up the Export dialog.

In the Path: window, provide a location for the libraries to be extracted to.

Now sit back and relax. Another window will open and stuff will happen while the export runs. This can take several minutes depending on how many parts are being exported.

Look in the window title bar for a report on the export progress.

When done, it will leave the newly created library open in the library editor.

Click the Table of Content icon (looks like open book) to see the listing of all the parts.

You can continue to view and edit the library, or just close this window. The library file should be created in the location you specified earlier. The file will have an .lbr extension.

Be sure to move the library to an Eagle Libraries directory location.

To access the library, it should be located in one of your Eagle Library directory locations. To check from the Control Panel:

Options->Directories

It also needs to be "enabled" for use in the Control Panel.

Importing Parts

You can use parts directly from the library file created via the export script. Or you can import specific parts into your own library files. In Eagle, there are several items associated with a part:

  • Device - Footprint + Symbol
  • Symbol - used on schematic
  • Footprint - used on board

To import a part, first make sure the library is located in an Eagle Library directory and is set to Use.

In the Control Panel, open the library file you want to import into:

File->Open->Library...

You can either import the entire part (device) or just the footprint/symbol.

Most likely, you want to Add Device.

In the dialog that pops up, click the Import... button.

Find the previously exported library.

  • Expand the library to show all the parts.
  • Select the device you want to import.
  • Click OK.

The part is now imported into the library. Note that the device, footprint, and symbol are all added.

Obtaining specific dimensional information about a PCB is another commonly requested item. How long/wide is the board? What are the diameter of the holes? Where are the holes? etc.

In the primary Learn Guide for a product, so called "Fab Prints" are provided, typically in the Download section at the end of the guide. For example, here's the one from the BMP280 guide.

fab

These fab prints will have some general overall dimensional information. Maybe that has what's needed? If not, then the dimension tool in Eagle can be used to try* and find the desired information.

*Eagle's dimension tool is very klunky and crude. Don't expect modern day CAD style dimensioning functionality.

Start by activating the dimensioning tool.

  • Click the Dimension icon in the toolbar.
  • This will bring up the dimension tool options in the top menu.
  • Set Units to desired value.

There are several specific options depending on what is being measured. Select one using the appropriate icon in the top bar. Use horizontal or vertical for basic dimensioning. Use radius or diameter for circle/hole/drill dimensioning. Use angle for any angles of interest.

Horizontal

  1. Set start point of first leg.
  2. Set start point of second leg. This also defines the dimension length.
  3. Set location of dimension label.

Vertical

  1. Set start point of first leg.
  2. Set start point of second leg. This also defines the dimension length.
  3. Set location of dimension label.

Radius

  1. Set center location.
  2. Set radius by clicking any point on circumference. This defines the radius value.
  3. Set location of radius label.

Diameter

  1. Set start location on circumference.
  2. Set opposite start location. This defines the diameter value.
  3. Set location of diameter label.

Angle

  1. Set apex location.
  2. Set a point anywhere on first leg.
  3. Set point on second leg. This defines the angle value as well as the dimension label location.

Snapping Behavior

No one fully understands Eagle's snapping behavior when using the dimension tool. Just punch your way through it as best you can.

If you find you can't quite get the two dimension points you're attempting to measure, consider turning off layers that don't apply to the desired measurement so you have better access to the two points you're going for.

Hole Specific

For any hole (drill, via, etc.), it's generally easier to use the information tool to get the size (diameter). This may require accessing the part in the Library Editor. Here's a simple example for a via.

  • Select the Info tool from the toolbar.
  • Click the via of interest.
  • See info in dialog.

Another common request is for the Bill of Materials (BOM) that goes with a specific board. Or what specific "part number" is used for item X on a board.

BOM Export

A simple BOM can be exported directly from EAGLE's schematic editor.

Start a BOM export by selecting

File > Export > BOM

from the EAGLE menu.

In the dialog that appears, select Output format desired (ex: CSV) and then click Save...

Select a name and location for the file and save it.

Part Numbers

The BOM output above will not contain specific part numbers. Only general references are provided, like for a 1uF 0603 capacitor. Some parts *may* have a part number call out added in the comment or other meta data location associated with the EAGLE part which can be useful. But that should not be taken as a guarantee of that part actually being used.

The actual parts used are determined as part of the manufacturing process and they can change with time. That's why there is generally no simple answer to "what is the part number for item X". However, there should be enough information available to find a source for a given part. For example, any 1uF 0603 SMD capacitor should generally work. That information specifies the value (1uF), size (0603), and type (SMD) of the part in question.

This guide was first published on Sep 20, 2021. It was last updated on Mar 08, 2024.