nailoo - Which repo should I open my PR in? I g...
Which repo should I open my PR in? I got a bit confused.
https://github.com/tscircuit/tscircuit/issues/786
GitHub
Support Capacitive Touch Slider element, add solvermask support to ...
circuit-json supports polygon pcb smtpads, but there isn't an example in the docs https://github.com/tscircuit/circuit-json/blob/main/src/pcb/pcb_smtpad.ts Create a tscircuit/core pcb snapshot ...
74 Replies
well you've done a lot of the work already, the claim can be made once you PR a working docs page
there's a lot of PRs to update to get to that point, but you did most of the work on it
CC @Anas maybe you guys can collaborate and do a split bounty
Sounds interesting! I do love collaboration. So just to confirm — I need to raise a new PR in the docs repo with the claim, right?
yes and the doc should show it working, which may require fixes in other places- the doc will need to show inside a
<CircuitPreview />
that has soldermask
there are probably some other things required inside tscircuit/core iiuc
@Anas knows i thinkiirc this is the server the docs use for the svgs, it may need an adjustment to make it do the solder mask rendering with a configuration parameter https://github.com/tscircuit/svg.tscircuit.com
GitHub
GitHub - tscircuit/svg.tscircuit.com: A server that takes encoded t...
A server that takes encoded tscircuit code and renders it into an SVG suitable for use in docs - tscircuit/svg.tscircuit.com
going to increase the bounty a bit b/c i didn't realize that would be necessary
I can do that I’ve already have circuit code that creates the polygon pads
yea i think props and circuit json already have the relevant code, svg.tscircuit.com probably needs an update
Yes, sure — go ahead! I’ll definitely learn a lot more about tscircuit and how it works through all this. Sounds good!
<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" data-software-used-string="@tscircuit/core@0.0.733"><style></style><rect class="boundary" x="0" y="0" fill="#000" width="800" height="600"/><rect class="pcb-boundary" fill="none" stroke="#fff" stroke-width="0.3" x="47.05882352941177" y="64.70588235294116" width="705.8823529411766" height="470.5882352941176"/><path class="pcb-board" d="M 47.05882352941177 535.2941176470588 L 752.9411764705883 535.2941176470588 L 752.9411764705883 64.70588235294116 L 47.05882352941177 64.70588235294116 Z" fill="none" stroke="rgba(255, 255, 255, 0.5)" stroke-width="4.705882352941177"/><polygon class="pcb-pad" fill="rgb(200, 52, 52)" points="188.2352941176471,205.88235294117646 296.47058823529414,205.88235294117646 381.17647058823536,300 296.47058823529414,394.11764705882354 188.2352941176471,394.11764705882354" data-layer="top"/><polygon class="pcb-solder-mask" fill="rgb(200, 52, 52)" points="188.2352941176471,205.88235294117646 296.47058823529414,205.88235294117646 381.17647058823536,300 296.47058823529414,394.11764705882354 188.2352941176471,394.11764705882354" data-layer="top"/><polygon class="pcb-pad" fill="rgb(200, 52, 52)" points="315.2941176470589,205.88235294117646 484.7058823529412,205.88235294117646 569.4117647058824,300 484.7058823529412,394.11764705882354 315.2941176470589,394.11764705882354 400.00000000000006,300" data-layer="top"/><polygon class="pcb-pad" fill="rgb(200, 52, 52)" points="503.52941176470597,205.88235294117646 682.3529411764707,205.88235294117646 682.3529411764707,394.11764705882354 503.52941176470597,394.11764705882354 588.2352941176471,300" data-layer="top"/></svg>
this is the output svg
when I convertCircuitJsonToPcbSvg
NIce @Anas
the class="pcb-solder-mask" fill="rgb(200, 52, 52)"
rgb(200, 52, 52) are red
I think u made change it to green
I'm using "circuit-to-svg": "^0.0.195",
which is Latest version
Uff, sorry — @Seve please confirm. I wasn’t aware this might be an issue.
@Seve in pcb-viewer should I add another another layer above the smt pad, or just change the color of smtpad to green?

I just changed the color of the primitive when
is_covered_with_solder_mask
true
@Seveah sorry for the slow response
it might be slightly better to create both versions so that we can dynamically hide/show them. Note that the you must make sure layering is correct relative to plated copper

@Seve
If the bounty is still pending, would it be alright for me to complete it?
Please let me know which repository I should submit the PR
i'm not sure if this one got completed
GitHub
Support Capacitive Touch Slider element, add solvermask support to ...
circuit-json supports polygon pcb smtpads, but there isn't an example in the docs https://github.com/tscircuit/circuit-json/blob/main/src/pcb/pcb_smtpad.ts Create a tscircuit/core pcb snapshot ...
i think you can continue working on it, i'll assign you
oh you need to comment on the issue for me to assign
make sense
k you're assigned
@Seve there is any issue in this image? what is the actual issue in this image. can you tell me
the image is demonstrating how red (copper) is supposed to appear over solder mask (green)
you should create a snapshot test that demonstrates that this is what occurs in circuit-to-svg
okay will do

