Valid invalid footprints - Page 1
Forum section: electronics / general

author: PlainName
author_rank: Super Contributor
timestamp: October 16, 2020, 08:00:08 pm
content: I am after a method of getting an error, or at least a warning, if I place a component without verifying the footprint.The problem this is meant to fix is that for some quick projects I tend to use a generic symbol, for instance a resistor or capacitor, with the intention of completing the value and perhaps source until later. But the footprint needs specifying at some point, and the generic symbol will have a bunch of generic footprints - 0603, 1206, 0.4 axial, etc. OK so far: plonk the resistor down, going to be an 0603 no matter what value, burn the board then see about where to get it.Sometimes, I forget about the footprint until almost too late. Or I do a global assignment but a solitary resistor isn't included. Then, typically, the default generic footprint gets used instead of the one that should be.Of course, I could have no generic footprint but then I'd have to mess about assigning one from somewhere every time. The ideal would be to have a set of associated footprints but not have a default one, so generating the PCB would throw up an error if I haven't assigned one by then, but I get the benefit of the picklist to choose one. However, if there is one associated, Altium will use it by default.I thought about having a default and then deleting the source, so Altium would complain that it couldn't be found when getting to the layout. But I'd need it to start with in order to assign it, and creating then deleting the invalid default for every component would be too much of a drag. Compiling the library would cause a complaint too.So, and sorry if it took a while to get here, I figured what I need is a pukka footprint, to be used as the default, that will fail something only when it gets to being on the PCB. Perhaps pads 1mil apart or 1" diameter - the aim is to unambiguously let me know I've missed something (and earlier rather than later).Any other ideas to achieve this?

author: Pseudobyte
author_rank: Frequent Contributor
timestamp: October 19, 2020, 05:32:28 pm
content: I am not sure why you operate like this...but to solve your problem.Just make a new schematic library with your default symbols and leave the footprint blank until you are ready to package into the layout.Without a proper component management workflow you are bound to make errors though. It is tempting to just change a component value or part number to get it done quickly, but as you are seeing it catches up with you, and sometimes you are too late to do anything.

author: PlainName
author_rank: Super Contributor
timestamp: October 19, 2020, 07:13:27 pm
content: QuoteDepends what I'm doing, but as someone else noted around here, sometimes you don't know what's actually going to go in the footprint until you get to the soldering part.QuoteWell that seems to be the problem - you can't have a blank footprint if you have any associated. And if you don't have any associated then you've got the hassle of finding an appropriate footprint to stick in later. You might as as well use the proper component database.

author: ajb
author_rank: Super Contributor
timestamp: October 20, 2020, 04:21:41 pm
content: If this is the way you want to work, then I think your solution of having a footprint with some obviously wrong features is probably the best you can do. It could be something like 15mm silkscreen letters that say "REPLACE ME" and if it has no pads you should get errors when you push from sch to pcb that pins aren't able to be matched. I'm not sure I'd rely on a design rule violation to call attention to it.

author: PlainName
author_rank: Super Contributor
timestamp: October 20, 2020, 06:56:38 pm
content: It's a consequence of using the designer as scratchpad. If you know what you want before you start then it's not a problem to place actual parts, but often you 'sketch' a design without knowing what you want in detail. For instance, you want a resistor here... probably 10K, maybe 4K7...I can see three ways of dealing with this:1. Use a generic no-value no-footprint resistor symbol.2. Use a generic no-value multi-footprint resistor symbol.3. Use an actual specific resistor, wrong value and possibly footprint, as placeholder.It is 2 and 3 that are prone to mistaken footprints, so using the full-monty corporate database may not be a solution.QuoteYou get a warning or error when compiling the library.QuoteNo, but it would be an extra pair of eyes watching, kind of thing. In the same way that you don't rely on an "Are you sure?" popup to prevent an important file being deleted (you might press shift-del and bypass that), but if it works once it's done good.

author: free_electron
author_rank: Super Contributor
timestamp: October 25, 2020, 03:41:15 pm
content: whoa . that is no way to work. 1 part = 1 symbol + 1 footprint. this while multiple footprint per symbol is a recipe for disaster

author: PlainName
author_rank: Super Contributor
timestamp: October 25, 2020, 04:27:45 pm
content: So people keep sayingOne problem with using a dblib is maintaining the database. It's a very very valuable thing and would suck mightily to lose it in any way, so any solution needs to be robust. I use P&V, which is not only old and obsolete but the vendor has sadly moved to a virtual realm. However, it's proven itself to be jolly solid and I have no problem with the data integrity. Which is good because everything is in it! Unfortunately, I can't actually connect them up without some serious messing about with my setup (mainly down to AD now being 64-bit ODBC only).There are alternative databases, but they would mean copying everything over (or starting again), and then there are problems with how robust they are. Most are either Linux based or online - I'm not a Linux guru and I ain't paying $35/month. Subscriptions suck, but particularly suck when your entire inventory access is dependent on it.

author: free_electron
author_rank: Super Contributor
timestamp: October 25, 2020, 08:59:54 pm
content: Quote from: dunkemhigh on October 25, 2020, 04:27:45 pmuse an excel spreasheet. works equally fine.

author: PlainName
author_rank: Super Contributor
timestamp: October 26, 2020, 12:38:12 am
content: Excel as a database? The horrorLooking at this again now it seems I might be in luck, in that I can persuade the 64-bit driver to coexist (it refused when I originally tried). But moving on...I think the solution to my original query might be to just have a generic symbol without a footprint. That should cause pause for thought if it's not updated before layout, and at that point I can either choose an actual real in-the-database part or assign a footprint if I don't know what it will be.