Routing a Board with More Switches

You'll likely want a few more switches on your Pico keyboard. Let's go for four switches right now and try out some optimizations in Schematic and PCB views to make things more efficient.

To begin, add three more keyswitches and wire them to GPIO 2, 3, & 4 of the Pico. Run the ground wires in series.

Schematic Tips

Switching to Schematic view we can see the circuit now has some airwires to route.

Symbolic Connections


Running all of those ground connections on the switches directly to the Pico (or to each other) can become a bit messy and hard to read. Instead, you'll use the GND symbol. These represent a network of ground connections that are symbolically connected to each other. 

In the Core parts bin, find the ground symbol and drag two of them into the Schematic view, one near keyswitch 4 and one next to a GND connection on the Pico.

Route a wire from the Pico GND connection to the GND symbol, then route a wire from the switch 4 pin 1 to the other GND symbol.

Bring in three more GND symbols and connect each switch to its own. They all now share the common GND network without a mess of wires!

GPIO Connections

You can now wire the other GPIO to switch connections. Later we'll look at using symbolic net labels for these as well, but for now a direction connection is fine.

PCB Rerouting

Now that you've added more components you'll switch to PCB view to rework the board.

Keyswitch Spacing

A typical spacing between keyswitches is 0.75". Set the Fritzing grid spacing to this value by going to View > Set Grid Size... and filling in the Grid Size field.

Now, pick and grab each switch to align them in a row -- they will snap to the grid, giving you perfect spacing.

Copper Ground Fill

Instead of running individual traces to the ground pins on each switch, you'll created a copper fill on the bottom layer of the board. This is a large plane of copper that is connected to the Pico GND and all of the component grounds. This greatly simplifies making all of those ground connections, since no individual traces will need to be drawn and routed.

Ground Plane Prep

First, deleted the existing ground trace.

You'll create vias to run the Pico's GND pads to the bottom layer. Switch the grid spacing to 0.025", then drag vias next to a few of the Pico's GND pads.

With the copper layer set to Top Layer, run a trace from each Pico GND pad to its neighboring via.

Set Ground Fill Seed

Since all of the pins we want to connect to common ground are on one network, all we need to do is specify one of them as the "ground fill seed" before we pour the fill. Right-mouse click on a Pico GND pad and pick Set Ground Fill Seed from the pop-up menu.

Ground Fill

Switch to the bottom layer and delete the GPIO 0 to switch trace you made earlier. You can click it and press Backspace on the keyboard to do so.

With the Bottom Layer still active, click on Routing > Ground Fill > Ground Fill (bottom)

This will create the ground copper fill and connect each of the ground vias and pads to it.

However! We have other traces to create before we can finalize the Ground Fill, so you'll remove it for now and re-create it later. Click Routing > Ground Fill > Remove Copper Fill to remove it.

You can run the GPIO pins to the keyswitches on the bottom layer of the board to avoid having them cross the Pico's pads on the right side of the board, as well as the "keepout" area that is marked on the Pico's footprint indicating where there are pads, holes, and the USB connector pads to avoid.

(Later, when you use more keyswitches you'll route some of those pads on the top layer.)

Pin Traces

As before, add vias next to the pads, and connect them to the top layer pads for GPIO 0-3.

On the bottom layer, begin running traces from the Pico pads to the keyswitches as shown.

Now that the traces are all in place, re-pour the ground fill on the bottom layer.

This time, the copper ground fill has left space for all of the non-ground traces while connecting all of the ground pads to the fill.

Silkscreen Label

If you'd like to add text to the board, you can drag the logo part from the Core PCB View parts bin on to the board and customize it.

Reset Button

The Pico has a RUN/RESET pin which will reset the board when grounded. We'll add a small button to make this easier to use.

Add and wire the button the same way you've done before with the keyswitches.

Run a trace from the RESET pin to the button, and then remove and re-pour the ground fill.

This guide was first published on Mar 03, 2021. It was last updated on Apr 24, 2024.

This page (Making a More Complex Board) was last updated on Mar 08, 2024.

Text editor powered by tinymce.