Generate KiCAD schematics from your typeCAD project.
Run the following command in your project directory, where your typeCAD package.json file is located:
npm i @typecad/schematic
import { Schematic, Component } from '@typecad/typecad';
import { schematic } from '@typecad/schematic';
import { Resistor } from '@typecad/passives/0603';
let typecad = new Schematic('project');
let r1 = new Resistor({ value: '100k' }); // using the @typecad/passives package, symbols are defined already
let u1 = new Component({ symbol: 'Sensor_Humidity:SHT4x'}); // other components must have their 'symbol' property set
typecad.create(r1, u1);
schematic(typecad);
The schematic will be generated in the ./build
directory with the same name as your sheet. For example, if your sheet is named "main", the output will be ./build/main.kicad_sch
.
- Automatic symbol library management
- Component placement and connection
- Net labeling
- Grid-based layout
- Support for custom symbols
Using custom components with explicit symbol definitions:
let u1 = new Component({
symbol: 'Sensor_Humidity:SHT4x', sch: { x: 150, y: 100, rotation: 0 }
});
The symbol
property must be set for custom components and should follow the format 'Library:SymbolName'
. If sch.x
and sch.y
are not specified, components will be placed randomly.
This is in development. Currently, it places components at random and makes an attempt to prevent overlapping symbols. It connects pins through labels, not wires. The schematics are complete and can be used as normal.
Auto-placing components and routing wires in a visually useful way is fairly difficult to do. If you'd like to help, you are encouraged to give it a try and collaborate.