# astrimid - I wonder, Is there a way to use subc... Channel: #support Source: https://discord.com/channels/1233487248129921135/1529470660147941577 Started: 2026-07-22T12:50:22.232000+00:00 Last activity: 2026-07-22T16:42:49.039000+00:00 ## astrimid — 2026-07-22T12:50:21.570000+00:00 I wonder, Is there a way to use subcircuit, but still have schematic traces crossing the subcircuit boundary and connecting through to component without falling back to net labels? ## astrimid — 2026-07-22T13:01:18.715000+00:00 I guess, I could use group, but I then lose the ability to have my private namespace inside a component? ## astrimid — 2026-07-22T13:01:58.357000+00:00 What I need is subcircuit that have ports but doesn't have a schmatic box? ## astrimid — 2026-07-22T13:05:28.455000+00:00 no, group doesn't appear to have a namespace isolation ## astrimid — 2026-07-22T13:17:45.869000+00:00 Maybe I could have a property `prefix` that I could prepend all my internal components with. Another possible approach is using `` and then you choose how to implement it: IC chip, PCB circuit or schematic only abstraction without physical counterpart. Hm... Board and Subcircuit are a special case of Group? While Chip is unrelated? Attachment: image.png — https://community.tscircuit.com/media/1529486221670223972 ## astrimid — 2026-07-22T13:55:53.318000+00:00 I thought of a chip like a special case of subcircuit that is hidden from schematic and pcb behind a block. ## astrimid — 2026-07-22T14:01:48.420000+00:00 semantically, both pcb board and chip are implementations of an abstract circuit. but visually, pcb represents traces, while chip represents components. This maps to my previous feature request, where chip doesn't have the ability to be represented as a circuit of 2 schematic components (dual package mosfet). ## Seve — 2026-07-22T14:09:35.545000+00:00 We have the internal circuit mosfet coming out if its not already out, also more features related to representing chips with multiple schematic boxes ## astrimid — 2026-07-22T14:15:17.747000+00:00 Here's some imaginary API of a block having children schematic: ``` No box; children drop right onto canvas (allows direct trace crossing) // "subcircuit" -> Draws a bounding box with ports/net labels // "symbol" -> Renders as a single IC black box / custom schematic symbol schematic="flat" | "subcircuit" | "symbol" // "footprint" -> Placed as a single packaged footprint (SOIC, QFN, etc.) // "sub-pcb" -> Pre-routed module / sub-board placed onto parent board // "none" -> Pure schematic logic with no direct physical footprint physical="footprint" | "sub-pcb" | "none" footprint="soic-8" // optional, used when physical="footprint" > {/* Internal logic & children */} ``` Does it sound reasonable? ## astrimid — 2026-07-22T14:17:26.997000+00:00 This way, you could have a circuit to be compacted down into an IC chip, or a chip to be exploded into multiple schematic block that helps simulation and understanding, with a simple property change. ## astrimid — 2026-07-22T14:19:23.820000+00:00 May be implementable without modifying tscircuit, if that internal circuit mosfet approach expanded into chip. ## Seve — 2026-07-22T14:19:54.357000+00:00 Yes but we have domain specific nesting levels, eg “schematicsheet”, “schematicsection”, “chip”, “internalcircuit”, the idea is right but for generic stuff yep can be in userland ## astrimid — 2026-07-22T14:52:50.524000+00:00 I think schematic sheet and section is not exactly nesting, but more like an additional schematic view of the same source model? Similarly, PCB footprint doesn't include the chip per se, more like a shadow of a modeled integrated circuit. Not sure if children nesting is right model here. Board contains a circuit with components, and a chip can contain circuit. But schematic sheet with sections is only a view of a modeled circuit, while board and chip are implementations of it. Also, PCB view is only a model of the PCB, so you could potentially show how some System-on-a-Chip would be implemented as a separate PCB with connectors/pins. So board does contain IC packages which could contain a circuit with a die. And schematic pages do contain components and nets. But it doesn't mean the board or schematic is a model of circuit itself? The issue with current JSX model is it tries to have a single JSX element to represent disparate views, as well as model a netlist and generate BOM. For example if you want to map schematic of (U1A, U1B, U1C, U1D) to 1 physical PCB chip (SOIC-14), the model breaks down and you need to either nest schematic view into a pcb or somehow link multiple schematic components into one with referencing. ` ``` I believe that merged like 1-2 days ago ## astrimid — 2026-07-22T15:41:42.035000+00:00 > Is there some kind of schematic disabled property for ``? Or does this syntax handles that? ## astrimid — 2026-07-22T15:45:02.458000+00:00 if not, a workarond I can think of is assigning it to some non-existing/hidden schematic page. ## astrimid — 2026-07-22T16:15:35.689000+00:00 I've tried using schematicbox and either I don't understand something or it doesn't put me closer to dual mosfet package: https://tscircuit.com/editor?#data:application/gzip;base64,H4sIAFnsYGoAA91WW2/aMBT+K0fRNME2rqWXIdKJS9eilZYC1YqUh5pgijViI8dRqSL++3zJxaHqNO1h0paHxOc7x/aX7xyfJHYIXeJdVYQ7p+2QYMu4gAlGvoAVZwF4DleG53jUo4QKzFfIxzAI6Mnx4Ox6+TxG/g/0hMecbUOIPQpAUYDbEApO6JOygy39YtsrxsRWGqKAhv76QQI0ChaYJ8C8AGz9RTFCAq8iJkwgQZjaMcX3irrPaChe0wYXShnpTwlbCXrOYHSjQwffK6eeo10ZcR0QMnF0cpS4FHuJ1lNjnhmKtW0UPCnbBNu33xC2DO65EZdjEXEKJTUG6JybJ0Bc+wCNKoyv5tNhv3sN09tZRdKDcbf/rXt5AaUrRJcbHMK434MNemGRgPfQux3BhlAMROCgDB9qUiuzXsdfk21qGHncWN2zCCkVopGsBkkI8zHi4kYL7sZSQisqU82Ns6HlVvq4sboXwbkG50Uw1Uv7UsMOIfQaLfAmdGOtVno12jJh00aSrPRqKvTyED1S6KB5gLb0CofosV7hED3RKxTX3WcsazJndtaaVZje9yr3N8MZdGHav7oYdWfDvszNg0lIR9YTDuSr+gu2y1d8Jkuxdj1H7pODa0ye1uIQVbmc4JUbP1bfmSQ+WqKZ3D4mnq7tUmXtxrq4K9AqOmSC1P0fVN+M/q6svTdk/fh/ydoxg7LuugAexTv9RVniFYo2Akq6k+nu1VkwxJeZ3sf1IPCcXOmWtpNl1TkZygaOqCBIyM9PhDYwup1+vZhB2smz5tV51UNTljolnnNnZdGkolHP3sSkIAPy06o4XKrNJzgkoWA8tLbkCXaw08TayYQg6itHo17PPXmH9Jx6qy6VL7LLK8SQO7PtvCVWPtukf0nL2uLPaTVOf0+0PqMUy/+JJeHysXkBwUCsMYTRohJRItRscxBBnkRV7raygqv/DfUvImlUJw04h6oMkWzkOgq605Cq+Py9DyY135qkADOpU9PlKMdlZ/8TEXemuRUJAAA= ## astrimid — 2026-07-22T16:18:51.638000+00:00 As I understand, it doesn't actually model two mosfets inside a chip, it just models a visual block that is losely coupled with chip component? So I guess you can now draw schematic blocks independent from `` but you still can't have true model/domain view decoupling. ## astrimid — 2026-07-22T16:25:12.523000+00:00 I guess, schematic and physical view are coupled together with abstract model by design? circuitjson has source, schematic and pcb separation, but doesn't expose ability to explicitly define these separately, and uses pcb and schematic aspects as proxies to modifying the source? Attachment: image.png — https://community.tscircuit.com/media/1529524728413425845 ## astrimid — 2026-07-22T16:29:22.976000+00:00 I understand that exposing 3 models explicitly at the react level would make reconciliation harder? Attachment: image.png — https://community.tscircuit.com/media/1529525778889441461 ## astrimid — 2026-07-22T16:42:49.039000+00:00 But we already have ` {/* Physical Aspect: BOM item + PCB Footprint */} {/* Schematic Aspect 1: First MOSFET symbol on Sheet 1 */} {/* Schematic Aspect 2: Second MOSFET symbol on Sheet 2 */} ``` Or you could expose some programmatic access to circuitjson? Currently, creating cusom components is limited to what tsicrcuit core/props provides, even if underlying simulaiton/pcb/schematic engine supports modeling anything.