0

Fusion 360 QR Code Generator

A Fusion 360 add-in that generates fully parametric 3D QR code models from any text or URL. Each dark module is extruded as an individual solid body, ready for 3D printing or CAM.

A Fusion 360 add-in that generates a fully parametric 3D QR code model from any text or URL. Each dark module is extruded as an individual solid body, giving you a clean, scan-ready result for 3D printing or CAM.

QR Code generated in Fusion 360

Features

  • Encode any text, URL, or data as a QR code
  • Choose error correction level: L (7%) · M (15%) · Q (25%) · H (30%)
  • Configurable module size and extrusion height
  • Each module is a separate solid body — no merging, no topology issues
  • Hot-reload support: Stop → Run picks up code changes without restarting Fusion

Requirements

  • Autodesk Fusion 360
  • segno — install once into Fusion's bundled Python:
& "C:\Program Files\Autodesk\webdeploy\production\<version>\Python\python.exe" -m pip install segno

Replace <version> with the folder name matching your Fusion install (find it under C:\Program Files\Autodesk\webdeploy\production\).

Installation

  1. Clone or download the repository into your Fusion 360 add-ins folder:
%APPDATA%\Autodesk\Autodesk Fusion 360\API\AddIns\
  1. Install segno as shown above.
  2. Open Fusion 360 → UtilitiesAdd-Ins (Shift+S) → select qrcode → click Run.

Usage

  1. Switch to the Design workspace (Solid tab).
  2. Click QR Code Generator in the Scripts & Add-Ins panel (or search for it).
  3. Fill in the dialog:
ParameterDescription
QR Code TextAny text or URL to encode
Error CorrectionL (7%) · M (15%) · Q (25%) · H (30%)
Module SizeSide length of each dark square (default 2 mm)
Extrusion HeightHow tall the raised modules are (default 2 mm)
  1. Click OK — the 3D QR code appears as a new component.

QR Code dialog in Fusion 360

How It Works

  1. segno generates the QR code bit matrix.
  2. All four edges of every dark module are collected into a Python set — shared edges between adjacent modules are deduplicated automatically, so each module ends up with its own clean closed square profile in the sketch.
  3. Profiles are filtered by area (≈ module_size²) to exclude large annular profiles that Fusion creates for enclosed white regions (finder pattern rings, etc.).
  4. Each matching profile is extruded individually with NewBodyFeatureOperation — one extrude call per module — so Fusion never merges touching bodies.