Skip to main content

JLC2KiCad_lib is a python script that generate a component library (symbol, footprint and 3D model) for KiCad from the JLCPCB/easyEDA library.

Project description

JLC2KiCadLib

PyPI version Python versions Downloads Code style: black License: MIT

JLC2KiCadLib is a python script that generate a component library (symbol, footprint and 3D model) for KiCad from the JLCPCB/easyEDA library. This script requires Python 3.6 or higher.

Exemple

easyEDA origin KiCad result
JLCSymbol KiCadSymbol
JLCFootprint KiCadFootprint
JLC3Dmodel KiCad3Dmodel

Installation

Install using pip:

pip install JLC2KiCadLib

Install from source:

git clone https://github.com/TousstNicolas/JLC2KiCad_lib.git
cd JLC2KiCad_lib 
pip install . 

Usage

usage: JLC2KiCadLib [-h] [-dir OUTPUT_DIR] [-model_base_variable MODEL_BASE_VARIABLE] [--no_footprint] [--no_symbol] [-symbol_lib SYMBOL_LIB] [-footprint_lib FOOTPRINT_LIB]
                    [-logging_level {DEBUG,INFO,WARNING,ERROR,CRITICAL}] [--log_file] [--skip_existing] [--version]
                    JLCPCB_part_# [JLCPCB_part_# ...]

take a JLCPCB part # and create the according component's kicad's library

positional arguments:
  JLCPCB_part_#         list of JLCPCB part # from the components you want to create

options:
  -h, --help            show this help message and exit
  -dir OUTPUT_DIR       base directory for output library files
  --no_footprint        use --no_footprint if you do not want to create the footprint
  --no_symbol           use --no_symbol if you do not want to create the symbol
  -symbol_lib SYMBOL_LIB
                        set symbol library name, default is "default_lib"
  -footprint_lib FOOTPRINT_LIB
                        set footprint library name, default is "footprint"
  --skip_existing       use --skip_existing if you want to skip already existing files and symbols
  -model_base_variable MODEL_BASE_VARIABLE
                        use -model_base_variable if you want to specifie the base path of the 3D model using a path variable
  -logging_level {DEBUG,INFO,WARNING,ERROR,CRITICAL}
                        set logging level. If DEBUG is used, the debug logs are only written in the log file if the option --log_file is set
  --log_file            use --log_file if you want logs to be written in a file
  --version             Print version number and exit

exemple use : 
        python3 JLC2KiCad_lib.py C1337258 C24112 -dir My_lib -symbol_lib My_Symbol_lib --no_footprint

The only required arguments are the JLCPCP_part number (e.g. Cxxxxx)

Example usage : JLC2KiCadLib C1337258 C24112 -dir My_lib -symbol_lib My_symbol_lib

This example will create the symbol, footprint and 3D model for the two components specified and will output the symbol in the ./My_lib/symbol/My_symbol_lib.lib file, the footprint and 3D model will be created in the ./My_lib/Footprint. This will result in the following tree to be created :

My_lib
├── footprint
│   ├── packages3d
│   │   ├── QFN-24_L4.0-W4.0-P0.50-BL-EP2.7.wrl
│   │   └── VQFN-48_L7.0-W7.0-P0.50-BL-EP5.5.wrl
│   ├── QFN-24_L4.0-W4.0-P0.50-BL-EP2.7.kicad_mod
│   └── VQFN-48_L7.0-W7.0-P0.50-BL-EP5.5.kicad_mod
└── symbol
    └── My_symbol_lib.kicad_sym

The JLCPCB part # is found in the part info section of every component in the JLCPCB part library.

By default, the library folder will be created in the execution directory. You can specify an absolute path with the -dir option.

Dependencies

JLC2KiCadLib relies on the KicadModTree framework to generate the footprints.

Notes

  • Even so I tested the script on a lot of components, be careful and always check the output footprint and symbol.
  • I consider this project completed. I will continue to maintain it if a bug report is filed, but I will not develop new functionality in the near future. If you feel that an important feature is missing, please open an issue to discuss it, then you can fork this project with a new branch before submitting a PR.

License

Copyright © 2021 TousstNicolas

The code is released under the MIT license

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

JLC2KiCadLib-1.0.23.tar.gz (16.1 kB view details)

Uploaded Source

Built Distribution

JLC2KiCadLib-1.0.23-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

Details for the file JLC2KiCadLib-1.0.23.tar.gz.

File metadata

  • Download URL: JLC2KiCadLib-1.0.23.tar.gz
  • Upload date:
  • Size: 16.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for JLC2KiCadLib-1.0.23.tar.gz
Algorithm Hash digest
SHA256 bb6c662a7ce8432db7a4598b3bbebbe65af405cfe113e93f1c23486e8d7a8a91
MD5 71379a8ae07e04a0bda6a4a06ac0c4bd
BLAKE2b-256 753e4cd0f9e29c5641aeba13e5735148e3f0363556a2e63b50631155f622686d

See more details on using hashes here.

File details

Details for the file JLC2KiCadLib-1.0.23-py3-none-any.whl.

File metadata

File hashes

Hashes for JLC2KiCadLib-1.0.23-py3-none-any.whl
Algorithm Hash digest
SHA256 2be7d9a6b73bc795bc145893ee3056671365896761188d9fea5b508c9e6ddf3e
MD5 a3ee8fbc1582f6038256a73435ba14d7
BLAKE2b-256 a62c29a88a326d6a8ac1e446ff9f0c33f60cf6e10f64b5b96fcc618e07b7207a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page