app
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.
← Commit history
v1.5.13: rich teaching hints on fusion_make_3d_package (next/expect/speedup/pitfalls) + skill speedups section
6 files changed
+45−13
BRIDGE_VERSION+1−1@@ -1 +1 @@-1.5.12+1.5.13
CHANGELOG.md+8@@ -3,6 +3,14 @@ All notable changes to the Adom Desktop Fusion 360 bridge, newest first. Canonical: https://wiki.adom.inc/adom/adom-desktop-fusion-bridge · GitHub backup: `adom-inc/adom-desktop-fusion-bridge` +## 1.5.13 - 2026-06-29++- **Rich teaching hints on `fusion_make_3d_package`:** its `_hint` now spells out NEXT step (the exact+ binding markup), what to EXPECT (check_dialogs==0, footprint+chip preview, pad alignment), the+ SPEEDUP (batch per part -> hand-merge all -> open once), and the PITFALLS (needs Fusion running; a+ raw STEP renders nothing; never FINISH the Package3D generator). Skill gained a matching+ "Speedups + what to expect" section.+ ## 1.5.12 - 2026-06-29 - **`fusion_make_3d_package` now produces a PROPER component package (footprint + chip).** It opens the
adom-bridge-fusion-manifest.json+5−5@@ -1,13 +1,13 @@ { "manifest_version": 1, "name": "fusion360",- "version": "1.5.12",- "url": "https://wiki.adom.inc/download/adom/adom-desktop-fusion-bridge/1.5.12/adom-bridge-fusion-v1.5.12.zip",- "sha256": "387a80c684ebe345f3ad10175a45eeba733a1db7a092809e21a1150d7147cfcf",- "size": 271269,+ "version": "1.5.13",+ "url": "https://wiki.adom.inc/download/adom/adom-desktop-fusion-bridge/1.5.13/adom-bridge-fusion-v1.5.13.zip",+ "sha256": "00d3132c3081debd63031f442f84b56fc1b591477d8e3a44ef551ef3a0fee9f8",+ "size": 272294, "verbPrefixes": [ "fusion_" ], "healthEndpoint": "/status",- "released_at": "2026-06-29T14:54:10Z"+ "released_at": "2026-06-29T14:58:39Z" }
bridge.json+1−1@@ -2,7 +2,7 @@ "manifest_version": 1, "name": "fusion360", "displayName": "Autodesk Fusion 360",- "version": "1.5.12",+ "version": "1.5.13", "description": "Drive Autodesk Fusion 360 from the cloud: launch Fusion, electronics board layout, design rules, exports (STEP/IGES/STL/3MF/USDZ/OBJ/DXF/DWG/Gerbers/BOM/CPL), fast APS server-indexed cloud search plus browse/recent/file-info/versions, cloud file download/upload and folder creation, and in-app parametric modeling (fusion_run_modeling_script). Never-charge: APS calls are capped to the free tier.", "homepage": "https://github.com/adom-inc/adom-desktop-fusion-bridge", "author": "Adom Inc.",
server.py+16−6@@ -1308,12 +1308,22 @@ def _orchestrate_make_3d_package(args: dict) -> dict: "dims_mm": dims, "f3d": f3d_path, "_hint": (- "RENDERING 3D-package urn created with NO GUI dialogs. Hand-write it into the library EAGLE "- "XML: add a <package3d name=\"PKG\" urn=\"\" wip_urn=\"" + wip_urn + "\" locally_modified=\"yes\" "- "type=\"model\"> (with <packageinstances><packageinstance name=\"PKG\"/></packageinstances>) into "- "<packages3d> between </packages> and <symbols>, and a <package3dinstances><package3dinstance "- "package3d_urn=\"" + wip_urn + "\"/></package3dinstances> inside the device after </connects>. Then "- "fusion_open_lbr -> it renders. See the fusion-multipart-libraries skill."+ "DONE - a PROPER component 3D package (FOOTPRINT + chip, aligned) created with NO GUI dialogs. "+ "NEXT: hand-write this wip_urn into the library's EAGLE XML - a <package3d name=\"PKG\" urn=\"\" "+ "wip_urn=\"" + wip_urn + "\" locally_modified=\"yes\" type=\"model\"> (with <packageinstances>"+ "<packageinstance name=\"PKG\"/></packageinstances>) inside <packages3d> (between </packages> and "+ "<symbols>), PLUS <package3dinstances><package3dinstance package3d_urn=\"" + wip_urn + "\"/>"+ "</package3dinstances> inside the device after </connects>. Then fusion_open_lbr the merged .lbr. "+ "EXPECT: fusion_check_dialogs == 0 (no broken-ref), the device 3D preview shows footprint + chip "+ "(NOT 'Thumbnail download failed'), and opening the f3d shows the chip's pads landing on the "+ "footprint pads. "+ "SPEEDUP: for a many-part library, call this verb once per part, collect the urns, hand-merge ALL "+ "bindings in ONE pass, then fusion_open_lbr ONCE (don't open/save per part). "+ "PITFALLS: needs Fusion running (after a bridge_install respawn it can transiently report "+ "'not running' - fusion_start, then retry); a RAW STEP upload binds but renders NOTHING "+ "('Thumbnail download failed') so always go through this verb (it makes an f3d); NEVER FINISH the "+ "Package3D generator (Package3DStop) - its Save dialog + two opaque CEF modals are unbeatable, "+ "this verb saveAs-es instead. Full recipe: the fusion-multipart-libraries skill." ), }
skills/fusion-multipart-libraries/SKILL.md+14@@ -73,6 +73,20 @@ aligned, so the 3D viewer can verify the chip's pads land on the footprint pads. Verify success: open the merged `.lbr`, `fusion_check_dialogs` returns 0 (no broken-ref), and each device's lower-right 3D preview shows the real chip (NOT "Thumbnail download failed"). +## Speedups + what to expect (so you go fast)++- **Batch it.** Call `fusion_make_3d_package` once per part, collect the urns, hand-merge ALL bindings+ into the combined `.lbr` in ONE pass, then `fusion_open_lbr` ONCE. Do NOT open/save the library per+ part - it is slow and Fusion can reset the session between calls.+- **What success looks like:** `fusion_check_dialogs` == 0, every device's 3D preview shows footprint ++ chip, and opening an f3d shows the chip's pads landing on the footprint pads.+- **Fusion resets between calls** on long runs (and after a `bridge_install` respawn it can briefly+ report "not running" - `fusion_start` then retry). So: save the finished library to the cloud, and+ **reopen it from the cloud** (`fusion_aps_open`) for a clean Electronics Library view + screenshots -+ the in-session view often gets an empty "Untitled" shoved in front of it.+- **It is entirely dialog-free** - no Save dialog, no CEF modals; capture only hwnd-targeted background+ screenshots (never fullscreen - see fusion-driving).+ ## ⛔ Why an f3d and not a raw STEP (the key gotcha) A raw `.step` uploaded via `fusion_aps_upload` gives a urn that **resolves** (no broken-ref) and saves