Skip to content

Releases: F-Blaze/VelaTrace

VelaTrace v0.1.0-alpha.2

Pre-release

Choose a tag to compare

@F-Blaze F-Blaze released this 19 Oct 22:09
v0.1.0-alpha.2
ef60ccc

A free KiCad 10 plugin that checks a board for small mistakes before you order it. It also routes small boards with its own router, with a preview, a KiCad DRC check and one Undo. Alpha, tested on Windows only.

What changed since alpha.1

  • Install from a zip, no git. Download VelaTrace-v0.1.0-alpha.2-pcm.zip below. In KiCad, open Plugin and Content Manager → Install from File… and pick the zip. KiCad asks to enable the KiCad API; click Yes. Open the PCB Editor. The first time, KiCad installs the plugin's Python packages and then shows the VelaTrace button. On our Windows test PC this took about 4 minutes and about 300 MB on disk.
  • No Java needed. Route board now uses Vela-routing, VelaTrace's own router (Python and numpy, inside the plugin). The Freerouting JAR and Java are no longer used by the plugin. On VelaTrace's 13-board test set, on one PC, Vela-routing was accepted by KiCad DRC in 20 of 39 runs, against 8 of 33 for the previous Freerouting path (5 of the Freerouting misses were the pipeline refusing the board, not routing failures). Details: docs/VELA_ROUTING.md.
  • kicad-cli is found automatically next to KiCad's own Python, so routing usually needs no Setup step.
  • Demo board as a download. velatrace-demo-v0.1.0-alpha.2.zip has mistakes planted in it. Open it and click Check design.
  • New Info-only notes for differential-pair skew and return paths. They have not been measured on unseen boards; treat them as experimental.

Tested for this release

On Windows, with the KiCad 10.0.6 runtime and a fresh, separate KiCad configuration: installed from the zip with Install from File…, the packages (kicad-python 0.8.0, PySide6-Essentials 6.10.2, numpy 2.3.5) installed, the button appeared, Check design ran on the demo board, Route board routed it and passed KiCad DRC, Approve applied the copper, and one Undo removed it. The board file on disk was not changed.
Not tested: Linux, macOS, KiCad 9, installs from the KiCad plugin repository (not listed yet), the "Recreate Plugin Environment" recovery step, and boards other than the demo board in this install.

Known limits

  • Routing: one track width and one clearance for all nets, including power. No differential pairs, length tuning or BGA fanout. Placed, initially unrouted boards only. Dense boards usually end as a partial route you can reject. Approve anyway applies a route that failed DRC, after a confirmation that lists the findings. DRC-clean does not mean electrically correct.
  • The check is a first pass, not a design review. On 12 boards it had never seen, 44% of the design-rule findings were judged correct, and the reviewers were LLM agents, not human engineers.
  • The JLCPCB window was tried on three boards. Its live lookup uses a JLCPCB website endpoint, not an official API.
  • Offline by default. Network use is opt-in and listed in docs/privacy.md. The first install downloads Python packages from PyPI through KiCad.
  • Development is AI-assisted.
  • If you installed alpha.1 with git clone, delete that Documents/KiCad/10.0/plugins/VelaTrace folder before installing the zip, so KiCad does not load two copies.

Downloads

The tag is signed with the maintainer's SSH key, fingerprint SHA256:komvC+jlhCr/yBGl/RA6BDSLwOMYT6uYdK8cpzpxVyw; GitHub shows it as Verified. The zips are built reproducibly from the tag with scripts/build_pcm_zip.py.

File sha256 Size
VelaTrace-v0.1.0-alpha.2-pcm.zip 7336bc11c8a656f357b24e7d1e3883b4dc641d391d5c59b5b658a20114a834ca 304,102 bytes
velatrace-demo-v0.1.0-alpha.2.zip 8f931ea07bcec44d4b5c4b197c621177ed9ffcab83e6ca937927fe6ec4a9eea1 38,253 bytes

Did it work on your board? A one-line issue ("worked on X" or "failed at Y") helps more than a star.

VelaTrace v0.1.0-alpha.1

Pre-release

Choose a tag to compare

