kisiSI/PI checks for KiCad

Check impedance, channels and power of a KiCad board – in the browser

Drop a .kicad_pcb and get target impedance per track, loss, TDR, vias, crosstalk and interface checks, the power tree, voltage drop and PDN impedance. Nothing to install, no setup; the board is processed on your computer and never uploaded.

kisi viewer: the ThunderScope board with every track coloured by its deviation from the target impedance, the analysis steps in the side panel

What it checks

Impedance

  • Targets from net class names (50Z, 90Z_Diff)
  • Formulas in a second, the 2D field solver on demand
  • Impedance along the path, loss, TDR, vias, crosstalk
  • Each result with its accuracy level and typical deviation (± %)

Channel

  • Buses and lanes through series parts and AC caps, per assembly variant
  • Profiles: PCIe, USB, DDR, LVDS, Ethernet, HDMI, MIPI …
  • Loss, return loss, skew and a linear eye, also at connectors with the channel behind them
  • Differential pairs as 4-ports, multi-drop lines at every receiver
  • Export of a lane or a whole bus: SPICE subcircuits with test benches, Touchstone, a KiCad project

Power

  • Regulator chain, budget and power flow with losses
  • DC voltage drop and current density per rail and layer, also in the ground return
  • PDN impedance seen from every IC: capacitors ranked by loop inductance, anti-resonances, target and recommendations
  • Temperature estimate: board map per layer, junction and case temperature of every part, heat through the vias
Net detail with the TDR of a differential pair
Net detail: impedance along the path, loss, TDR with physics-based via models, skew and crosstalk for every net with a target
Channel view: interfaces of the board with their verdicts
Channel check: lanes from IC to IC or to a connector through series parts, judged against interface profiles on loss, return loss, skew and a linear eye
Power flow from the inputs through the regulators to the loads
Power flow: from the supply inputs through every regulator to the loads, with regulator, shunt and copper losses
Voltage drop of a rail and its impedance seen from an IC
Voltage drop and PDN: DC drop on every layer of a rail, and its impedance seen from an IC with the decoupling capacitors ranked by loop inductance
Temperature estimate of the board with the hottest parts
Temperature (estimate): the board's temperature per layer from the losses, the hottest parts with their junction temperature and the heat through the vias
Prepare PCB page: a checklist of what the board lacks per category, with forms for the values
Prepare PCB: a checklist of what the board file lacks per category – fill in a step, Apply, check mark – with a live check and the board's kisi.json
Components with junction and case temperature and the source of their thermal data
Parts at temperature: junction and case temperature against Tj max, with the thermal resistances used and where they come from

Command line

The same engine and field solver as one file for scripts, CI and agents (Node.js ≥ 18). Every command prints JSON.

curl -fsSLO https://github.com/riehlies/kisi/releases/latest/download/kisi.mjs
node kisi.mjs check board.kicad_pcb

Documentation

Start

Background

Status

A quick project, meant to be helpful. kisi is a fast check of a board without long setup times. Its results are estimates for design checks, without any warranty of correctness – not a replacement for sign-off simulation or measurement.

The field solver was compared with HFSS cases and the via and plane models with 3D FDTD results; validation against other solvers and against measurements is still open. kisi stays a fast linear checker: for a sign-off with IBIS buffers and equalisers, export the channel to PyBERT or a circuit simulator. The single tools are useful on their own already.