GithubHelp home page GithubHelp logo

alitekin2fx / kicad-jlcpcb-tools Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bouni/kicad-jlcpcb-tools

0.0 1.0 0.0 19.8 MB

Plugin to generate BOM + CPL files for JLCPCB, assigning LCSC part numbers directly from the plugin, query the JLCPCB parts database, lookup datasheets and much more.

Shell 1.17% Python 98.83%

kicad-jlcpcb-tools's Introduction

The main window KiCAD JLCPCB tools

Plugin to generate all files necessary for JLCPCB board fabrication and assembly

  • Gerber files
  • Excellon files
  • BOM file
  • CPL file

Furthermore it lets you search the JLCPCB parts database and assign parts directly to the footprints which result in them being put into the BOM file.

The main window

The parts library window

The parts details dialog

Warning ๐Ÿ”ฅ

This plugin is not yet very well tested and only works for KiCAD 6.0!

I try to keep it working with 6.99 nightly builds but there are massive API changes on the horizon and I'm not sure if I can keep up with them.

This is under a lot of developments, so consider this README out of date all the time ๐Ÿ˜

If you find any sort of problems, please create an issue so that I can hopefully fix it!

Installation ๐Ÿ’พ

KiCAD PCM

Add my custom repo to the Plugin and Content Manager, the URL is https://raw.githubusercontent.com/Bouni/bouni-kicad-repository/main/repository.json

image

From there you can install the plugin via the GUI.

Git

Simply clone this repo into your scripting/plugins folder, on Windows thats C:\users\<username>\Documents\kicad\6.0\scripting\plugins\ on linux that would be /home/<username>/.local/share/kicad/6.0/scripting/plugins.

Flatpack โš ๏ธ

The Flatpak installation of KiCAD currently dows not ship with pip and requests installed. The later is required for the plugin to work. In order to get it working you can run the following 3 commands:

  1. flatpak run --command=sh org.kicad.KiCad
  2. python -m ensurepip --upgrade
  3. /var/data/python/bin/pip3 install requests

See issue #94 for more info.

Usage ๐Ÿฅณ

Checkout this screencast, it shows quickly how to use this plugin:

KiCAD JLCPCB example

Keyboard shortcuts

Windows can be closed with ctrl-w/ctrl-q/command-w/command-w (OS dependent) and escape. Pressing enter in the keyword text box will start a search.

Toggle BOM / CPL attributes

You can easily toggle the exclude from BOM and exclude from CPL attributes of one or multiple footprints.

Select LCSC parts from the JLCPCB parts database

Select one or multiple footprints, click select part. You can select parts with equal value and footprint using the Select alike button. In the upcoming modal dialog, search for parts, select the one of your choice and click select part. The LCSC number of your selection will then be assigned to the footprints.

Footprint selection

Generate fabrication data

Generate all necessary assembly files for your board with a simple click.

A new directory called jlcpcb is created, and in there, two separate folders are created, gerber and assembly.

In the gerber folder all necessary *.gbr and *.drl files are generated and zipped, ready for upload to JLCPCB. The zipfile is named GERBER-<projectname>.zip

In the assembly folder, two files are generated, BOM-<projectname>.csv and CPL-<projectname>.csv.

Footprints are included into the BOM and CPL files according to their exclude from BOM and exclude from CPL attributes.

The fabrication files

Footprint rotation correction

JLCPCB seems to need corrected rotation information. @matthewlai implemented that in his JLCKicadTools and I adopted his work in this plugin as well. You can download Matthews file from GitHub as well als manage your own corrections in the Rotation manager.

Icons

This plugin makes use of a lot of icons from the excellent Material Design Icons

kicad-jlcpcb-tools's People

Contributors

bhusang avatar bouni avatar bvernoux avatar computergeek1507 avatar danielo avatar eric-wood avatar github-actions[bot] avatar masuidrive avatar obra avatar polsaker avatar radonyl avatar taki-d avatar truhlikfredy avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.