@F-Blaze F-Blaze released this 06 Oct 02:06
v0.1.0-alpha.1
3339024

A free, local KiCad 10 plugin: a guarded front-end for Freerouting (preview, KiCad DRC check, one undoable commit) for small unrouted boards, plus an experimental offline rule check and a JLCPCB parts window. Alpha, tested on Windows only.

First public alpha. Tested on KiCad 10.0.4 and 10.0.6 on Windows; Linux, macOS and KiCad 9 are untested. Please try it on a copy of a board first. Board changes are backed up and applied as one undoable step. Development is AI-assisted.

Offline by default. Network use is opt-in and listed in docs/privacy.md: AI provider calls, JLCPCB parts downloads and live lookups, and Groq search.

VelaTrace on the demo board

What it does

  • Guarded Freerouting front-end. Route board reads the open board (no save needed), runs pre-flight checks, exports the DSN itself, runs the unmodified Freerouting 2.1.0 JAR and draws a preview on a user layer. KiCad DRC runs in the background; Approve applies the copper as one undoable step after a backup. Approve anyway applies a route that failed DRC, after a confirmation that lists the findings. Cancel routing stops a run.
  • Partial routes instead of nothing. When Freerouting cannot finish, you get an "N of M connections routed" preview you can reject. It can never be approved.
  • Experimental offline rule check. LEDs without a series resistor, I2C pull-up problems, duplicated ICs, labels split across sheets, unset values and others. No key, no network. Four rules that were wrong too often are shown as Info notes only.
  • BOM tidy-ups. Value and package spelling and merges (100n / 0.1uF).
  • JLCPCB window (new, lightly tested). Opt-in catalogue download for an offline parts table with tier, stock and price; one-click live stock and price refresh for the parts on your BOM; flags LCSC numbers that do not match the part's value and out-of-stock parts; writes the LCSC field to the board in one undoable step; exports JLCPCB BOM, placement and Gerber files. It cannot edit the schematic (a KiCad 10 limit).
  • Shareable offline report. One self-contained HTML file.
  • Optional AI explanation with your own key.

Known limits

  • One track width and one clearance for all nets, including power. No differential pairs, length tuning or BGA fanout. Dense boards usually end as a partial route. DRC-clean does not mean electrically correct.
  • Routing accepts placed, initially unrouted boards only.
  • The rule check is experimental. In the only measurement so far, reviewers and the adjudicator were LLM agents, not human experts; on 12 unseen boards 44% of findings were judged correct (27% counting unadjudicated findings as wrong), and it surfaced only a minority of the issues the reviewers raised. Treat findings as hints.
  • The JLCPCB window was tried on three boards. Its live lookup uses a JLCPCB website endpoint, not an official API, and its catalogue is the public data file of the kicad-jlcpcb-tools project; neither data source carries a licence statement.
  • Vela-routing, an experimental multilayer router in this repository, is research code and is not a routing option in the plugin.
  • Freerouting is GPLv3 and is downloaded separately; it is not bundled or modified. A small MIT launcher in this repository loads it in the same Java process. Whether that makes a combined work is an open question the maintainer is reviewing.
  • For routing features VelaTrace lacks, see KiCadRoutingTools; for datasheet-aware review, kicad-happy; for a mature JLCPCB workflow, kicad-jlcpcb-tools.

Hardening in this release

  • Project files can no longer switch off the DRC gate (custom rule files, zero clearances).
  • Tools are never run from the current or project folder.
  • Routing no longer writes to your KiCad settings folder.
  • Copper text and graphics get keep-outs, so routes do not run through them.

Install

Requirements: KiCad 10 with the IPC API enabled, Python 3.11+, and for routing Temurin Java 21 plus the Freerouting 2.1.0 JAR. Steps are in the README quickstart and docs/install.md. To get exactly this release:

git clone --branch v0.1.0-alpha.1 --depth 1 https://github.com/F-Blaze/VelaTrace

The tag is signed; GitHub shows it as Verified.

Feedback

Wrong or missed findings: please use the Audit false positive issue template. A demo board with planted issues is in examples/velatrace-demo.