← Back to team overview

kicad-developers team mailing list archive

Re: [fun feature request] Create PCB from schematic with one click :)

 

The "spring" constants in a force directed graph algorithm could be set by
a user given priority or even by the length of schematic wires.

On Tue, 6 Mar 2018 05:53 Jon Evans, <jon@xxxxxxxxxxxxx> wrote:

> In many commercial tools you can use some or another feature to mark up
> the design at the schematic level with what components "go together".
> Then that information is used during PCB placement, the first-pass arrange
> of components when you start designing a board can place those components
> together, but it is also possible to group them together and move as a
> group easily, etc.
>
> There are even some tools that automatically identify bypass capacitors
> (did the schematic have a capacitor drawn right near a pin on an IC?  In
> that case, assume it's a bypass cap) and can place them right near the IC
> (and run ERCs to make sure you don't have missing bypass caps, DRC to make
> sure they are close enough to the power pin in the layout, etc)
>
>
>
> On Mon, Mar 5, 2018 at 1:49 PM, Russell Oliver <roliver8143@xxxxxxxxx>
> wrote:
>
>> In terms of automatically arranging  components a force directed graph
>> algorithm may work quite nicely, especially if the algorithm is seeded with
>> the layout of components on the schematic.
>>
>> A simplistic version would be to just arrange components on board sheet
>> as to their position on the schematic sheets.
>>
>>
>> On Tue, 6 Mar 2018 05:07 Andy Peters, <devel@xxxxxxxxx> wrote:
>>
>>>
>>>
>>> > On Mar 5, 2018, at 10:49 AM, Wayne Stambaugh <stambaughw@xxxxxxxxx>
>>> wrote:
>>> >
>>> > I was thinking one level of abstraction higher where I just input my
>>> > design requirements and it spits out a schematic, full simulation to
>>> > match the design requirements, and a completed board layout.  That
>>> would
>>> > make my job a *lot* easier. ;)
>>>
>>> Maybe it can do my FPGA design for me, and also write firmware for the
>>> ARM processor too! Why am I doing all of this hard work when I could be
>>> drinking coffee and reading the New York Times?
>>>
>>> > All kidding aside, I was told by a very highly skilled board designer
>>> > not to waste our time with auto-routers because no one actually uses
>>> > them except for the simplest designs with lots of free board space and
>>> > few or no routing restrictions.  This is someone who uses Altium in his
>>> > day job and has laid out far more boards than I have.
>>>
>>> At the previous day job, we did VME and CompactPCI single-board
>>> computers, and the layout people took advantage of full-up Specctra
>>> autorouting. The designs had a lot of wide parallel buses and suchlike
>>> which could be autorouted, but there was still plenty of stuff on those
>>> boards which needed to be routed manually. And setting up constraints for
>>> the autorouter was still a couple of days work.
>>>
>>> At the current job everything is smaller. Each product has multiple
>>> boards that need to connect correctly. Boards are mixed signal, they have
>>> power supply parts, there are connectors that poke through the enclosure,
>>> etc etc etc and suffice it to say we never autoroute. Assisted routing,
>>> like the Kicad push-and-shove, and Altium’s “bus routing” (a feature I’d
>>> like to see in Kicad, for sure!) goes a long way.
>>>
>>>
>>> > I'm guessing auto-routers appeal to hobbyists rather than
>>> professionals.
>>>
>>> How many questions on forums do you see from hobbyists asking about how
>>> to autoroute, or wondering if the results from the autorouter are good?
>>>
>>> -a
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~kicad-developers
>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help   : https://help.launchpad.net/ListHelp
>>
>>
>

References