Author Topic: Finally moving over to KiCad - one road bump, can one skip CvPCB outright?  (Read 8793 times)

0 Members and 1 Guest are viewing this topic.

Offline XFDDesignTopic starter

  • Frequent Contributor
  • **
  • Posts: 442
  • Country: us
In Eagle, when I make a part in the schematic library, I can associate it to a few different footprints. Same goes for Altium. When I export schematic to go to PCB, the tool will pull in the netlist and stuff appropriate footprints.  I'm curious, is there a way to do this in KiCad, so I can skip the tedious process of CvPCB?

I've been doing some searching and found a few people liking the process Eagle had for one-click Schem-to-PCB mapping (which people seemed to think meant auto-routing and everything, which it is not), and some others complaining about the slowness of CvPCB (as well as stability), but I've not uncovered any result which explains how one might impart a preferred footprint to a schematic symbol, and then skipped CvPCB outright from there. This is literally the sole contention I have with KiCad. I've been able to do everything else I've wanted, but this step is just pointlessly needless.
 

Offline ElektroQuark

  • Supporter
  • ****
  • Posts: 1244
  • Country: es
    • ElektroQuark
Edit the schematic part and select there the footprint.

Offline XFDDesignTopic starter

  • Frequent Contributor
  • **
  • Posts: 442
  • Country: us
Edit the schematic part and select there the footprint.

That appears to be something I do manually, per part. Looking into the part-editor within a library gives a 'mask' for acceptable packages, but stuffing in a specific footprint does not carry over to netlist generation... :|

The aim here is to not have to manually fiddle with 200 discretes in a design doing things one-at-a-time, especially if it's something casual like a resistor. If I use RCRCW0603-2.74k as a library part, it would be nice to have a default assignment to VSHY_RES0603 in a set-it-and-forget-it kind of way. :\
 

Online langwadt

  • Super Contributor
  • ***
  • Posts: 4384
  • Country: dk
Edit the schematic part and select there the footprint.

That appears to be something I do manually, per part. Looking into the part-editor within a library gives a 'mask' for acceptable packages, but stuffing in a specific footprint does not carry over to netlist generation... :|

The aim here is to not have to manually fiddle with 200 discretes in a design doing things one-at-a-time, especially if it's something casual like a resistor. If I use RCRCW0603-2.74k as a library part, it would be nice to have a default assignment to VSHY_RES0603 in a set-it-and-forget-it kind of way. :\


afair, open it in the library editor,  click the big T and set the footprint

 
The following users thanked this post: XFDDesign

Offline XFDDesignTopic starter

  • Frequent Contributor
  • **
  • Posts: 442
  • Country: us
That's it! Thanks a ton!
 

Offline DD4DA

  • Contributor
  • Posts: 35
In eagle, a quite different workflow is used as compared in many other systems.

- You need to export a netlist from your schematic at first.
- The next step is to select the footprints you wanna use. Often, the electronic part is linked with a valid footprint.

An example: an STM32F407VG is definitly a 100Pin QFP package. This is fixed by the vendor  and often, the vendor typ lable will be enought to define the footprint. the opposite of them is a resistor or capacitor, who's just defined by the resistance or capacity in the schematic. The footprint is depend on the used size and shape and not figured out by the R printed on them selve. The Part list define them more detailed, but this is not available for the PCB.

if all footprints are assigned to the parts in the netlist, the PCB could import them and show it.
Now you can place them on the pcb and route them.
If you want to decide to use an autorouter like elecctra or spectra, an export of the complete unrouted but placed netlist is required. I had done this several times and used elecctra, a shape-based router. The result is usable but requires some manual rerouting.

This was a quick overview of the workflow of using KiCAD. A big advantage is the 3D view for a floor planing or just, if the parts are fit on the PCB. The libraries are wide available.

Autorouting needs a lot of more steps to get a good quality, but the definitions are also required for a simulation.

 

Offline XFDDesignTopic starter

  • Frequent Contributor
  • **
  • Posts: 442
  • Country: us
I got all of that. It literally came down to CvPCB being a needless PITA.

