Skip to main content
Built-in Elements

<assembly.device />

assembly.device groups boards and mechanical parts into a complete device. Add model or modelUrl to render a model at the world origin.

import { assembly } from "@tscircuit/core"

export default () => (
<assembly.device
name="product"
model="https://docs.tscircuit.com/models/assembly/housing.glb"
>
<board name="B1" width="40mm" height="30mm" />
</assembly.device>
)
PropertyDescription
nameOptional device name.
modelModelprinter string or HTTP(S) model URL.
modelUrlImported CAD model URL. Use either model or modelUrl.
childrenBoards, motors, subassemblies, and screens.

Modelprinter strings​

Use a modelprinter string directly in model; no modelcdn URL is needed. This display is 16 × 10 mm with a 5 mm cable.

import { assembly } from "@tscircuit/core"

export default () => (
<assembly.device
name="display-demo"
model="flexscreen_w16_h10_flex5_sitsflat"
/>
)

Assembly models add 3D geometry without creating PCB footprints or electrical connections. For imported models, see cadmodel for supported formats.

Use assembly.motor to add a motor and mount a controller to its backface, assembly.subassembly to group mechanical parts, or assembly.screen to attach a display to a connector. See Mounting 3D models for screws aligned with board holes.