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.9.23: dangling-3D-ref strip + shim fix
4 files changed
+12−7
BRIDGE_VERSION+1−1@@ -1 +1 @@-1.9.22+1.9.23
adom-bridge-fusion-manifest.json+4−4@@ -1,10 +1,10 @@ { "manifest_version": 1, "name": "fusion360",- "version": "1.9.22",- "url": "https://wiki.adom.inc/download/adom/fusion-bridge/1.9.22/adom-bridge-fusion-v1.9.22.zip",- "sha256": "6693bdbce8b4ee9cd34a4e43f19745bb5da964db57c8c302971ab1018aa7ac13",- "size": 366094,+ "version": "1.9.23",+ "url": "https://wiki.adom.inc/download/adom/fusion-bridge/1.9.23/adom-bridge-fusion-v1.9.23.zip",+ "sha256": "c033c331ca9c1ddec87bef045448e3c1738577a0d367e77010ec56124f825cf8",+ "size": 366258, "verbPrefixes": [ "fusion_" ],
bridge.json+1−1@@ -2,7 +2,7 @@ "manifest_version": 1, "name": "fusion360", "displayName": "Autodesk Fusion 360",- "version": "1.9.22",+ "version": "1.9.23", "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://wiki.adom.inc/adom/fusion-bridge", "author": "Adom Inc.",
server.py+6−1@@ -5896,6 +5896,11 @@ def _mtp_extract(lbr_text, deviceset): if not (gate and dev): return None, "deviceset %r has no gate/package device mapping" % deviceset connects = re.findall(r'<connect gate="[^"]+" pin="([^"]+)" pad="([^"]+)"', ds)+ # Strip 3D binding refs from the embedded deviceset: a package3dinstance whose+ # packages3d section is not ALSO embedded is a dangling ref, and Fusion then+ # renders the schematic EMPTY (caught 2026-08-15: bound-library test projects+ # imported blank sheets). The test project needs no 3D binding.+ ds = re.sub(r'<package3dinstances>.*?</package3dinstances>', '', ds, flags=re.S) sym = block_of("symbol", gate.group(2)) pkg = block_of("package", dev.group(1)) if not (sym and pkg and connects):@@ -6666,7 +6671,7 @@ def dispatch_command(command: str, args: dict, caller_identity: dict = None) -> active = str((st.get("data") or {}).get("activeDocument", "")).lower() except Exception: active = ""- if _TEST_PROJECT["docBase"] in active:+ if _TEST_PROJECT: kind = "sch" if command == "show_schematic" else "brd" _test_project_activate(kind) if command in ("show_schematic", "show_2d_board"):