Honestly the migration in flow from Eagle to KiCad was very close to seamless. The extra step of generating a netlist isn't new to me as I had to do that in the old days from OrCad to PADS.
I can see myself doing a lot with KiCad now, and will pitch in the "upgrade" money I was intending on expending for the Eagle upgrade (that won't be happening) as a donation for the group.
 

Offline hermit

  • Frequent Contributor
  • **
  • Posts: 482
  • Country: us
I find it easier to locate footprints in PCBNew and then assign them in the schematic.  If I'm going to use a part more than once I'll assign the footprint to the first one and then copy it for the rest. In the end it is about maintaining personal libraries though.  You can assign footprints to symbols.  I think the term is 'atomic part'. 

 Over the past few months it seems the Kicad user group has picked up steam.  Read that as more people willing to participate by answering questions.  If you're going to stick with Kicad it might be worth looking into for you.
https://forum.kicad.info/
 

Offline bson

  • Supporter
  • ****
  • Posts: 2259
  • Country: us
I got all of that. It literally came down to CvPCB being a needless PITA.

Honestly the migration in flow from Eagle to KiCad was very close to seamless. The extra step of generating a netlist isn't new to me as I had to do that in the old days from OrCad to PADS.
You don't really need to generate a netlist, just hit F8 in the schematic editor to update the PCB.  The first time you do it it asks if you want to create a PCB design file.  As far as I know you never actually need to create a netlist, but importing changes via a netlist offers more detailed options on how to incorporate updates, for example, whether you want to retain orphaned traces.  (This is referring to the nightly builds, it's possible v4 still required netlist generation.)

If you're importing Eagle projects, make sure to use the nightly builds; this is one of the functions that has gotten a lot of attention lately.
 

Offline XFDDesignTopic starter

  • Frequent Contributor
  • **
  • Posts: 442
  • Country: us
You don't really need to generate a netlist, just hit F8 in the schematic editor to update the PCB.  The first time you do it it asks if you want to create a PCB design file.  As far as I know you never actually need to create a netlist, but importing changes via a netlist offers more detailed options on how to incorporate updates, for example, whether you want to retain orphaned traces.  (This is referring to the nightly builds, it's possible v4 still required netlist generation.)

If you're importing Eagle projects, make sure to use the nightly builds; this is one of the functions that has gotten a lot of attention lately.

A lot of these means of expediting work were omitted in the user's guide I went through today. Thanks for the tip!

On my migration, I'm not actually bringing over old eagle projects. They're staying put. With how I work, it's better to burn it down and start anew than to fidget with old habits.
 

Offline ElektroQuark

  • Supporter
  • ****
  • Posts: 1244
  • Country: es
    • ElektroQuark
That's it! Thanks a ton!

That's what I was trying to say. "Edit ...", of course edition must be done with the Library editor.
The modified part will have the footprint associated for future uses.

Offline Deridex

  • Regular Contributor
  • *
  • Posts: 166
  • Country: 00
  • IMHO
Is there any releasedate for the v5 alr ?
I can't wait to test it :scared:
 

Offline ElektroQuark

  • Supporter
  • ****
  • Posts: 1244
  • Country: es
    • ElektroQuark
Try the latest release candidate.
« Last Edit: May 11, 2018, 06:58:32 pm by ElektroQuark »
 

Offline bson

  • Supporter
  • ****
  • Posts: 2259
  • Country: us
