app
KiCad - the KiCad Bridge
Public Made by Adomby adom
Reference implementation of the KiCad bridge: multi-instance Python server, forward path via kicad-cli, reverse path via in-process plugin. Most complex of the three bundled bridges.
master
John Lauer
ESC demo: routing round, Freerouting and Fable takes, video and stats; Astra pending
c746e2f
25d ago
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118
{
"_hint": "Freerouting routed 59 net(s) (1217 segments, 139 vias) in 229.51 s over 18 pass(es); copper committed live, one native undo step per net named \"Freerouting <net>\"; DRC reports 202 error(s) and 7 unconnected item(s): inspect drc.summary.first before trusting the result. Tell the user the copper came from Freerouting, not the AI, and name routed.unroutedNets if any.",
"_timeoutHint": "ab waits up to 900s for this verb before the request times out. If it's a long operation (cloud open / download / export), DON'T treat a timeout as failure — the work usually keeps running on the bridge. Poll `kicad_status` until it reports done.",
"applied": "ipc",
"backup": null,
"boardPath": "C:/Users/john/Downloads/adom-gate/esc-demo/routing/esc-g431-fable-placed-planes.kicad_pcb",
"bridgeVersion": "1.0.3",
"drc": {
"available": true,
"clean": false,
"errors": 202,
"revision": "837a0ffd9857c402fc6dc0f9eeaeccbcd39e4656b8247bc3e691153fceadfe45",
"source": "live-editor-snapshot",
"summary": {
"clean": false,
"errors": 209,
"excluded": 0,
"first": [
{
"description": "Clearance violation ( clearance 0.2000 mm; actual 0.0971 mm)",
"items": [
"Track [GND] on F.Cu, length 2.6714 mm",
"Pad 5 [/DRV_SHC] of Q6 on F.Cu"
],
"severity": "error",
"type": "clearance"
},
{
"description": "Clearance violation ( clearance 0.2000 mm; actual 0.1284 mm)",
"items": [
"Pad 5 [/DRV_SHC] of Q6 on F.Cu",
"Track [GND] on F.Cu, length 0.2627 mm"
],
"severity": "error",
"type": "clearance"
},
{
"description": "Items shorting two nets (nets +VBAT and /DRV_SHA)",
"items": [
"Pad 5 [+VBAT] of Q1 on F.Cu",
"Track [/DRV_SHA] on F.Cu, length 2.0344 mm"
],
"severity": "error",
"type": "shorting_items"
},
{
"description": "Items shorting two nets (nets +VBAT and /DRV_SHA)",
"items": [
"Pad 5 [+VBAT] of Q1 on F.Cu",
"Track [/DRV_SHA] on F.Cu, length 4.1181 mm"
],
"severity": "error",
"type": "shorting_items"
},
{
"description": "Items shorting two nets (nets +VBAT and /DRV_SHB)",
"items": [
"Pad 5 [+VBAT] of Q3 on F.Cu",
"Track [/DRV_SHB] on F.Cu, length 4.1181 mm"
],
"severity": "error",
"type": "shorting_items"
},
{
"description": "Clearance violation (footprint MP3 clearance 0.6000 mm; actual 0.2435 mm)",
"items": [
"Track [GND_OUT] on In1.Cu, length 10.4783 mm",
"PTH pad 1 [GND] of MP3"
],
"severity": "error",
"type": "clearance"
},
{
"description": "Items shorting two nets (nets /DRV_SHB and /COMP1_INM_IO1_BEMF_B)",
"items": [
"Pad 5 [/DRV_SHB] of Q4 on F.Cu",
"Via [/COMP1_INM_IO1_BEMF_B] on F.Cu - B.Cu"
],
"severity": "error",
"type": "shorting_items"
},
{
"description": "Hole clearance violation (board setup constraints hole clearance 0.2500 mm; actual 0.0000 mm)",
"items": [
"Pad 5 [/DRV_SHB] of Q4 on F.Cu",
"Via [/COMP1_INM_IO1_BEMF_B] on F.Cu - B.Cu"
],
"severity": "error",
"type": "hole_clearance"
},
{
"description": "Items shorting two nets (nets GND and /DRV_GHB)",
"items": [
"Pad 1 [GND] of Q4 on F.Cu",
"Via [/DRV_GHB] on F.Cu - B.Cu"
],
"severity": "error",
"type": "shorting_items"
},
{
"description": "Items shorting two nets (nets GND and /DRV_GHB)",
"items": [
"Pad 1 [GND] of Q4 on F.Cu",
"Track [/DRV_GHB] on F.Cu, length 1.7222 mm"
],
"severity": "error",
"type": "shorting_items"
},
{
"description": "Hole clearance violation (board setup constraints hole clearance 0.2500 mm; actual 0.0258 mm)",
"items": [
"Pad 1 [GND] of Q4 on F.Cu",
"Via [/DRV_GHB] on F.Cu - B.Cu"
],
"severity": "error",
"type": "hole_clearance"
},
{
"description": "Items shorting two nets (nets /DRV_SHB and /COMP1_INM_IO1_BEMF_B)",
"items": [
"Pad 5 [/DRV_SHB] of Q4 on F.Cu",
"Track [/COMP1_INM_IO1_BEMF_B] on F.Cu, length 2.3709 mm"
],
"severity": "error",
"type": "shorting_items"
},
{
"description": "Items shorting two nets (nets /DRV_SHB and /COMP1_INM_IO1_BEMF_B)",
"items": [
"Pad 5 [/DRV_SHB] of Q4 on F.Cu",
"Track [/COMP1_INM_IO1_BEMF_B] on F.Cu, length 0.3037 mm"
],
"severity": "error",
"type": "shorting_items"
},
{
"description": "Items shorting two nets (nets /DRV_SHB and +VBAT)",
"items": [
"Track [/DRV_SHB] on F.Cu, length 2.0344 mm",
"Pad 5 [+VBAT] of Q3 on F.Cu"
],
"severity": "error",
"type": "shorting_items"
},
{
"description": "Clearance violation ( clearance 0.2000 mm; actual 0.1284 mm)",
"items": [
"Track [GND] on F.Cu, length 0.2627 mm",
"Pad 5 [/DRV_SHA] of Q2 on F.Cu"
],
"severity": "error",
"type": "clearance"
},
{
"description": "Clearance violation ( clearance 0.2000 mm; actual 0.0971 mm)",
"items": [
"Track [GND] on F.Cu, length 2.6714 mm",
"Pad 5 [/DRV_SHA] of Q2 on F.Cu"
],
"severity": "error",
"type": "clearance"
},
{
"description": "Hole clearance violation (board setup constraints hole clearance 0.2500 mm; actual 0.0258 mm)",
"items": [
"Pad 1 [GND] of Q4 on F.Cu",
"Via [/DRV_GHB] on F.Cu - B.Cu"
],
"severity": "error",
"type": "hole_clearance"
},
{
"description": "Hole clearance violation (board setup constraints hole clearance 0.2500 mm; actual 0.0000 mm)",
"items": [
"Pad 5 [/DRV_SHB] of Q4 on F.Cu",
"Via [/COMP1_INM_IO1_BEMF_B] on F.Cu - B.Cu"
],
"severity": "error",
"type": "hole_clearance"
},
{
"description": "Clearance violation ( clearance 0.2000 mm; actual 0.1250 mm)",
"items": [
"Pad 1 [unconnected-(U2-PGOOD-Pad1)] of U2 on F.Cu",
"Pad 11 [GND] of U2 on F.Cu"
],
"severity": "error",
"type": "clearance"
},
{
"description": "Clearance violation ( clearance 0.2000 mm; actual 0.1500 mm)",
"items": [
"Pad 2 [/5V_EN] of U2 on F.Cu",
"Pad 3 [+VBAT] of U2 on F.Cu"
],
"severity": "error",
"type": "clearance"
},
{
"description": "Clearance violation ( clearance 0.2000 mm; actual 0.1800 mm)",
"items": [
"Pad 4 [+5V] of U2 on F.Cu",
"Pad 10 [GND] of U2 on F.Cu"
],
"severity": "error",
"type": "clearance"
},
{
"description": "Clearance violation ( clearance 0.2000 mm; actual 0.1800 mm)",
"items": [
"Pad 5 [/SW] of U2 on F.Cu",
"Pad 10 [GND] of U2 on F.Cu"
],
"severity": "error",
"type": "clearance"
},
{
"description": "Clearance violation ( clearance 0.2000 mm; actual 0.1500 mm)",
"items": [
"Pad 6 [/SW] of U2 on F.Cu",
"Pad 7 [unconnected-(U2-BOOT-Pad7)] of U2 on F.Cu"
],
"severity": "error",
"type": "clearance"
},
{
"description": "Clearance violation ( clearance 0.2000 mm; actual 0.1250 mm)",
"items": [
"Pad 8 [/5V_VCC] of U2 on F.Cu",
"Pad 9 [+5V] of U2 on F.Cu"
],
"severity": "error",
"type": "clearance"
},
{
"description": "Clearance violation ( clearance 0.2000 mm; actual 0.1250 mm)",
"items": [
"Pad 9 [+5V] of U2 on F.Cu",
"Pad 10 [GND] of U2 on F.Cu"
],
"severity": "error",
"type": "clearance"
}
],
"kicadVersion": "10.0.5",
"source": "esc-g431-fable-placed-planes.kicad_pcb",
"unconnected": 7,
"warnings": 66
},
"unconnected": 7,
"warnings": 66
},
"dryRun": false,
"dsn": {
"rules": {
"classes": [],
"clearance": 0.2,
"source": "kicad-defaults",
"trackWidth": 0.25,
"viaDrill": 0.4,
"viaSize": 0.8
},
"stats": {
"approximatedPads": [
"U2.1 (roundrect)",
"U2.2 (roundrect)",
"U2.3 (roundrect)",
"U2.4 (roundrect)",
"U2.5 (roundrect)",
"U2.6 (roundrect)",
"U2.7 (roundrect)",
"U2.8 (roundrect)",
"U2.9 (roundrect)",
"U2.10 (custom)",
"U2.11 (roundrect)",
"C7.1 (roundrect)",
"C7.2 (roundrect)",
"R26.1 (roundrect)",
"R26.2 (roundrect)",
"Q2.1 (custom)",
"Q2.5 (custom)",
"C8.1 (roundrect)",
"C8.2 (roundrect)",
"C14.1 (roundrect)",
"C14.2 (roundrect)",
"C12.1 (roundrect)",
"C12.2 (roundrect)",
"R10.1 (roundrect)",
"R10.2 (roundrect)",
"R6.1 (roundrect)",
"R6.2 (roundrect)",
"R8.1 (roundrect)",
"R8.2 (roundrect)",
"C24.1 (roundrect)",
"C24.2 (roundrect)",
"C20.1 (roundrect)",
"C20.2 (roundrect)",
"C17.1 (roundrect)",
"C17.2 (roundrect)",
"C42.1 (roundrect)",
"C42.2 (roundrect)",
"R12.1 (roundrect)",
"R12.2 (roundrect)",
"Q5.1 (custom)",
"Q5.5 (custom)",
"FB1.1 (roundrect)",
"FB1.2 (roundrect)",
"R32.1 (roundrect)",
"R32.2 (roundrect)",
"Q6.1 (custom)",
"Q6.5 (custom)",
"C16.1 (roundrect)",
"C16.2 (roundrect)",
"C5.1 (roundrect)",
"C5.2 (roundrect)",
"C10.1 (roundrect)",
"C10.2 (roundrect)",
"U3.1 (roundrect)",
"U3.2 (roundrect)",
"U3.3 (roundrect)",
"U3.4 (roundrect)",
"U3.5 (roundrect)",
"C41.1 (roundrect)",
"C41.2 (roundrect)",
"D2.1 (roundrect)",
"D2.2 (roundrect)",
"R4.1 (roundrect)",
"R4.2 (roundrect)",
"R29.1 (roundrect)",
"R29.2 (roundrect)",
"R20.1 (roundrect)",
"R20.2 (roundrect)",
"C40.1 (roundrect)",
"C40.2 (roundrect)",
"C6.1 (roundrect)",
"C6.2 (roundrect)",
"R16.1 (roundrect)",
"R16.2 (roundrect)",
"C21.1 (roundrect)",
"C21.2 (roundrect)",
"R27.1 (roundrect)",
"R27.2 (roundrect)",
"R31.1 (roundrect)",
"R31.2 (roundrect)",
"Q4.1 (custom)",
"Q4.5 (custom)",
"U5.1 (roundrect)",
"U5.2 (roundrect)",
"U5.3 (roundrect)",
"U5.4 (roundrect)",
"U5.5 (roundrect)",
"U5.6 (roundrect)",
"U5.7 (roundrect)",
"U5.8 (roundrect)",
"U5.9 (roundrect)",
"U5.10 (roundrect)",
"U5.11 (roundrect)",
"U5.12 (roundrect)",
"U5.13 (roundrect)",
"U5.14 (roundrect)",
"U5.15 (roundrect)",
"U5.16 (roundrect)",
"U5.17 (roundrect)",
"U5.18 (roundrect)",
"U5.19 (roundrect)",
"U5.20 (roundrect)",
"U5.21 (roundrect)",
"U5.22 (roundrect)",
"U5.23 (roundrect)",
"U5.24 (roundrect)",
"U5.25 (roundrect)",
"U5.26 (roundrect)",
"U5.27 (roundrect)",
"U5.28 (roundrect)",
"U5.29 (roundrect)",
"U5.30 (roundrect)",
"U5.31 (roundrect)",
"U5.32 (roundrect)",
"U5.33 (roundrect)",
"U5.34 (roundrect)",
"U5.35 (roundrect)",
"U5.36 (roundrect)",
"U5.37 (roundrect)",
"U5.38 (roundrect)",
"U5.39 (roundrect)",
"U5.40 (roundrect)",
"U5.41 (roundrect)",
"U5.42 (roundrect)",
"U5.43 (roundrect)",
"U5.44 (roundrect)",
"U5.45 (roundrect)",
"U5.46 (roundrect)",
"U5.47 (roundrect)",
"U5.48 (roundrect)",
"C34.1 (roundrect)",
"C34.2 (roundrect)",
"C3.1 (roundrect)",
"C3.2 (roundrect)",
"C18.1 (roundrect)",
"C18.2 (roundrect)",
"Q3.1 (custom)",
"Q3.5 (custom)",
"Y1.1 (roundrect)",
"Y1.2 (roundrect)",
"Y1.3 (roundrect)",
"Y1.4 (roundrect)",
"C1.1 (roundrect)",
"C1.2 (roundrect)",
"C44.1 (roundrect)",
"C44.2 (roundrect)",
"R2.1 (roundrect)",
"R2.2 (roundrect)",
"C2.1 (roundrect)",
"C2.2 (roundrect)",
"C15.1 (roundrect)",
"C15.2 (roundrect)",
"C39.1 (roundrect)",
"C39.2 (roundrect)",
"D1.1 (roundrect)",
"D1.2 (roundrect)",
"Q1.1 (custom)",
"Q1.5 (custom)",
"C27.1 (roundrect)",
"C27.2 (roundrect)",
"LED1.1 (roundrect)",
"LED1.2 (roundrect)",
"R21.1 (roundrect)",
"R21.2 (roundrect)",
"C38.1 (roundrect)",
"C38.2 (roundrect)",
"C37.1 (roundrect)",
"C37.2 (roundrect)",
"C23.1 (roundrect)",
"C23.2 (roundrect)",
"U1.1 (roundrect)",
"U1.2 (custom)",
"U1.3 (roundrect)",
"R13.1 (roundrect)",
"R13.2 (roundrect)",
"R28.1 (roundrect)",
"R28.2 (roundrect)",
"C4.1 (roundrect)",
"C4.2 (roundrect)",
"C33.1 (roundrect)",
"C33.2 (roundrect)",
"R19.1 (roundrect)",
"R19.2 (roundrect)",
"C29.1 (roundrect)",
"C29.2 (roundrect)",
"R1.1 (roundrect)",
"R1.2 (roundrect)",
"R30.1 (roundrect)",
"R30.2 (roundrect)",
"R17.1 (roundrect)",
"R17.2 (roundrect)",
"C45.1 (roundrect)",
"C45.2 (roundrect)",
"R22.1 (roundrect)",
"R22.2 (roundrect)",
"C28.1 (roundrect)",
"C28.2 (roundrect)",
"C36.1 (roundrect)",
"C36.2 (roundrect)",
"R15.1 (roundrect)",
"R15.2 (roundrect)",
"C26.1 (roundrect)",
"C26.2 (roundrect)",
"C35.1 (roundrect)",
"C35.2 (roundrect)",
"R14.1 (roundrect)",
"R14.2 (roundrect)",
"C32.1 (roundrect)",
"C32.2 (roundrect)",
"R9.1 (roundrect)",
"R9.2 (roundrect)",
"R5.1 (roundrect)",
"R5.2 (roundrect)",
"C30.1 (roundrect)",
"C30.2 (roundrect)",
"R24.1 (roundrect)",
"R24.2 (roundrect)",
"C9.1 (roundrect)",
"C9.2 (roundrect)",
"R33.1 (roundrect)",
"R33.2 (roundrect)",
"C13.1 (roundrect)",
"C13.2 (roundrect)",
"C43.1 (roundrect)",
"C43.2 (roundrect)",
"R7.1 (roundrect)",
"R7.2 (roundrect)",
"LED3.1 (roundrect)",
"LED3.2 (roundrect)",
"C19.1 (roundrect)",
"C19.2 (roundrect)",
"R25.1 (roundrect)",
"R25.2 (roundrect)",
"LED2.1 (roundrect)",
"LED2.2 (roundrect)",
"C22.1 (roundrect)",
"C22.2 (roundrect)",
"R18.1 (roundrect)",
"R18.2 (roundrect)",
"R23.1 (roundrect)",
"R23.2 (roundrect)",
"C25.1 (roundrect)",
"C25.2 (roundrect)",
"C31.1 (roundrect)",
"C31.2 (roundrect)",
"R11.1 (roundrect)",
"R11.2 (roundrect)",
"C11.1 (roundrect)",
"C11.2 (roundrect)",
"U6.1 (roundrect)",
"U6.2 (roundrect)",
"U6.3 (roundrect)",
"U6.4 (roundrect)",
"U6.5 (roundrect)",
"U6.6 (roundrect)",
"R3.1 (roundrect)",
"R3.2 (roundrect)",
"R34.1 (roundrect)",
"R34.2 (roundrect)"
],
"boundaryPoints": 76,
"boundarySource": "Edge.Cuts",
"components": 149,
"existingVias": 0,
"existingWires": 0,
"keepouts": 0,
"layers": [
"F.Cu",
"In1.Cu",
"In2.Cu",
"B.Cu"
],
"nets": 82,
"notes": [],
"pins": 365,
"planes": 2,
"routedNets": [
"+12V",
"+3V3",
"+5V",
"+VBAT",
"/5V_EN",
"/5V_EXT",
"/5V_VCC",
"/BOOT0",
"/COMP1_INM_IO1_BEMF_B",
"/COMP1_INM_IO2_BEMF_C",
"/COMP2_INM_IO1_BEMF_A",
"/DRV_BSTA",
"/DRV_BSTB",
"/DRV_BSTC",
"/DRV_GHA",
"/DRV_GHB",
"/DRV_GHC",
"/DRV_GLA",
"/DRV_GLB",
"/DRV_GLC",
"/DRV_SHA",
"/DRV_SHB",
"/DRV_SHC",
"/E_STOP",
"/GHA",
"/GHB",
"/GHC",
"/GLA",
"/GLB",
"/GLC",
"/HSE_IN",
"/HSE_OUT",
"/IBAT_SENSE",
"/MCU_LED",
"/NEUTRAL",
"/PB12",
"/PB6",
"/PB7",
"/RPM",
"/SW",
"/SWCLK",
"/SWDIO",
"/TIM15_CH1_DSHOT",
"/TIM1_CH1N_INLC",
"/TIM1_CH1_INHC",
"/TIM1_CH2N_INLB",
"/TIM1_CH2_INHB",
"/TIM1_CH3N_INLA",
"/TIM1_CH3_INHA",
"/USART1_RX",
"/USART1_TX",
"/VBAT_SENSE",
"/VDDA",
"/nRST",
"GND",
"GND_OUT",
"Net-(LED1-A)",
"Net-(LED2-A)",
"Net-(LED3-A)"
],
"unknownNets": []
},
"viaPadstack": "Via[0-1]_800:400_um"
},
"durationMs": 27,
"elapsedMs": 0,
"engine": "freerouting",
"error": "",
"finishedAgoSec": 4.0,
"freerouting": {
"args": [
"--gui.enabled=false",
"--usage_and_diagnostic_data.disable_analytics=true",
"-de",
"C:/Users/john/AppData/Local/Temp/adom-freerouting-34084-2e3e6a8b-6e0e-4fd6-bbcc-fc12c420706e/esc-g431-fable-placed-planes.dsn",
"-do",
"C:/Users/john/AppData/Local/Temp/adom-freerouting-34084-2e3e6a8b-6e0e-4fd6-bbcc-fc12c420706e/esc-g431-fable-placed-planes.ses",
"-mp",
"40"
],
"exe": "C:/Users/john/AppData/Local/Adom Bridge/freerouting/freerouting/freerouting.exe",
"exitCode": 0,
"maxPasses": 40,
"passes": 18,
"seconds": 229.51,
"stdoutTail": [
"2026-09-12 18:34:41.770 INFO [6B1EFF\\3947B2] Fanout pass #7 on board '2d0551efd1837b3d8df1a28bd335e81b' completed in 3.77 seconds with 13 SMD pins fanouted, 4 not routed, 0 insert errors, +0 extra vias (0 SMD pins still to check in pass, ripup costs=700).",
"2026-09-12 18:34:45.593 INFO [6B1EFF\\3947B2] Fanout pass #8 on board '5a1a73241e1393a21deaaac6904677e9' completed in 3.80 seconds with 13 SMD pins fanouted, 4 not routed, 0 insert errors, +0 extra vias (0 SMD pins still to check in pass, ripup costs=800).",
"2026-09-12 18:34:45.593 INFO Fanout stopped after 8 passes: no progress for 3 consecutive passes.",
"2026-09-12 18:34:46.015 INFO [6B1EFF\\3947B2] Fanout stage completed: started with 313 total SMD pins, completed in 53.45 seconds, escaped pins: 303/313 (96.8%), using 51.30 total CPU seconds, 321.74 GB total allocated, and 570.1 MB peak heap usage.",
"2026-09-12 18:34:46.047 INFO [6B1EFF\\3947B2] Auto-routing stage started on board '5a1a73241e1393a21deaaac6904677e9' for 82 unrouted items.",
"2026-09-12 18:35:15.024 INFO [6B1EFF\\3947B2] Auto-routing pass #1 on board '5a1a73241e1393a21deaaac6904677e9' was completed in 28.05 seconds with score 950.17 (13 unrouted and 6 violations), using 79.02 CPU seconds and the job allocated 473.31 GB of memory so far.",
"2026-09-12 18:35:32.616 INFO [6B1EFF\\3947B2] Auto-routing pass #2 on board 'f8b3fed5ddfb47031c854e9093a4f4c3' was completed in 16.52 seconds with score 967.71 (8 unrouted and 6 violations), using 96.38 CPU seconds and the job allocated 554.94 GB of memory so far.",
"2026-09-12 18:35:41.001 INFO [6B1EFF\\3947B2] Auto-routing pass #3 on board 'f111447f1e2fbc207c42f3193b5d60e7' was completed in 7.32 seconds with score 978.24 (5 unrouted and 6 violations), using 104.14 CPU seconds and the job allocated 594.87 GB of memory so far.",
"2026-09-12 18:35:44.792 INFO [6B1EFF\\3947B2] Auto-routing pass #4 on board '25d95e7523ca029f2825074a4ca55df0' was completed in 2.71 seconds with score 981.74 (4 unrouted and 6 violations), using 108.00 CPU seconds and the job allocated 619.11 GB of memory so far.",
"2026-09-12 18:35:48.598 INFO [6B1EFF\\3947B2] Auto-routing pass #5 on board '07cb1d9d02a187b33b5910b2a1be51b4' was completed in 2.67 seconds with score 985.25 (3 unrouted and 6 violations), using 111.81 CPU seconds and the job allocated 642.84 GB of memory so far.",
"2026-09-12 18:35:53.621 INFO [6B1EFF\\3947B2] Auto-routing pass #6 on board 'a37a349279dd25410dc71871a98bf747' was completed in 3.93 seconds with score 985.25 (3 unrouted and 6 violations), using 116.70 CPU seconds and the job allocated 669.01 GB of memory so far.",
"2026-09-12 18:35:56.888 INFO [6B1EFF\\3947B2] Auto-routing pass #7 on board 'caafaa94097ad64e17103b754b28b22b' was completed in 2.15 seconds with score 985.25 (3 unrouted and 6 violations), using 119.64 CPU seconds and the job allocated 687.58 GB of memory so far.",
"2026-09-12 18:36:00.705 INFO [6B1EFF\\3947B2] Auto-routing pass #8 on board 'a37a349279dd25410dc71871a98bf747' was completed in 0.00 seconds with score 985.25 (3 unrouted and 6 violations), using 123.44 CPU seconds and the job allocated 711.93 GB of memory so far.",
"2026-09-12 18:36:05.854 INFO [6B1EFF\\3947B2] Auto-routing pass #9 on board 'a37a349279dd25410dc71871a98bf747' was completed in 4.59 seconds with score 985.25 (3 unrouted and 6 violations), using 128.30 CPU seconds and the job allocated 737.24 GB of memory so far.",
"2026-09-12 18:36:08.973 INFO [6B1EFF\\3947B2] Auto-routing pass #10 on board 'e971b93918b0e04a64257e30ac57afc3' was completed in 2.07 seconds with score 985.25 (3 unrouted and 6 violations), using 131.17 CPU seconds and the job allocated 756.67 GB of memory so far.",
"2026-09-12 18:36:14.686 INFO [6B1EFF\\3947B2] Auto-routing pass #11 on board '6941bda038daf75aef0ddb88b00f834a' was completed in 4.11 seconds with score 985.25 (3 unrouted and 6 violations), using 136.95 CPU seconds and the job allocated 789.54 GB of memory so far.",
"2026-09-12 18:36:18.407 INFO [6B1EFF\\3947B2] Auto-routing pass #12 on board 'a37a349279dd25410dc71871a98bf747' was completed in 0.00 seconds with score 985.25 (3 unrouted and 6 violations), using 139.83 CPU seconds and the job allocated 808.75 GB of memory so far.",
"2026-09-12 18:36:23.690 INFO [6B1EFF\\3947B2] Auto-routing pass #13 on board 'a37a349279dd25410dc71871a98bf747' was completed in 4.72 seconds with score 985.25 (3 unrouted and 6 violations), using 145.67 CPU seconds and the job allocated 840.07 GB of memory so far.",
"2026-09-12 18:36:26.856 INFO [6B1EFF\\3947B2] Auto-routing pass #14 on board '5dcfa9a9abf86c6404a4ea8e73b31425' was completed in 2.06 seconds with score 985.25 (3 unrouted and 6 violations), using 148.56 CPU seconds and the job allocated 859.27 GB of memory so far.",
"2026-09-12 18:36:30.039 INFO [6B1EFF\\3947B2] Auto-routing pass #15 on board 'b7ae1d604f9974a4d7dd29aff8e0575a' was completed in 2.12 seconds with score 981.74 (4 unrouted and 6 violations), using 151.38 CPU seconds and the job allocated 878.62 GB of memory so far.",
"2026-09-12 18:36:33.380 INFO [6B1EFF\\3947B2] Auto-routing pass #16 on board '661782174cf300a66b9aa951fbeacfa7' was completed in 2.25 seconds with score 985.25 (3 unrouted and 6 violations), using 154.33 CPU seconds and the job allocated 897.37 GB of memory so far.",
"2026-09-12 18:36:36.562 INFO [6B1EFF\\3947B2] Auto-routing pass #17 on board 'ec937c1ab0ca2ce8931f282834c32069' was completed in 2.10 seconds with score 985.25 (3 unrouted and 6 violations), using 157.27 CPU seconds and the job allocated 916.34 GB of memory so far.",
"2026-09-12 18:36:39.767 INFO [6B1EFF\\3947B2] Auto-routing pass #18 on board '23d446adfa275fae35e864ebfc09a40a' was completed in 2.16 seconds with score 985.25 (3 unrouted and 6 violations), using 161.20 CPU seconds and the job allocated 942.10 GB of memory so far.",
"2026-09-12 18:36:39.832 INFO [6B1EFF\\3947B2] The router's best score (985.25) has not improved by more than 0.5 points since pass #8. Stopping the auto-router after 18 passes (3 items still unconnected).",
"The following connections could not be routed -- please review your design (e.g. check pad clearances, trace width rules, and available routing space):",
" Net 'GND' (1 unrouted connection):",
" - via -> U4-8",
" Net '/BOOT0' (1 unrouted connection):",
" - U5-45 -> TP19-1",
" Net '/PB12' (1 unrouted connection):",
" - via -> via",
"2026-09-12 18:36:41.916 INFO [6B1EFF\\3947B2] Auto-routing stage completed: started with 270 unrouted nets, completed in 168.92 seconds, final score: 985.25 (3 unrouted and 6 violations), using 163.17 total CPU seconds, 954.57 GB total allocated, and 1064.0 MB peak heap usage.",
"2026-09-12 18:36:42.442 INFO [6B1EFF\\3947B2] Optimization stage started on board 'df23f12b4700ad920cf1959a881bf7dd' with score 981.74 (4 unrouted and 6 violations).",
"2026-09-12 18:37:37.601 INFO [6B1EFF\\3947B2] Stopping optimization pass #1 early after 50 consecutive items could not be improved.",
"2026-09-12 18:37:38.146 INFO [6B1EFF\\3947B2] Optimizer pass #1 on board 'febc40e1df34e3243b7312ca4d6a59a7' was completed in 54.08 seconds with the score of 981.74 (4 unrouted and 6 violations).",
"2026-09-12 18:37:38.681 INFO [6B1EFF\\3947B2] Stopping optimizer because the improvement in this pass (0.0000%) is below the threshold (1.00%).",
"2026-09-12 18:37:39.204 INFO [6B1EFF\\3947B2] Optimization stage completed: started with score 981.74 (4 unrouted and 6 violations), completed in 56.24 seconds, final score: 981.74 (4 unrouted and 6 violations), using 54.16 total CPU seconds, 353.24 GB total allocated, and 1042.0 MB peak heap usage.",
"2026-09-12 18:37:39.225 INFO [6B1EFF\\3947B2] Job '6B1EFF\\3947B2' finished with state: COMPLETED (elapsed: 3 minutes 46.78 seconds, finished at UTC: 2026-09-12T23:37:39.224186300Z).",
"2026-09-12 18:37:39.398 INFO Saving output file 'C:\\Users\\john\\AppData\\Local\\Temp\\adom-freerouting-34084-2e3e6a8b-6e0e-4fd6-bbcc-fc12c420706e\\esc-g431-fable-placed-planes.ses' (SES)...",
"2026-09-12 18:37:39.401 INFO Successfully saved output file 'C:\\Users\\john\\AppData\\Local\\Temp\\adom-freerouting-34084-2e3e6a8b-6e0e-4fd6-bbcc-fc12c420706e\\esc-g431-fable-placed-planes.ses' (121602 bytes)."
],
"threads": null,
"timedOut": false,
"unrouted": 4,
"version": "2.4.1",
"violations": 6
},
"itemIds": 1356,
"job": "autoroute-2-bd2b823e",
"jobElapsedSec": 238.0,
"keptForSec": 3600,
"mechanism": "ipc",
"mutated": true,
"netsCommitted": [
"GND",
"+3V3",
"+12V",
"+5V",
"+VBAT",
"/5V_EN",
"/5V_EXT",
"/5V_VCC",
"/BOOT0",
"/COMP1_INM_IO1_BEMF_B",
"/COMP1_INM_IO2_BEMF_C",
"/COMP2_INM_IO1_BEMF_A",
"/DRV_BSTA",
"/DRV_BSTB",
"/DRV_BSTC",
"/DRV_GHA",
"/DRV_GHB",
"/DRV_GHC",
"/DRV_GLA",
"/DRV_GLB",
"/DRV_GLC",
"/DRV_SHA",
"/DRV_SHB",
"/DRV_SHC",
"/E_STOP",
"/GHA",
"/GHB",
"/GHC",
"/GLA",
"/GLB",
"/GLC",
"/HSE_IN",
"/HSE_OUT",
"/IBAT_SENSE",
"/MCU_LED",
"/NEUTRAL",
"/PB12",
"/PB6",
"/PB7",
"/RPM",
"/SW",
"/SWCLK",
"/SWDIO",
"/TIM15_CH1_DSHOT",
"/TIM1_CH1N_INLC",
"/TIM1_CH1_INHC",
"/TIM1_CH2N_INLB",
"/TIM1_CH2_INHB",
"/TIM1_CH3N_INLA",
"/TIM1_CH3_INHA",
"/USART1_RX",
"/USART1_TX",
"/VBAT_SENSE",
"/VDDA",
"/nRST",
"GND_OUT",
"Net-(LED1-A)",
"Net-(LED2-A)",
"Net-(LED3-A)"
],
"output": "",
"revision": "837a0ffd9857c402fc6dc0f9eeaeccbcd39e4656b8247bc3e691153fceadfe45",
"routed": {
"netCount": 59,
"nets": [
"GND",
"+3V3",
"+12V",
"+5V",
"+VBAT",
"/5V_EN",
"/5V_EXT",
"/5V_VCC",
"/BOOT0",
"/COMP1_INM_IO1_BEMF_B",
"/COMP1_INM_IO2_BEMF_C",
"/COMP2_INM_IO1_BEMF_A",
"/DRV_BSTA",
"/DRV_BSTB",
"/DRV_BSTC",
"/DRV_GHA",
"/DRV_GHB",
"/DRV_GHC",
"/DRV_GLA",
"/DRV_GLB",
"/DRV_GLC",
"/DRV_SHA",
"/DRV_SHB",
"/DRV_SHC",
"/E_STOP",
"/GHA",
"/GHB",
"/GHC",
"/GLA",
"/GLB",
"/GLC",
"/HSE_IN",
"/HSE_OUT",
"/IBAT_SENSE",
"/MCU_LED",
"/NEUTRAL",
"/PB12",
"/PB6",
"/PB7",
"/RPM",
"/SW",
"/SWCLK",
"/SWDIO",
"/TIM15_CH1_DSHOT",
"/TIM1_CH1N_INLC",
"/TIM1_CH1_INHC",
"/TIM1_CH2N_INLB",
"/TIM1_CH2_INHB",
"/TIM1_CH3N_INLA",
"/TIM1_CH3_INHA",
"/USART1_RX",
"/USART1_TX",
"/VBAT_SENSE",
"/VDDA",
"/nRST",
"GND_OUT",
"Net-(LED1-A)",
"Net-(LED2-A)",
"Net-(LED3-A)"
],
"perNet": [
{
"net": "GND",
"segments": 272,
"vias": 18
},
{
"net": "+3V3",
"segments": 69,
"vias": 8
},
{
"net": "+12V",
"segments": 24,
"vias": 3
},
{
"net": "+5V",
"segments": 35,
"vias": 3
},
{
"net": "+VBAT",
"segments": 107,
"vias": 8
},
{
"net": "/5V_EN",
"segments": 12,
"vias": 1
},
{
"net": "/5V_EXT",
"segments": 5,
"vias": 1
},
{
"net": "/5V_VCC",
"segments": 2,
"vias": 0
},
{
"net": "/BOOT0",
"segments": 13,
"vias": 2
},
{
"net": "/COMP1_INM_IO1_BEMF_B",
"segments": 28,
"vias": 5
},
{
"net": "/COMP1_INM_IO2_BEMF_C",
"segments": 31,
"vias": 6
},
{
"net": "/COMP2_INM_IO1_BEMF_A",
"segments": 28,
"vias": 5
},
{
"net": "/DRV_BSTA",
"segments": 3,
"vias": 0
},
{
"net": "/DRV_BSTB",
"segments": 12,
"vias": 2
},
{
"net": "/DRV_BSTC",
"segments": 5,
"vias": 0
},
{
"net": "/DRV_GHA",
"segments": 12,
"vias": 0
},
{
"net": "/DRV_GHB",
"segments": 6,
"vias": 2
},
{
"net": "/DRV_GHC",
"segments": 5,
"vias": 0
},
{
"net": "/DRV_GLA",
"segments": 4,
"vias": 0
},
{
"net": "/DRV_GLB",
"segments": 4,
"vias": 0
},
{
"net": "/DRV_GLC",
"segments": 4,
"vias": 0
},
{
"net": "/DRV_SHA",
"segments": 29,
"vias": 2
},
{
"net": "/DRV_SHB",
"segments": 38,
"vias": 2
},
{
"net": "/DRV_SHC",
"segments": 29,
"vias": 4
},
{
"net": "/E_STOP",
"segments": 3,
"vias": 0
},
{
"net": "/GHA",
"segments": 13,
"vias": 2
},
{
"net": "/GHB",
"segments": 7,
"vias": 0
},
{
"net": "/GHC",
"segments": 18,
"vias": 2
},
{
"net": "/GLA",
"segments": 9,
"vias": 2
},
{
"net": "/GLB",
"segments": 11,
"vias": 2
},
{
"net": "/GLC",
"segments": 12,
"vias": 2
},
{
"net": "/HSE_IN",
"segments": 16,
"vias": 3
},
{
"net": "/HSE_OUT",
"segments": 26,
"vias": 3
},
{
"net": "/IBAT_SENSE",
"segments": 10,
"vias": 2
},
{
"net": "/MCU_LED",
"segments": 8,
"vias": 2
},
{
"net": "/NEUTRAL",
"segments": 26,
"vias": 3
},
{
"net": "/PB12",
"segments": 29,
"vias": 4
},
{
"net": "/PB6",
"segments": 5,
"vias": 2
},
{
"net": "/PB7",
"segments": 2,
"vias": 1
},
{
"net": "/RPM",
"segments": 5,
"vias": 2
},
{
"net": "/SW",
"segments": 4,
"vias": 0
},
{
"net": "/SWCLK",
"segments": 17,
"vias": 1
},
{
"net": "/SWDIO",
"segments": 20,
"vias": 2
},
{
"net": "/TIM15_CH1_DSHOT",
"segments": 9,
"vias": 1
},
{
"net": "/TIM1_CH1N_INLC",
"segments": 12,
"vias": 2
},
{
"net": "/TIM1_CH1_INHC",
"segments": 12,
"vias": 3
},
{
"net": "/TIM1_CH2N_INLB",
"segments": 9,
"vias": 2
},
{
"net": "/TIM1_CH2_INHB",
"segments": 12,
"vias": 2
},
{
"net": "/TIM1_CH3N_INLA",
"segments": 7,
"vias": 2
},
{
"net": "/TIM1_CH3_INHA",
"segments": 15,
"vias": 3
},
{
"net": "/USART1_RX",
"segments": 13,
"vias": 1
},
{
"net": "/USART1_TX",
"segments": 11,
"vias": 1
},
{
"net": "/VBAT_SENSE",
"segments": 17,
"vias": 3
},
{
"net": "/VDDA",
"segments": 26,
"vias": 2
},
{
"net": "/nRST",
"segments": 26,
"vias": 3
},
{
"net": "GND_OUT",
"segments": 11,
"vias": 2
},
{
"net": "Net-(LED1-A)",
"segments": 3,
"vias": 1
},
{
"net": "Net-(LED2-A)",
"segments": 8,
"vias": 2
},
{
"net": "Net-(LED3-A)",
"segments": 8,
"vias": 2
}
],
"segments": 1217,
"skippedExisting": 0,
"unroutedNets": [],
"vias": 139
},
"saved": false,
"schemaVersion": 1,
"source": "live-editor",
"startedAt": 1789256030.313623,
"status": "done",
"statusVerb": "kicad_status",
"success": true,
"timeoutSeconds": 900,
"undoSteps": 59
}