muse/book-reading-clip-lamp
A Wi‑Fi/USB‑C ESP32‑S3 reading lamp with OV5640 camera, microphone, speaker amplifier, rechargeable Li‑Po power management, six-LED boost light, USB protection/charging detection, and a clip/gooseneck enclosure with external FlexPIFA antenna.
- Version
- 0.4.3
- License
- unset
- Stars
- 0
lamp-enclosure.tsx
import { assembly } from "@tscircuit/core"
import { enclosureParts, tint } from "./enclosure-geometry"
import { baseAssemblyParts } from "./base-assembly-geometry"
import { baseCadModels } from "./base-cad-models"
export const productParts = [...enclosureParts, ...baseAssemblyParts]
/** Mechanical-only siblings: no new PCB footprints, nets or routing obstacles. */
export function LampEnclosure() {
return <assembly.cadassembly name="LampClipAssembly">
{productParts.map(part => <assembly.cadassembly
key={part.id} name={part.id.replace(/-/g, "_")} displayName={part.label}
cadModel={{
...(baseCadModels[part.id] ? { glbUrl: baseCadModels[part.id] } : {
jscad: part.id === "camera-reference" || part.multicolor ? part.plan : tint(part.color, part.plan),
}),
modelOriginPosition: { x: 0, y: 0, z: 0 },
modelUnitToMmScale: 1,
showAsTranslucentModel: ["rear", "front", "base", "neck"].includes(part.group),
}}
/>)}
</assembly.cadassembly>
}