[HN Gopher] LibrePCB
       ___________________________________________________________________
        
       LibrePCB
        
       Author : WallyFunk
       Score  : 172 points
       Date   : 2023-09-28 19:23 UTC (3 hours ago)
        
 (HTM) web link (librepcb.org)
 (TXT) w3m dump (librepcb.org)
        
       | gorenb wrote:
       | This is exactly what I was looking for.
        
       | geppetto wrote:
       | Looks exactly like Kicad...
        
         | regularfry wrote:
         | Looks like it's (at least) got faster feedback between
         | schematic and layout.
        
       | AYBABTME wrote:
       | I wish there was some "here are basic building blocks to achieve
       | XYZ" for real beginners who just want to hack something together.
       | E.g. I would like a 48VDC-48VDC battery-to-battery charger, but I
       | have no idea how to get started. I'm sure this is a fairly simple
       | design (I guess boost voltage and then do CC/CV).
        
         | alexose wrote:
         | It would be cool if someone borrowed from the Factorio
         | interface and let you paste in blueprints. I'm not an
         | experienced enough PCB designer to know how terrible of an idea
         | this is, but it sounds mildly feasible.
        
       | valdiorn wrote:
       | Is this PCBWay challenging JLCPCB and EasyEDA? Looks like it. I
       | welcome it, EasyEDA and the super slick integration with JLCPCB
       | is a killer feature and the reason I use JLC exclusively for all
       | my boards.
       | 
       | If this works well I might give PCBWay a try.
        
         | mchannon wrote:
         | For the record, I export from EasyEDA to Gerber to PCBWay all
         | the time.
         | 
         | PCBWay less likely to run into issues with weird design
         | features and parts specs, but they are slower and more
         | expensive.
         | 
         | Elecrow also takes Gerber's from EasyEDA.
        
         | dbrgn wrote:
         | LibrePCB is not developed by PCBWay. They started supporting
         | the project last year:
         | https://librepcb.org/blog/2022-09-08_partnership_with_pcbway...
         | Other fabs support it too (namely Aisler) by donating a share
         | of the income from orders submitted from LibrePCB.
        
         | distract8901 wrote:
         | I'm extremely skeptical of any company that does as much
         | advertising as PCBWay, but they seem to legitimately do a good
         | job. From what I can tell, it seems every single order is
         | reviewed by a human who sends you an email if something is off.
         | Quality is as good as you'd want and the price is reasonable.
         | 
         | Their website is an atrocity but I guess that's fine.
         | 
         | I've been using them for the last few months and I have no
         | complaints.
        
           | cushychicken wrote:
           | Spoken like someone who's never actually ordered from them.
           | 
           | PCBway is among the better board fabs in the world -
           | certainly in terms of customer service, and very hard to beat
           | in terms of value for money. The fact that they get you quote
           | and acceptance in under an hour (during US working hours!) is
           | incredible.
           | 
           | American board fabs could learn a thing or two from PCBway.
           | They set a very high standard in terms of service. I'm very
           | impressed by it.
           | 
           | I wouldn't send a server motherboard or a radar frontend
           | design to them (for a multitude of reasons - ITAR controls
           | likely forefront among them) but most circuit designs aren't
           | in that league of board design. Most are two to six layers
           | and 300 or fewer parts placed.
           | 
           | PCBway does pretty superlative work serving that niche.
        
             | coder543 wrote:
             | > Spoken like someone who's never actually ordered from
             | them.
             | 
             | Spoken like someone who didn't read the comment they're
             | replying to?
             | 
             | The person you're replying to said PCBWay was good. Quoting
             | that comment: "they seem to legitimately do a good job"
             | "Quality is as good as you'd want and the price is
             | reasonable."
        
         | LeifCarrotson wrote:
         | That's really the killer feature for you?
         | 
         | I do have the advantage of one lab back in college where a pro
         | spent 90 minutes instructing a bunch of teenagers how to
         | prepare Gerbers for a class project through Advanced Circuits,
         | but beyond that I've had no problems sending files to OSH Park,
         | JLC, PCBWay, Sunstone, or Advanced Circuits whether they were
         | generated in Eagle, Kicad, or Altium.
         | 
         | Even at the low-margin providers like JLC and PCBway they still
         | have a human look over your gerbers (and most provide web
         | viewers for you to see what you've uploaded in those files) to
         | make sure you're not going to order the inverse of your board,
         | or make all your vias unplated, or swap your copper and
         | silkscreen layers, or anything goofy like that. If you do screw
         | up the design, that's on you and the tools won't help, but
         | prices are dirt cheap and turnaround times are screaming fast
         | these days, so it shouldn't be too bad.
         | 
         | I don't understand why newcomers find plotting to gerbers so
         | intimidating.
        
           | chinabot wrote:
           | integration with LCSC for parts and assembly is a killer
           | feature though. I loved getting my PCBs back but then if you
           | need to solder on dozens of 0603 caps and a BGA package it
           | just became another thing to get wrong.
           | 
           | As my eyes and coordination are not as good as they were
           | hitting buy now and having fully assembled boards come back
           | for basically the cost of the parts and the PCB was game
           | changing for me.
        
             | LeifCarrotson wrote:
             | JLC-LCSC integration is pretty big for small-volume users,
             | I'll agree. But you can do that with Kicad/LibrePCB just as
             | easy as making boards.
             | 
             | You could always have fully-assembled boards come back for
             | basically the cost of the parts...as long as you were at
             | quantity 10k units. Hooray for automation!
        
       | dbrgn wrote:
       | Just a few days ago, version 1.0 was released. Release blogpost:
       | https://librepcb.org/blog/2023-09-24_release_1.0.0/
        
       | kachurovskiy wrote:
       | Do we have a ChatGPT-style workflow for PCBs on the horizon yet?
        
         | AdamH12113 wrote:
         | I think there are too many steps with too many opportunities
         | for failure and too little training data for such a thing to be
         | feasible for the foreseeable future. Almost any small error of
         | the kind that GPTs produce can prevent your board from working
         | or destroy components. Picking the wrong part number or
         | connecting the wrong pins is a hard fail that costs a fair bit
         | of time and money to fix. Softer error like picking the wrong
         | capacitor value for an RC filter or using bad trace routing
         | would be tricky to debug.
         | 
         | Maybe a better approach would be to have an LLM generate RTL
         | code for an FPGA.
        
         | stn8188 wrote:
         | Definitely not GPT-style, but there are quite a few examples of
         | ML/AI integration with EDA. For example:
         | 
         | Startup looking at a post-layout DFM check workflow:
         | https://cadstrom.io/
         | 
         | Cadence is probably the biggest EDA company talking about ML/AI
         | in the PCB space (that I've noticed) with their recently
         | announced "Allegro X" stuff. The videos are mostly marketing
         | fluff, but they seem to be on track with what I'd expect for
         | "AI assisted PCB design".
         | https://www.cadence.com/en_US/home/tools/pcb-design-and-anal...
         | https://www.youtube.com/watch?v=RlWfSQq0NkA
         | 
         | They also have a neat machine-learning optimization tool for
         | their electronics simulations:
         | https://www.cadence.com/en_US/home/tools/system-analysis/opt...
         | 
         | On the chip-design side of EDA, both Cadence and Synopsys have
         | a bunch of AI-assisted tools that supposedly are being used
         | right now. I'm not as familiar with that stuff so I prefer to
         | read the humorous Deep Chip summaries:
         | http://www.deepchip.com/items/0593-08.html
         | 
         | And lastly, there's some recently published and soon-to-be-
         | published work showing that there's potential to speed up
         | electromagnetic simulations with neural nets. It's all just
         | proof-of-concept for now, but I'm hoping this proves that ML/AI
         | can be can be integrated in a useful manner in commercial
         | electromagnetic solvers :)
         | https://shielddigitaldesign.com/posts/2022/ml-replace-field-...
         | https://shielddigitaldesign.com/posts/2023/s-param-from-via/
        
       | synergy20 wrote:
       | https://easyeda.com/ is another alternative that has PCB
       | factories backing it up.
        
       | phkahler wrote:
       | "A LibrePCB library is more than just a collection of stupid
       | graphics for symbols and footprints"
       | 
       | This lack of professionalism is a bit off-putting to me. Just
       | saying, don't put stuff like that on your front page.
        
         | [deleted]
        
         | anamexis wrote:
         | I don't read it as unprofessional, just the opposite of "smart"
         | in the sense of "smart light bulb" vs "stupid light bulb"
        
           | OJFord wrote:
           | I was going to disagree with you (not least because 'dumb' is
           | the established antonym) - but it is under the heading 'smart
           | library concept', I think you're right, and maybe it's the
           | victim of translation.
           | 
           | (There's some other word choice that's correct and makes
           | sense, but seems a little unusual, that makes me
           | think/supports that.)
        
         | Zambyte wrote:
         | What makes you think their goal is "professionalism"?
        
           | kube-system wrote:
           | Developers and sponsors who support the project as part of
           | their profession.
        
         | [deleted]
        
       | bvanderveen wrote:
       | > No online account.
       | 
       | Among the nerds, the backlash has started. Watch out, Fusion 360.
       | 
       | In the world of doing stuff with atoms, no one ever wanted their
       | drafting table to have authentication, ACL, 2FA, or
       | storage/backup.
        
         | ShadowBanThis01 wrote:
         | Where did that quote come from, and what's your point?
        
           | ShadowBanThis01 wrote:
           | [flagged]
        
           | coder543 wrote:
           | The quoted text is literally on the exact webpage that is
           | being linked to, above the download button.
        
       | jpm_sd wrote:
       | A feature comparison against KiCAD and Horizon would be helpful?
       | 
       | https://www.kicad.org/
       | 
       | https://horizon-eda.org/
        
         | dbrgn wrote:
         | The FAQ does not contain a direct comparison, but might answer
         | some questions: https://librepcb.org/faq/
         | 
         | One of the main "selling points" is the advanced library
         | concept: https://librepcb.org/features/library-concept/
        
           | bsder wrote:
           | There are two types of PCB designers:
           | 
           | 1) Those who believe in library managers
           | 
           | 2) Those delivering boards on a regular basis
           | 
           | The vast majority of time in PCB design is spent reading
           | datasheets. The second largest chunk of time is spent doing
           | the engineering schematic design and analysis. After that is
           | PCB placement. After that is building schematic and PCB
           | symbols. After _that_ is actual routing.
           | 
           | Yes, building library symbols annoys me. It's tedious and
           | error prone. However, it's integral to your design and you
           | can't skimp. The sooner you accept that, that better off you
           | will be.
           | 
           | (A good example is your vias underneath a QFN for power and
           | heat transfer. If your via rules change because you have a
           | different board house, some of your physical symbols may need
           | to change slightly. This sucks, and no library manager is
           | ever going to solve this.)
        
             | junon wrote:
             | I agree with you. That doesn't mean that Kicad's library
             | system is great, though. It's bananas annoying to deal
             | with.
        
               | bsder wrote:
               | _Every_ PCB library manager is bananas annoying to deal
               | with. Altium 's was no better, IMO. Nor Orcad's.
               | 
               | Library managers for PCB design have all the same
               | pathologies as bug ticketing systems in software
               | development.
        
       | Animats wrote:
       | The usual questions:
       | 
       | - How comprehensive is the part library?
       | 
       | - Is there auto-routing? How good is it?
       | 
       | - "Import formats: DXF". For what, the board outline? DXF is for
       | mechanical CAD. You can't import a board layout or schematic that
       | way.
       | 
       | - "Export formats: PDF, SVG, pixmap, BOM, pick&place,
       | Gerber/Excellon". None of which have enough info for import into
       | another EDA program. This thing is very self-contained, which is
       | unusual for an open source program.
       | 
       | This seems to be is a marketing tool for some board maker. _" At
       | this time, you can choose either AISLER or PCBWay as the PCB
       | manufacturer. With every order you start with LibrePCB Fab (or
       | direct .lppz upload on the AISLER website), they will make a
       | 'donation' to the LibrePCB project."_
        
         | Findecanor wrote:
         | > DXF is for mechanical CAD. You can't import a board layout or
         | schematic that way.
         | 
         | There have been times I have wished that I could import DXF as
         | footprints in Kicad because it was easier to draw complex
         | shapes in QCad or Inkscape. I think it could also be useful to
         | import object placement/orientation data from a DXF file and
         | snap to those when placing components.
         | 
         | For the latter use-case, I have instead written placements by
         | hand as code in a Python script and made that output both DXF
         | and Kicad files.
        
           | SV_BubbleTime wrote:
           | You kind of can in KiCAD. You import to a footprint, and
           | change the lines to the type you want (courtyard, silkscreen,
           | front copper, etc), and for things like pads you can use DXF
           | for reference and centerpoints then put your pads in.
           | 
           | The CAD tools inside KiCAD could be a lot better (esp since
           | it's using FreeCAD under the hood and the tools should be
           | there) but it's OKAY as is.
        
         | junon wrote:
         | DXF was integral in importing things from freecad for outlines,
         | designs, and in some cases even silkscreens.
         | 
         | Also, beginners shouldn't even autoroute. I can't think of a
         | single valid reason to support it, honestly. The algorithms and
         | compute power needed to actually autoroute something useful
         | beyond trivial things is years away, perhaps decades or more.
        
           | jhallenworld wrote:
           | You need to try a better autorouter.
           | 
           | My experience with PADS/Mentor "blaze router" and "Specctra"
           | (now Allegro PCB router) was very good. Altium on the other
           | hand... no (I mention Altium because I think most people's
           | bad experience is coming from this).
           | 
           | Specctra and blaze worked fine in 1998-era PC hardware. I
           | used them for high speed designs (even then we had ECL and
           | PECL).
        
         | polishdude20 wrote:
         | I wish parts manufacturers could create an open or universal
         | part file standard. Even just a schematic symbol and footprint
         | would do. Make it compatible with all PCB eda software
        
           | petsfed wrote:
           | There's a lot of good reasons why its _not_ universal. Chief
           | amongst them is that there 's no guarantee that a given
           | footprint will work in the context of the overall assembly.
           | Will you get tomb-stoning? Will the combination of fab
           | capabilities and assembly capabilities necessitate a larger
           | aperture for a given pad? If so, will that cause the solder
           | to migrate during reflow to an adjoining pad?
           | 
           | Is it Yageo's responsibility to publish a different 0402
           | footprint for each board house's capabilities?
        
         | Alupis wrote:
         | > Is there auto-routing? How good is it?
         | 
         | Why do people always ask for this? It's a feature only newbies
         | use, and once a project becomes even slightly less than
         | trivial, the best auto-routing tools fall face down. There's an
         | awful lot more to PCB design than just physically fitting the
         | components on the board.
        
           | ajsnigrutin wrote:
           | Because professionals use expensive professional software,
           | and even a newbie wants to put an esp32 and 4 sensors on a
           | pcb and order 5pcs from china for a price of two cups of
           | coffee... and an autorouter is very helpful then, because for
           | such a usecase, the routing is the 'hardest' part of the pcb
           | design.
        
             | noncoml wrote:
             | Even a newbie will outgrow the auto-router very very fast.
             | 
             | Tools to help with high speed are much much more important
        
               | ajsnigrutin wrote:
               | Well yeah, but there's a greater chance that s/he'll
               | start using the software in the first place, if it has
               | autorouter :)
        
           | petsfed wrote:
           | This alongside the question re: DXF really reveals the
           | inexperience of the question asker.
           | 
           | My experience with the Altium auto-router (which is pretty
           | good, as these things go) was that it took quite a bit more
           | time to setup and tune than to just bite the bullet and
           | manually route the board. Eagle's auto-router was easier to
           | use, but it was also attached to Eagle.
           | 
           | At the end of the day, the difference between getting an
           | autorouter to the point that it can autoroute a simple
           | 2-layer board with lots of through hole parts, getting it to
           | the point that its useful to the average professional, is
           | monstrous. There's so much more to routing that just widths
           | and clearances. It will probably someday be the case that
           | most PCBs are laid out and routed entirely by computers. But
           | for now, there's too much subtlety in PCB design. I'd lose my
           | mind if I had AI-designed boards failing QC because of
           | tombstoning, for instance. I'm not sure that anyone is trying
           | to simulate board heating in detail enough to predict its
           | occurrence, let alone evaluate solutions prior to board fab.
           | And yet, the solution is pretty easy once you see that its
           | happening in the first place.
        
           | noncoml wrote:
           | Couldn't agree more. Auto routing is useless. Give me tools
           | to make it easier to route pairs and for length matching.
        
           | slabity wrote:
           | > Why do people always ask for this? It's a feature only
           | newbies use
           | 
           | Because when you market a tool as "Easy to learn", "from
           | _beginners_ to experts ", and "For everyone", then I would
           | expect some decent newbie-friendly features.
           | 
           | Honestly as a non-professional who makes PCBs that are almost
           | exclusively "connect this pin to this other pin over here",
           | this kind of comment comes of as a bit unnecessarily
           | condescending in a "I don't need this feature, so nobody else
           | should need it either" type way.
        
             | Alupis wrote:
             | I don't think that's a fair position to take. PCB design is
             | complex - there are very few complex tasks that can be
             | whittled down to a single click of a button with good
             | results.
             | 
             | Take software for example - newbies can and do write code,
             | but it's rarely good or error-free. Codeless solutions have
             | appeared - but there's good reasons even those aren't used
             | often.
             | 
             | Any auto-routing feature is going to appeal to absolute
             | beginners, and few if anyone else. So, we're asking a FOSS
             | project to spend a tremendous amount of time building in a
             | good-enough auto-routing feature that only a small portion
             | of their audience will ever actually use, or use more than
             | once.
             | 
             | If your board is simple enough for auto-routing to provide
             | value to you - then I would assert your board is simple
             | enough for you to spend 30 minutes doing the layout
             | yourself.
        
               | ajford wrote:
               | Gotta say your comment is either from the point of view
               | of a subject matter expert who's forgotten what it's like
               | for newbies or hobbyists, or someone who's just
               | condescending. PCB design is complex, but the kind of
               | boards a newbie or hobbyist is likely to design using a
               | fresh tool like this wouldn't be. Hell, most signals
               | under a few MHz are quite tolerant of shitty routing and
               | would be just fine.
               | 
               | I worked with an RF engineer who'd been in the field
               | since the 70s, and he'd always use the auto-router for
               | anything "slow". If it was "digital dc" or digital logic
               | or under a MHz then it was auto-routed because he didn't
               | have time for that. Anything critical that carried RF or
               | drove a reference was hand-routed first then anything
               | left would get the auto-routing treatment. And this was
               | in a radio astronomy observatory!
        
               | civilitty wrote:
               | _> I worked with an RF engineer who 'd been in the field
               | since the 70s, and he'd always use the auto-router for
               | anything "slow". If it was "digital dc" or digital logic
               | or under a MHz then it was auto-routed because he didn't
               | have time for that. Anything critical that carried RF or
               | drove a reference was hand-routed first then anything
               | left would get the auto-routing treatment. And this was
               | in a radio astronomy observatory!_
               | 
               | Your example perfectly illustrates that autorouting is a
               | catch 22: in order to get something useful out of
               | autorouters you either have to (a) provide them with a
               | enough information on signal, DRC, and fab parameters OR
               | (b) have a design so simple that it doesn't really
               | matter. (a) requires subject matter expertise that
               | beginners won't have and (b) really is such simple point
               | and click that beginners don't gain anything from an
               | autorouter. The beginner already has to learn enough to
               | place components on the board before routing, which IMO
               | is where 80% of the leverage of expertise comes in
               | anyway.
               | 
               | The calculation changes if you're all bought in on an EDA
               | package like Altium and you know all about modular
               | schematics and PCB docs on with standardized PCB
               | layering. Then maybe you can start cobbling together
               | quick designs that are largely autorouted but again,
               | catch 22: you have to know enough Altium to know how to
               | do that and enough electronics to know how to select open
               | source modules and parts.
        
               | Alupis wrote:
               | I disagree. Learning the tools and skills to do a task is
               | the default assumption for anything - be it riding a bike
               | or building a SaaS.
               | 
               | If you cannot commit a few minutes to learn how to route
               | correctly, then you really are just "hoping" for
               | something magical to work.
               | 
               | Would you take the same position in software? Almost
               | certainly not - because it _is_ complex.
               | 
               | Sure, there's plenty of no-code or low-code platforms out
               | there - but why are they not more popular? Because they
               | universally suck and their target user quickly
               | "graduates" into real coding.
               | 
               | People asking/demanding auto-routers are asking a FOSS
               | project to commit a lot of time and resources (because
               | it's not trivial to implement!) to a feature a very small
               | subset of their userbase will ever use, and will also be
               | the most negatively impacted by said tool when it fails
               | them without them realizing.
               | 
               | Seriously, if your board layout can be done by an auto-
               | router then it _is_ a trivial board and you _should_
               | spend a few minutes learning the basics. There is
               | _nothing_ but upside in doing so.
        
               | carbotaniuman wrote:
               | I think this comment made a lot more sense in a world
               | without ChatGPT and Copilot - the popularity of those
               | things are off the charts!
        
               | Alupis wrote:
               | ChatGPT or Copilot cannot debug your hardware design.
               | 
               | Unlike software, all the "features" of a component are
               | not readily available to a tool like that. Maybe one day
               | they will be, but we're very far away from that. No two
               | component manufacturers do anything the same...
        
               | pzo wrote:
               | > Would you take the same position in software? Almost
               | certainly not - because it is complex.
               | 
               | Why not?
               | 
               | > Sure, there's plenty of no-code or low-code platforms
               | out there - but why are they not more popular?
               | 
               | I would compare software with auto routing and without
               | more to Python with C situation. Auto routing is more
               | like garbage collector to me. Should we discourage people
               | from programming in Python just because for hobbyist C or
               | C++ might too hardcore? It's not that they have to be
               | professional developers - why not let them learn how to
               | write even simple python script that help them processing
               | some text and do simple automation? It's not that
               | everyone need or want to write operating system.
               | 
               | After all today python is the most popular programming
               | language even though it mostly started being used in
               | education or basic scripting. Should we also forbid
               | people using ChatGPT to help with programming for doing
               | some creative coding? Let them have some fun.
        
               | deepspace wrote:
               | It's been 30 years since I was working closely with PCB
               | designers, but back in the day, the professional CAD
               | folks would absolutely run the autorouter first, and then
               | use that as a starting point to tweak the layout.
               | 
               | I would have thought that autorouting would have improved
               | in all that time, but from this conversation, it sounds
               | like it has become worse. What gives?
        
               | dvdkon wrote:
               | Back then, many boards used to be routed with vertical
               | traces on one layer and horizontal traces on another,
               | "Manhattan routing". Somehow, the circuits worked.
               | Nowadays you can't be so "careless" to hit EMI targets or
               | even to get a working board. Switching PSUs, data buses,
               | clock signals, all those have spacing, impedance control,
               | ground coupling and other requirements.
               | 
               | Maybe you could encode all of them in the schematic and
               | then let a modern algorithm suggest a board layout, but
               | in practice nobody seems to do it that way (note that I
               | am just a hobbyist with limited experience).
        
               | syntheticgate wrote:
               | I'd suggest design complexity has scaled at a faster rate
               | than the autorouting tech. In a closer-to-DC world years
               | ago, optimal routing was nice but often not a
               | requirement. In today's high-speed designs, proper
               | routing can be the difference between working and not
               | working, and there is a constant battle of constraints
               | and trade-offs that humans can deal with more
               | effectively. Attempting to constrain a complex design
               | such that an auto-router can be successful can often
               | result in an over-constrained problem which then makes
               | the auto-router unsuccessful.
               | 
               | More focus on hybrid routing tools where there is some
               | automation going on while a user routes things is
               | typically were you get much more useful help in modern
               | ECAD.
        
             | ShadowBanThis01 wrote:
             | Nobody's asking it to design a complete, multi-layer PCB.
             | I'm a pretty-near total noob and I would think that a 2-D
             | auto-router that would at least optimize the orientation of
             | components for the fewest trace conflicts might be possible
             | and useful.
             | 
             | Don't you think it'd be possible to create such a thing,
             | which would also create labeled solder points for jumpers
             | where traces needed to cross?
             | 
             | Maybe "rat's nest" already does this; I don't know what
             | that is.
        
               | dbrgn wrote:
               | Ratsnest means that you have thin lines indicating which
               | pads need to be connected. You can see them here:
               | https://librepcb.org/features/board-editor/board-
               | branching.g...
               | 
               | You start out the board deisgn by orienting your parts in
               | a way that there are as few intersections as possible.
               | Then you draw the connections, and the ratsnest lines
               | disappear one by one. If you have intersections, you need
               | to route around the part, or work with multiple PCB
               | layers to get rid of them.
        
               | Alupis wrote:
               | The main issue is the auto-router has no idea what any of
               | the components are or what their requirements are. It
               | just knows roughly physical dimensions and it's connected
               | nets (traces between pins). These component requirements
               | aren't something that can easily be "programmed" into the
               | tool either - every component has it's own requirements,
               | and they're not just electrical (such as needing certain
               | amount of space around a component, or not placing next
               | to other types of components, etc).
               | 
               | Without that knowledge, it's impossible to create a good
               | auto-router/layout tool. The tools often just stack
               | components as close together as physically allowed by the
               | necessary traces.
               | 
               | For very trivial stuff, it _might_ work ok. Anything
               | else, no chance unfortunately.
        
           | gaze wrote:
           | Professionals _do not_ use it. It's not helpful. If you get
           | your placement right, routing won't be so bad. If you get
           | your placement wrong, the auto router WILL land you with an
           | awful PCB
        
           | fnordpiglet wrote:
           | Newbies probably value it as it's a feature newbies use.
           | Newbies are people too. (Disclaimer: I'm a EDA newbie myself,
           | so I value it)
        
           | stavros wrote:
           | Agreed, I wouldn't use autorouting, it's really hard to get
           | right and thus it has invariably mediocre results. Plus, I
           | like routing by hand, it's calming.
        
           | stvltvs wrote:
           | It's been a long while since I've designed PCB, but doesn't
           | auto-routing provide a good starting point that the designer
           | can refine? I remember it reducing a lot of grunt work.
        
             | Alupis wrote:
             | It creates more problems than it solves for anything but
             | very trivial layouts.
             | 
             | It has no comprehension of the actual components it's
             | placing, or the nets it's routing. So it'll find a physical
             | layout that matches your schematic in a logical sense, but
             | the actual circuit may not work when it's finally assembled
             | (ADC placed next to a switching power supply, for example).
             | Some components have strict tolerances or needs, and some
             | types of designs require special considerations.
             | 
             | So, a newbie will click the button to auto-route and then
             | have the board fabricated and then do the final assembly -
             | then wonder why it doesn't work, or it sometimes works,
             | etc. If you don't have the skills and knowledge to do the
             | layout the "right" way, you likely don't have the skills or
             | knowledge to debug a bad board layout.
             | 
             | PCB layout is not trivial. Some folks spend an entire
             | career doing just PCB layout. For low-speed trivial
             | designs, you can get away with a lot of bad practices, but
             | it's best to invest some small amount of time learning the
             | craft.
             | 
             | However, general rule of thumb, if your design works on a
             | breadboard then you can probably make it work on a PCB...
             | probably.
        
               | aswanson wrote:
               | Adc near a switching power supply made me lol. Some guy
               | at a previous gig did that with 190v pwm motor drives. No
               | autotouter in the loop. Just a bad human.
        
             | CamperBob2 wrote:
             | Placement is usually as important as routing, if not more
             | so. At the same time, the act of thinking carefully about
             | placement will often making routing easier. I try to take a
             | holistic view -- I don't see routing as grunt work, or as
             | an unnecessary chore, but as part of the design process.
             | 
             | On a long-enough timeline, ML tools will become a natural
             | fit for placement and routing. It _is_ a rather dumb thing
             | for humans to have to deal with, at the end of the day, but
             | the existing tools are just not good enough to take over
             | the job. At least not the tools that most of us have access
             | to.
        
               | dragontamer wrote:
               | Unless ML tools know which nets have how much
               | current/voltages on them, as well as which ones are
               | sensitive to noise... as well as rise/fall times of each
               | pin, its a hopeless job.
               | 
               | Lets say you have a trace that's 4mm wide that skips
               | across a slot in the ground-plane. Is this good or bad?
               | 
               | 1. Why is it 4mm? Is this a high-current line / power
               | line of some kind? A crude power-plane that's just
               | oversized for a trace? Is this a switching regulator with
               | a bit of switching noise? Or is it a "quiet" power line,
               | like a battery or LDO-line?
               | 
               | 2. Is this trace actually ground? And the 4mm is to
               | "jump" across the gnd-slot to provide a controlled
               | return-path for some other line? What is the relationship
               | of this trace vs another trace?
               | 
               | ----------
               | 
               | If its a fat line on a switching power supply with a ton
               | of current, maybe its a bad idea. If its a fat gnd, maybe
               | its a good idea. Its all contextual. Its not very clear
               | how a hypothetical ML tool would figure out this context,
               | outside of like learning to read data-sheets and/or the
               | EE writing down the purpose (very precisely) on each
               | net... which probably is slower than just routing the
               | trace manually to begin with.
        
               | CamperBob2 wrote:
               | The tool will have access to the same data sheets and
               | SPICE/IBIS models that you do. It will know what to do.
               | 
               | Eventually.
        
               | dragontamer wrote:
               | Are you going to put the source-code of your programs in
               | there too? I'm not sure how a ML model would ever know
               | that... say... Pin A5 is a rarely-changing GPIO that's
               | effectively DC. Or that Pin-B6 is configured as an
               | analog-DAC in this particular application (and therefore
               | slowly changing).
               | 
               | Or hell, that PinC1 is an input vs output.
               | 
               | Modern chips have very flexible pins. Many
               | microprocessors (and MCUs) can configure any pin to be
               | input, output, tri-state output, pull-up output, or pull-
               | down output, for example, with different properties in
               | each state. Some pins can be analog (on-board op-amps),
               | others can be digital and high frequency, still others
               | can be digital but rarely-changing / effectively DC for
               | the lifetime of the application.
               | 
               | Each scenario changes how you'd route a trace.
        
             | dragontamer wrote:
             | Rats nest is good enough IMO. Just saying "Pin#20 needs to
             | be connected to Pin#88", with a visual indication that
             | they're not connected yet, is plenty. A Rat's nest is more
             | than enough to figure out which parts need to be placed
             | next to each other, at least for beginner boards with like
             | ~50 or fewer components on them (and maybe ~100 or less
             | nets/traces to manage)
             | 
             | The issue with PCB-design is that:
             | 
             | 1. Even the slowest ~4MHz microcontrollers have 1ns
             | rise/fall times, or 1GHz+ of high-frequency noise all over
             | the place. Faster chips have even faster rise/fall times.
             | 
             | 2. ~1GHz wavelength is ~30cm, meaning that a 7.5cm trace is
             | an effective antenna for 1GHz noise. As it turns out, 7.5cm
             | is well within the scope of typical PCB design. A faster
             | rise/fall time (ex: 0.2ns rise/fall time is 5GHz noise
             | instead) could have "antennas" as small as 2.5cm or 25mm.
             | 
             | 3. Vias have non-negligible inductance and resistance.
             | Modern signal design also requires the designer to think of
             | "the return path", so a 2nd nearby via to serve as a
             | capacitively-coupled via (IE: "Route a ground-via next to
             | any signal-via"), and other such rules, are rarely followed
             | by autorouters.
             | 
             | ------------
             | 
             | It looks like the professional tools are fixing this
             | problem by performing FEA of signals / coupling /
             | electronic flux, and helping the engineer visualize the
             | magnetic and electrical fields of the designed PCB-layout.
             | 
             | However, if you are a conservative human, you can get such
             | a feel for your circuit by thinking about return-paths and
             | mentally thinking about microstrips (ex: wire + ground-
             | plane return), or striplines (ex: ground-wire-ground plane
             | for internal layers). The return path is always on the
             | nearby ground plane, so it makes it very easy to think
             | about.
        
         | petsfed wrote:
         | >"Export formats: PDF, SVG, pixmap, BOM, pick&place,
         | Gerber/Excellon". None of which have enough info for import
         | into another EDA program. This thing is very self-contained,
         | which is unusual for an open source program.
         | 
         | The limitation here is that only KiCad has an open format for
         | design files to begin with. Maybe we should be agitating for a
         | better open-standard for schematic capture? I'd love to be able
         | to output a schematic from e.g. a spice simulation, then import
         | that into my ECAD suite. The netlist (which is part of the
         | Gerber output) is human-readable, so I suppose its possible to
         | extract the schematic from that. But then, it'll be
         | computationally expensive to arrange that information in an
         | easy-to-read format.
        
         | dbrgn wrote:
         | > How comprehensive is the part library?
         | 
         | A few thousand parts total, so: Still quite small.
         | 
         | > Is there auto-routing?
         | 
         | No, just ratsnest. The utility of autorouting was already
         | discussed in sibling comments.
         | 
         | > "Import formats: DXF". For what, the board outline?
         | 
         | It's mostly useful for the documentation layer or the Board
         | outline. For example when creating a Raspberry Pi HAT, or an
         | Arduino shield. It can also be used to import logos for
         | silkscreen, or the like.
         | 
         | > None of which have enough info for import into another EDA
         | program.
         | 
         | Can you give a concrete example of the use case you have in
         | mind?
         | 
         | > This seems to be is a marketing tool for some board maker.
         | 
         | It is not, and it becomes obvious if you spend even just a few
         | minutes reading through the website. It's mostly one developer,
         | who spent almost 10 years developing the software in his free
         | time, and who now tries to work on it full-time. Source of
         | income are donations, some EU funds and revenue sharing of some
         | fabs.
        
           | ShadowBanThis01 wrote:
           | Along those lines: Does anyone know what the best way to
           | contribute to these projects is, among those offered?
           | 
           | I will go to extra effort to avoid fees being imposed on the
           | recipient of the money.
        
             | dbrgn wrote:
             | I assume you're talking about https://librepcb.org/donate/?
             | Probably GitHub Sponsors (no fees at all) or OpenCollective
             | (fees depend on the payment method, a "platform tip" is
             | optional).
        
               | ShadowBanThis01 wrote:
               | Thanks! That is what I meant, and also for future
               | reference on other projects.
        
       ___________________________________________________________________
       (page generated 2023-09-28 23:00 UTC)