makes sense — I'm confirming with you before I move forward with it.
Sorry, I can't find showSolderMask for traces. I think I had submitted a PR for this earlier, but it wasn't merged. Could you check if it's still open or what happened with it?
what do you think about this PR?
@Seve are you available for now? I m on it.
Approved
Done, waiting for merge
@nailoo did you see my comment, sorry i approved but with a request to change the test
Yes, I have done
you should check it
@Seve
Well my rest was to have one test with both variants captured, but ok this is at least better
@Seve Now I can submit a pr in tscircuit/doc
??????
yep if it works!
are you have test code for this?
i don't
okay will do
All is well

what do you think?
@Seve what type PR you want in tscircuit/doc
nice that looks good
in tscircuit/doc you have to recreate a capacitive touch sensor
it is fairly easy
this is an example of the shape https://github.com/tscircuit/core/pull/1351/files
GitHub
Added test PCB board with a custom polygon-shaped SMT pad by AnasSa...
first step for tscircuit/tscircuit#786
@Seve Yes, but could you clarify what type of tutorial you want to add, and in which section you would like to include the capacitive touch sensor?
@Seve could you review this one
https://github.com/tscircuit/rp2040-zero/pull/3
I checked the deployment, and it looks like we need to adjust its position. What do you think?
https://tscircuit.com/seveibar/rp2040-zero/releases/2f18da63-2963-4cff-9886-b3c4e338d92b
Yea seems pretty broken hehe
@Abse it might not be possible to pack inside the component, which could be a problem 🤔
@DOPΣ preview link on github prs works perfectly on mobile, nice work!!!!

@Seve
It would be a page in the "tutorials" section
The page would describe how to create a capacitive touch sensor component
alternatively, you could put it in the smtpad document
either is fine, maybe the tutorial is better
sorry I stopped working on this I'm still having issues with wsl I hope I will finish setting up in the next few hours
what is the issue with the positions
i suspect that you can't add children to a
XiaoBoard
(at least with pcbPack
enabled)is it ok to position them manually ?
no we're generally removing XY from all tscircuit code
ok so what is the next step
eventually nobody will ever need to do XY and that is very important
well we'd want to repro in core- to be clear i think it's an issue with pcbPack not your code
if a chip is allowed to have components inside of it, it needs to be a
<pinout
instead of a <chip
, or we need a special prop
if you use <pinout
it might just work
but anyway probably good to repro in core- pcbPack
has some logic where it determines if components are allowed to pack inside the pads iircI will try to repro it in a bit
GitHub
doc: add capacitive touch sensor tutorial by nailoo · Pull Reques...
/claim tscircuit/tscircuit#786
fix #tscircuit/tscircuit#786
you're able to preview locally right?
yes
lots of little issues w/ the doc, not sure if you want me to review yet
Sorry I am not good in doc writing. and no more idea how its working technically. how to fix them
CleanShot 2025-09-24 at 21.42.50
Video uploaded to CleanShot Cloud
@Seve I’m recreating the tutorial exactly as it shows — building a simple USB flashlight.what do you think?
https://docs-dsbns9xsw-tscircuit.vercel.app/tutorials/building-a-simple-usb-flashlight
Building a Capacitive Touch Sensor | tscircuit docs
Learn how to design, route, and test a single-button capacitive touch sensor that uses polygon pads and a touch controller.
@Seve
i mentioned in the video you should use
<CircuitPreview />
, plus there are still issues with e.g. the 3d viewer not displaying the pads, the pcb viewer not having solder mask, and the schematic having the pins not labeled and not on the same side@Seve I understand the part about the CircuitPreview, but you didn't mention anything about the 3D view — could you clarify what you mean by that? Also, the PCB view wasn’t mentioned either. The issue doesn’t seem to reference those parts at all. Sorry, but this is really confusing for me. I'm not exactly sure what you're trying to say. Is there any issue to do for me.
the 3d view is a blank board
it's not supposed to be a blank board, it's supposed to have the capacitive touch strip on it
the pcb view doesn't display the green solder mask
@Seve 👀
😭
Why is this happening to me?
i mean in general it's good to find bugs
every bug opens up a PR which can lead to AI sponsorship
it's about the journey not the destination 😁
yes, make sense
could I get a bounty for for these bugs?
we don't add bounties on request, the AI determines that retroactively. Bounties are to help with larger scale iniatives
you can see your current accumulated sponsorship by looking at sponsorships.csv
GitHub
contribution-tracker/sponsorships/2025-09.csv at main · tscircuit/...
Generate a contribution summary for your projects. Contribute to tscircuit/contribution-tracker development by creating an account on GitHub.
oh yes, its crazy