Importing
LoomFlow has two importers, both under the file menu: click the ☰ button in the top-left of the workspace, then open the Import submenu.
| Menu item | Source format | What it does |
|---|---|---|
KiCad project / schematic… (desktop) / KiCad schematic(s)… (browser) | .kicad_sch / .kicad_pro, KiCad 6+ | Adds connectors (and optionally signals and a device) to the current document |
harness.design… | harness.design 0.8 JSON export | Replaces the current document with the imported one |
Import connectors from KiCad
Section titled “Import connectors from KiCad”The KiCad importer reads the schematic and extracts every placed symbol with its pins. That’s deliberately all it reads: for harness design the useful question is which connectors exist and what cavities do they have. Nets, wires, and graphics describe the PCB side of each connector, so they’re ignored.
KiCad 6, 7, 8, and 9 schematics all work — the parts of the file LoomFlow reads are the same across those versions.
Pick the file(s)
Section titled “Pick the file(s)”- Desktop app: choose
Import→KiCad project / schematic…and pick either the.kicad_proor the root.kicad_sch. Hierarchical designs are followed automatically — every child sheet is read from disk and merged into one project-wide symbol list. A sheet that can’t be read is reported and skipped; the rest still import. - Browser: choose
Import→KiCad schematic(s)…and multi-select the.kicad_schfiles yourself (the browser can’t follow sheet references from a single picked file). Files that fail to parse are reported; good ones still import.
Review before applying
Section titled “Review before applying”Reading the file never touches your document directly — a review dialog (Import from KiCad schematic) opens first, listing every symbol with its reference, value, pin count, and library ID. Here you can:
- Choose which symbols become connectors. Each row has a checkbox. Likely connectors are pre-checked: references starting with
J,P, orX, or a library ID containing “conn”. Everything else (resistors, ICs, …) is listed unchecked so you can pull in anything the heuristic missed. Create signals from pin names(on by default). Pin numbers always become cavity labels; with this on, pin names become signals, matched find-or-create by exact name against the document. A labeled schematic lands with its nets already assigned, and pins namedGNDjoin your existingGNDnet.Mount all on a new device(on by default). Creates one layout device — the board or box the schematic describes — sized to fit, with every imported connector mounted on it in a grid. The name field is pre-filled from the sheet title (or file name); edit it before importing. See Devices.
Click Import N connectors to apply, or Cancel to walk away without changes. The whole import is a single undo step.
What the KiCad importer does and doesn’t handle
Section titled “What the KiCad importer does and doesn’t handle”Handled:
- Multi-unit parts — pins are collected across all units and deduped by pin number, so a part split over several unit symbols imports as one connector with the full pin set.
- Derived symbols — library aliases using
extendsinherit the base symbol’s pins. - Reused hierarchical sheets — a sheet placed N times yields N physical parts, each with its real per-instance reference (e.g.
J5, notJ?). - Natural ordering — pins and references sort humanly:
10after9,A10afterA2. - Malformed input — truncated files and unrecognized content are tolerated; the only hard error is a file that isn’t a KiCad schematic at all.
Not imported:
- Nets, wires, labels, junctions, graphics — only symbols and their pins.
- Power symbols (
#-prefixed references like#PWR01) — net decorations, not physical parts. - Pins with no name (KiCad’s
~or empty name) — the cavity is created but gets no signal. - Footprints, part properties, positions — imported nodes are placed in a fresh cascade (or gridded on the new device), not at their schematic coordinates.
Import a harness.design document
Section titled “Import a harness.design document”Import → harness.design… opens a version 0.8 JSON export from harness.design as a whole document. If you have unsaved changes you’ll be asked to confirm discarding them first; the undo history is cleared and the document starts unsaved (save it under a new name).
The mapping is nearly 1:1, since LoomFlow’s document format was modeled on that format:
- Connectors and terminals, including their schematic and layout positions
- Wires — including cores nested inside cables and wires inside twisted pairs — become connections with their cable and twist groupings intact
- Bundles and mates
- Connector parts, and signals created from cavity signal names
- Color names (
"Red") decoded to hex via the default palette - Length and gauge units (
mm/in,AWG/mm²)
Entity IDs are stable across re-imports, so bringing in a revised export lines up with the previous one instead of scrambling everything — see Collaboration.
After importing
Section titled “After importing”Either way, the result is ordinary document content — edit it like anything you drew by hand:
- Wire cavities together in the schematic view (Schematic).
- Assign real connector parts from the library so the BOM has part numbers (Parts library).
- Route trunks and enter lengths in the layout view (Layout).
- Export the cut list, BOM, or drawing (Exporting).