Project review: 1-wire distribution board


One-Wire Bus (115.5 KB)

First-time KiCAD user but long-time electronics hobbyist…

This board is nearly all passive, low-power, and low frequency signaling (160 kbps maximum) so I went for a very simple 2-layer design. I actually already have the boards (from JLC) but due to an injury I can’t do any soldering right now so they are waiting… but visual inspection seems to indicate that they were manufactured properly.

I’ll end up posting this project to hackaday or similar places once I know it all works so any constructive criticism is very welcome.

The board accepts three 1-wire busses, plus power, on an 8-pin connector and then distributes the busses to three banks of 10 screw terminals each.


You’ve got plenty of room in the board, why do you use 0.127mm/5mil tracks? Even though JLCPCB can do it not all manufacturers do it with their cheapest price or at all. I don’t see downsides in using 0,5mm/20mil here.


Schematic needs rescuing, J1 isn’t found in my library setup. You might want to copy it to a project specific library and add it to the project.

See Option 2 in this FAQ article for more information about the rescue feature:


I had to pick something :slight_smile: Since this is all very low current I didn’t see any direct benefit from larger traces, but your point about manufacturability is a good one. Thanks.


That symbol is already in a project library and is included in the ZIP file (I used the KiCAD archive tool and double-checked that it included the symbol files).


I agree.

And more, if BUS1 is conected to J1-pin4 and BUS3 is connected to J1-pin8, the board can be routed with:
-Bottom side only a GND zone covering all the board
-Top side +5V zone covering all the board and all the other signals with a 15mil track width.


OK, I see now. But it’s not in the project specific sym-lib-table. KiCad doesn’t find it automatically.


/.$/in 5.0.2./

Should work find in 5.1rc2


What should work? I’m using 5.1.0-rc2-38-g4612175da. In the project the .lib file is in the project directory but KiCad doesn’t find it because there’s no sym-lib-table in the project. I had to add the .lib file to Project Specific Libraries in the Symbol Library manager.


Archiving a project should include sym-lib-table in 5.1


Ah! So the original poster used older version to archive and it wasn’t included. @kpfleming, either add sym-lib-table manually or archive with a nightly build or soon-to-be 5.1.


Thanks, I am indeed using 5.0.2.


Thanks for all the guidance; here’s a new version of the board using filled zones. I had to relocate some of the components to make routing easier, and I had to use a via jumper to connect the 5V zone, but I think I like this version better.

One-Wire Bus Board with (150.2 KB)


Much better now!

But you can even skip the jumper for +5V with some “slalom” :wink:


Yep, I’m just about to upload a new version which is even cleaner :slight_smile:


One-Wire Bus Board.kicad_pcb (347.3 KB)

I think this one is really done, I even took the time to clean up the fab and silkscreen layers.


There is only one thing I don’t like, maybe it is a fixation or historical background: electrons don’t like 90 degree angles unless on a T junction of traces, if possible make 45 degree angles. Some people use teradrops on T junctions, only available in kicad as an external plugin.


I’ll consider it, but my OCD prefers right angles!


I see you have +5V copper fill on top. Be careful about screw heads digging into the copper fill and shorting +5V to casing or maybe bottom layer.

You can use the leftover inverters in parallell to the used ones for more drive capability.


Good point; I’m fairy certain that the mounting holes are large enough for ‘normal’ screw heads but when I give boards to other people I’ll suggest fiber washers under the screw heads to protect the board.

I’ve chosen super-low-current (1ma) LEDs because the total power budget on this board is very low, so the additional drive current capacity wouldn’t be beneficial.