Register a custom symbol
create_custom_symbolRegister a connectable schematic symbol for a part that is NOT in KiCad's libraries (search_kicad_symbol returned nothing). Use this for specialty ICs — LED-matrix drivers, niche sensors, etc. — INSTEAD of telling the synthesizer to model the part with discrete passives (which leaves every pin dangling and breaks the board). Provide the full datasheet pinout. The part then becomes available to the synthesizer as Part('custom', '') with the exact pin names you supply here, and is added to the Verified parts table. A part with three or more pins needs footprint= naming a real, in-library footprint for its package (search_kicad_footprint with the family and pin count, e.g. 'LGA-14'); the call is rejected without one, since a generated grid of pads cannot be assembled. List every pad of the footprint, NC pins included. When the package is not in KiCad's libraries, bring your own footprint instead: footprint_mod takes the whole .kicad_mod file as text (KiCad 6+, up to 1 MB; the CLI reads it with koppar custom-symbol --footprint-file). It is checked as a KiCad footprint, every pad must have a pin with that pad's number (and every pin a pad), and it is stored as 'custom:': the symbol uses it, and it goes on the board, into project.zip and into the fp-lib-table. footprint is then not needed. The name is used for file names: letters, digits and _ . + - (anything else becomes _). The symbol belongs to design_id.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Part number, used as the symbol name (letters, digits, _ . + -). | |
| pins | Yes | Every pin from the datasheet. | |
| datasheet | No | ||
| design_id | Yes | The design id returned by create_design or list_designs. | |
| footprint | No | A 'Library:Footprint' from search_kicad_footprint. Required for 3+ pins unless footprint_mod is given. | |
| reference | No | Reference prefix, e.g. 'U'. | |
| description | No | ||
| footprint_mod | No | Your own footprint: the full text of a .kicad_mod file, starting with '(footprint'. Its pad numbers must match the pin numbers. |