Fusion - the Fusion 360 Bridge
Public Made by Adomby adom
Drive Autodesk Fusion 360 from the cloud via Adom Bridge: component libraries, IPC package generation, board layout, exports (STEP/Gerbers/BOM/CPL), fast APS cloud search, and parametric modeling.
master
Fusion 24-net crossover
This is the Fusion counterpart of the second KiCad Astra video. It uses a constructed test fixture and freshly calculated waypoints, with no Freerouting or other external router. KiCad files are read as a reference and remain intact.
For input i = 0..23, calculate j = (7*i) mod 24, row y = 52 + 2.54*i
and column x = 65 + 2.54*j mm. J1 at x=45 feeds the selected J2 pad at y=35
and branches to J3 at y=125. Top copper carries horizontal rows; bottom copper
carries vertical columns. Two vias per net connect the top SMD endpoints and
bottom routing. The branch's J3 pad is through-hole. Width is 0.30 mm, via
outer diameter 0.60 mm, drill 0.30 mm; pads are 1.50 mm with 2.54 mm pitch.
Fusion's positive Y points upward, so this exact numeric geometry appears
vertically flipped relative to KiCad's canvas.
make_crossbar.py authors the separate unrouted Fusion/EAGLE board and plan.
record_crossbar.py reads the active board, dry-runs all net plans, records the
actual Fusion window, and commits each trace/via with consecutive revisions.
It verifies the copper after every call and invokes native DRC after each net.
Timestamps and every response are retained in take-01/calls.json.
The bridge extension in 1.10.0-dev.routing.2 deduplicates identical planned
vias shared by multiple branches of a net. Its regression test adds all 24
nets to the geometry model in sequence and checks 120 segments and 48 vias.
This conservative preflight is not native DRC; the live result is recorded
separately and intermediate boards can still have airwires.
python3 demo/routing/crossbar/make_crossbar.py
python3 -m unittest discover -s tests -p test_routing.py -v
# Stage/open the new board and resolve the live Fusion HWND first.
python3 demo/routing/crossbar/record_crossbar.py --hwnd <hwnd> \
--take demo/routing/crossbar/new-take
Measured live result — AdomLapper, 2026-09-05
The native run completed with 24 connected nets, 72 pads, 120 trace segments
and 48 through vias. Autodesk DRC reported zero errors, zero warnings and zero
airwires. All 168 mutations passed copper read-back; the revision was updated
after every edit. All 24 net-level native DRC checks reported no physical
violations. take-01/final.json contains the measured result. The complete
request/response log is preserved locally as calls.json and on the branch as
calls.json.gz. The initial six-net demo and all KiCad files were preserved.
Routed .brd and .fbrd exports are in take-01/ and on Windows under
C:/Users/john/Documents/fusion-crossbar-dev/. Fusion remains open on the
completed board. The development runtime remains pinned at
1.10.0-dev.routing.2; the previous executable was backed up (see install.json).
The raw native AB recording is preserved locally under take-01/window-*.mp4.
It contains 5,800 frames (193.333 seconds at 30 fps); the recorder reports
206.642 seconds of wall time. These are separate measurements. The edited
video accelerates the retained recorded frames at 3x, not a claim of elapsed
end-to-end routing time. find_action.py detects copper changes within the
board, trims idle intervals with handles around changes, and retains the final
DRC view. Its boundaries are visually reviewed before delivery.
Delivered video
fusion-crossbar-24-3x.mp4 is 41.667 seconds, H.264/yuv420p, 1920x1080 at
30 fps, with no audio. It retains 3,299 source frames at 3x and adds a
five-second final hold. Roughly 83.37 seconds of recorded waits were omitted.
The persistent speed/edit labels and captions explain actual Fusion verbs,
the formula, layer assignment and measured native DRC. The .ass and
.edit.json contain caption timing and exact selected source frame ranges.
Full decode, constant source frame rate, output dimensions, duration and the
168-edit revision chain passed verification. Initial, sequential, transition
and final frames were visually inspected. See video-verification.json.
Delivered to Windows and verified visibly playing in Media Player:
C:/Users/john/Documents/Adom Routing Demos/fusion-crossbar-24-3x.mp4.
python3 demo/routing/crossbar/find_action.py <raw-window-mp4>
python3 demo/routing/crossbar/render_crossbar.py <take-directory>
The edit uses frame-index ranges after verifying constant 30 fps. This avoids floating-point boundary differences between FFprobe timestamps and FFmpeg's select expression. A variable-rate recording requires timestamp-aware editing.
# Fusion 24-net crossover
This is the Fusion counterpart of the second KiCad Astra video. It uses a
constructed test fixture and freshly calculated waypoints, with no Freerouting
or other external router. KiCad files are read as a reference and remain intact.
For input `i = 0..23`, calculate `j = (7*i) mod 24`, row `y = 52 + 2.54*i`
and column `x = 65 + 2.54*j` mm. J1 at x=45 feeds the selected J2 pad at y=35
and branches to J3 at y=125. Top copper carries horizontal rows; bottom copper
carries vertical columns. Two vias per net connect the top SMD endpoints and
bottom routing. The branch's J3 pad is through-hole. Width is 0.30 mm, via
outer diameter 0.60 mm, drill 0.30 mm; pads are 1.50 mm with 2.54 mm pitch.
Fusion's positive Y points upward, so this exact numeric geometry appears
vertically flipped relative to KiCad's canvas.
`make_crossbar.py` authors the separate unrouted Fusion/EAGLE board and plan.
`record_crossbar.py` reads the active board, dry-runs all net plans, records the
actual Fusion window, and commits each trace/via with consecutive revisions.
It verifies the copper after every call and invokes native DRC after each net.
Timestamps and every response are retained in `take-01/calls.json`.
The bridge extension in `1.10.0-dev.routing.2` deduplicates identical planned
vias shared by multiple branches of a net. Its regression test adds all 24
nets to the geometry model in sequence and checks 120 segments and 48 vias.
This conservative preflight is not native DRC; the live result is recorded
separately and intermediate boards can still have airwires.
```sh
python3 demo/routing/crossbar/make_crossbar.py
python3 -m unittest discover -s tests -p test_routing.py -v
# Stage/open the new board and resolve the live Fusion HWND first.
python3 demo/routing/crossbar/record_crossbar.py --hwnd <hwnd> \
--take demo/routing/crossbar/new-take
```
## Measured live result — AdomLapper, 2026-09-05
The native run completed with 24 connected nets, 72 pads, 120 trace segments
and 48 through vias. Autodesk DRC reported zero errors, zero warnings and zero
airwires. All 168 mutations passed copper read-back; the revision was updated
after every edit. All 24 net-level native DRC checks reported no physical
violations. `take-01/final.json` contains the measured result. The complete
request/response log is preserved locally as `calls.json` and on the branch as
`calls.json.gz`. The initial six-net demo and all KiCad files were preserved.
Routed `.brd` and `.fbrd` exports are in `take-01/` and on Windows under
`C:/Users/john/Documents/fusion-crossbar-dev/`. Fusion remains open on the
completed board. The development runtime remains pinned at
`1.10.0-dev.routing.2`; the previous executable was backed up (see `install.json`).
The raw native AB recording is preserved locally under `take-01/window-*.mp4`.
It contains 5,800 frames (193.333 seconds at 30 fps); the recorder reports
206.642 seconds of wall time. These are separate measurements. The edited
video accelerates the retained recorded frames at 3x, not a claim of elapsed
end-to-end routing time. `find_action.py` detects copper changes within the
board, trims idle intervals with handles around changes, and retains the final
DRC view. Its boundaries are visually reviewed before delivery.
## Delivered video
`fusion-crossbar-24-3x.mp4` is 41.667 seconds, H.264/yuv420p, 1920x1080 at
30 fps, with no audio. It retains 3,299 source frames at 3x and adds a
five-second final hold. Roughly 83.37 seconds of recorded waits were omitted.
The persistent speed/edit labels and captions explain actual Fusion verbs,
the formula, layer assignment and measured native DRC. The `.ass` and
`.edit.json` contain caption timing and exact selected source frame ranges.
Full decode, constant source frame rate, output dimensions, duration and the
168-edit revision chain passed verification. Initial, sequential, transition
and final frames were visually inspected. See `video-verification.json`.
Delivered to Windows and verified visibly playing in Media Player:
`C:/Users/john/Documents/Adom Routing Demos/fusion-crossbar-24-3x.mp4`.
```sh
python3 demo/routing/crossbar/find_action.py <raw-window-mp4>
python3 demo/routing/crossbar/render_crossbar.py <take-directory>
```
The edit uses frame-index ranges after verifying constant 30 fps. This avoids
floating-point boundary differences between FFprobe timestamps and FFmpeg's
select expression. A variable-rate recording requires timestamp-aware editing.