A lot of these means of expediting work were omitted in the user's guide I went through today.
Yeah, the software has changed so much many of the guides are getting a bit long in the tooth.  In many cases, particularly relating to the component library editor, even screenshots won't look familiar, and step-by-step instructions no longer work.  It used to be you'd create a component and save it to a new library; now you create an empty library and then add components to it.  When you add a component it asks if you want to add the library to your project (or update the schematic if it's already added previously).  There's a component/library navigator on the left, and you can easily move between libraries and components.   It's a whole lot more intuitive (the old one was rather convoluted) but on the flip side it needs new guides and instructions. :/
 

Offline Bassman59

  • Super Contributor
  • ***
  • Posts: 2501
  • Country: us
  • Yes, I do this for a living
I got all of that. It literally came down to CvPCB being a needless PITA.

CvPCB is a vestige of the early days of KiCad. Many users never bother with it, and have created "atomic" libraries where symbols always have an associated footprint and some kind of unique part number (either manufacturer's or a house/company number). Many of the newest KiCad official libraries are atomic, too.
 

Offline Doctorandus_P

  • Super Contributor
  • ***
  • Posts: 3313
  • Country: nl
An easy way to "circumvent" CvPcb for the generic parts such as jelly bean resistors / capacitors is to first place such a part, then hover the mouse over it and pres "e"dit and assign a footprint. For the other components simply copy that first one and change the value to what you want.

CvPcb is however particularly usefull if you want to change a lot of footprints, for example if you want to transform a Through Hole design to SMD.
 

Offline Bassman59

  • Super Contributor
  • ***
  • Posts: 2501
  • Country: us
  • Yes, I do this for a living
An easy way to "circumvent" CvPcb for the generic parts such as jelly bean resistors / capacitors is to first place such a part, then hover the mouse over it and pres "e"dit and assign a footprint. For the other components simply copy that first one and change the value to what you want.

The better way is to create a part in your symbol library, call it say R0805, with a standard resistor symbol and a callout for an 0805 resistor footprint. Create once, use everywhere.

Quote
CvPcb is however particularly usefull if you want to change a lot of footprints, for example if you want to transform a Through Hole design to SMD.

That of course changes the part you have to order.
 

Offline Gibson486

  • Frequent Contributor
  • **
  • Posts: 324
  • Country: us
CvPCB is old and legacy. I have met a few people who still use it, but even they admit it is not the best thing to use.
 

Offline bd139

  • Super Contributor
  • ***
  • Posts: 23017
  • Country: gb
I have been blindly using CvPcb for a while now.  :palm:
 

Offline hermit

  • Frequent Contributor
  • **
  • Posts: 482
  • Country: us
I have been blindly using CvPcb for a while now.  :palm:
The only problem I see with CvPcb is you have to know what footprint you are using in advance.  As a novice I find it easier to locate footprints in PCB_new.  If using more than one of something I look it up and assign it along with other edits in eeschema to the first one and then just keep copying.
 

Offline bson

  • Supporter
  • ****
  • Posts: 2259
  • Country: us
It's kind of useful to review footprints for consistency though.  For example that you use the same 0402 resistor footprint and haven't mixed  it up.  It's not a big deal of course, but it's nice to have the option of an overview.
 

Offline bd139

  • Super Contributor
  • ***
  • Posts: 23017
  • Country: gb
I have been blindly using CvPcb for a while now.  :palm:
The only problem I see with CvPcb is you have to know what footprint you are using in advance.  As a novice I find it easier to locate footprints in PCB_new.  If using more than one of something I look it up and assign it along with other edits in eeschema to the first one and then just keep copying.

I think my problem was I read the Kicad tutorial which has explicit footprint selection with CvPcb and never even noticed the footprint option in schematic capture  :palm: .. much easier!

It's kind of useful to review footprints for consistency though.  For example that you use the same 0402 resistor footprint and haven't mixed  it up.  It's not a big deal of course, but it's nice to have the option of an overview.


Agree with that.
 

Offline XFDDesignTopic starter

  • Frequent Contributor
  • **
  • Posts: 442
  • Country: us
It's kind of useful to review footprints for consistency though.  For example that you use the same 0402 resistor footprint and haven't mixed  it up.  It's not a big deal of course, but it's nice to have the option of an overview.

The first thing I did once KiCad was installed was throw out all of their canned libraries. I home-roll everything.
 

Offline ElektroQuark

  • Supporter
  • ****
  • Posts: 1244
  • Country: es
    • ElektroQuark
Yep, same here. I made them atomic, so part, symbol and footprint are linked from start.
They are available for free download from my blog if you want to take a look at them.

Offline Wilksey

  • Super Contributor
  • ***
  • Posts: 1329
Does KiCAD allow you to select the footprint based on number of pins directly?  That was one feature I liked about CvPCB, I don't recall if it followed through to the built in library assignment tool, can anyone comment V4 Stable and V5 RC2?  I would look but it's on another machine and if I'm honest, i'm feeling too lazy to look it up.  ;D
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf