Close

Prototyping KiCad-Designed RP2040 PCB Using JLCPCB SMT Assembly

tekobaseTekobase wrote 03/29/2022 at 16:41 • 5 min read • Like

In this article, we will explore how to get a KiCAD design fabricated and assembled by the JLCPCB SMT Assembly service.

Prerequisites

If you're reading this article, you'll probably have KiCAD installed on your computer. But if not, download and install KiCAD 6 from the official website.

The following contents of this article is tested with KiCAD version 6. Older versions or Nightly builds are not tested.

There are several plugins to export JLCPCB compatible fabrication files (Geber, BOM, CPL). As we can see in the table, KiCAD JLCPCB tools has the best reputation and community support (at this time of writing).

GIthub RepositoryStarForkContributorsLast Updated
KiCAD JLCPCB tools2442810Feb 2022
KiCad JLCPCB BOM Plugin1102532021
KiJLC12822021
KiCad BOM CPL Plugin3212020

Install KiCAD JLCPCB tools on KiCAD as described in the doc.

If installation worked, you could see a blue JLCPCB tools icon on the toolbar of PCB Editor.

Starting from an Existing Design

Immature poets imitate: mature poets steal. by T.S. Eliot

Just like graphics designers start from templates and software developers start from boilerplates, hardware designers can also start from a template or existing designs. There are already many resources we can use, including the official Raspberry Pico design. To help you to choose the right starting point, the following table summarizes some open-source hardware designs at the time of this writing.

>td >Pro Micro RP2040

Project/Board NameAuthorResourceDesigned withNote
Raspberry PicoRaspberry Pi FoundationDesign FileAllegroThe official hardware design of Raspberry Pico
ItsyBitsy RP2040Adafruit IndustriesGitHubEagleItsyBitsy footprint
RPi Pico Debugger ShoeShawn HymelGitHubKiCADRaspberry Pico footprint

We'll use RPi Pico Debugger Shoe as a starting template, because

But you can choose other resources as there are ways of importing Eagle and Allego designs from KiCad, or even you can create the design from scratch.

Editing the design

Since we started from an existing design, let's say editing the design instead of designing the hardware.

First of all download and open the design in your KiCad. Some may do it by simple mouse clicking on the web browser, others would do it using the Git command line. No matter how you downloaded it, you could see the following result after opening it.

You could change whatever in the design as your need. But before publishing and using it in production, be sure to check the license of the original project.

We will assume that you changed something and are ready to go for prototyping with the JLCPCB SMT Assembly service.

Generating the Files for JLCPCB

Unlike some other PCBA manufacturers where the BOM, Geber, CPL files are treated manually by the sales and engineering employees, JLCPCB offers the online form to upload the files to get PCBA ordering done. JLCPCB was one of the early suppliers that supported online ordering on the website. Online PCBA ordering has pros and cons.

The Geber and CPL files are generated by the EDA software and hardly edited manually. The problem comes from the BOM list file.

To make this easier, we installed KiCAD JLCPCB tools already in the beginning. We can start using this handy tool now.

On the opened popup window named JLCPCB Tools, you would see the BOM table with an empty LCLC column. As you might know, if you have some experience in JLCPCB ordering, the JLCPCB parts library is linked to the LCSC parts.

You need to choose a part (or multiple parts) in the list then click the Select part button on the right sidebar. For example, we'll choose RP2040 in the list.

After repeating these steps for all the parts you want to assemble, you could get the BOM list is filled with the right information. We can assure you that our BOM is the most updated and has no shortage issue because we checked JLCPCB's stock status in live while filling in the BOM list.

After you finished filling the BOM list, just click the Generate fabrication files. The files are generated in the jlcpcb folder in the project's root. You may need to compress the jlcpcb/geber folder to upload to the ordering form, if the zip file is not generated automatically (for example, as Geber-<your-project-name>.zip).

Now we have all the 3 files ready to upload to the JLCPCB SMT Assembly service page.

Conclusion and Further Readings

We've come through how to make a KiCad-designed RP2040 PCB ready to be made by the JLCPCB SMT Assembly service. Although KiCad and RP2040 are mainly discussed, the above method can be used for any kind of PCB design. For example, you can choose one of your own KiCad projects to generate JLCPCB-compatible fabrication files.

If you have any questions directly related to JLCPCB, please read JLCPCB SMT Assembly FAQs first. Most of the common questions are already answered.

Thank you for reading to this end of the long text!

Like

Discussions