Preserve parameters when updating components - Page 1
Forum section: electronics / general

author: Roze
author_rank: Contributor
timestamp: May 26, 2015, 01:01:24 pm
content: Hi,I'm fairly new here and even more new to Altium Designer.I've been making most footprints/symbols myself since compared to eagle, there is hardly any libraries to get hold of.In any case, to the question, when I do "Update Schematic Sheets" from the symbol context menu in SCH Library Editor, it replaces all the values in the components, including parameters and comment strings. This is highly annoying since I have to go through the schematic and fill in the values for ex. capacitors again.Eagle does not update the name nor value fields and I feel that is more how I would like it, so is it possible to get altium to do the same?Second question, when we are at it, should a parameter Value or the Comment-string be used for the value of ex. a resistor or capacitor?//Regards

author: ajb
author_rank: Super Contributor
timestamp: May 26, 2015, 03:15:37 pm
content: Altium is really designed around the idea that one library component maps to one physical component, period. So the expectation is that you'd have one library part for a 10k resistor, another for a 4k7 resistor, etc etc. If you don't care to use all of the design automation and document generation facilities AD has to offer, then youcanuse generic symbols and manually manipulate parameters the way you're doing, but because Altium isn't designed to work that way you're going to be fighting an uphill battle. I'd suggest learning to work with Altium, it's a bit more work to setup but it's worth it in the end. If you want to be able to reuse schematic symbols efficiently, then I'd recommend using a DBLib--adding a new part to a DBLib is as easy as adding a line to a spreadsheet or database that links an existing schematic symbol to an existing footprint with whatever parameters (MFR, PN, value, tolerance, etc) you want.As far as using the comment field to hold the value, that's what I do. There are any number of different ways to accomplish a given task in AD, so don't take this as gospel, but the special handling that comments get is very helpful in the PCB editor. All of my schematic symbols have the default comment set to "=Value", which automatically sets the comment field to the 'value' column in my DBLib. I have a few symbols that also use parameters to display other information from the database on the schematic where that's important to the design (IE, dielectric for MLCCs) but I wouldn't get too crazy with it.

author: Roze
author_rank: Contributor
timestamp: May 26, 2015, 10:36:47 pm
content: Seems like DBLibs is a hassle and that creating a new symbol for every single resistor/cap value is suboptimal like hell... So I guess I'm left with the option to either write a plugin or to never update a schematic symbol after I make it...Ty for the info.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: May 26, 2015, 10:58:47 pm
content: I disagree; Altium is designed to support BOTH having a generic component in the library, and doing it part-per-symbol.NEVER UPDATE FROM THE LIBRARY!Even if you're doing per-part, the update resets the label positions, and any custom labels. And even for the most pedantic per-part scheme, there are good reasons to have custom labels: the best example being a series of connectors, all named differently in the comments, but using the same purchased part and BOM line item.As an armchair typographer, it bothers me to no end that updating from library resets label positions. I like to have them nicely centered and snapped to grid, in a few standard orientations. It bothers me even more that there's no control over the stupid defaults... but I digress.The proper solution is to select Update From Libraries, in the schematic view. This not only gives you more control, but indeed gives youcomplete controlover what parameters should be updated. You can exclude designator and comment, and avoid label resetting this way.Tim

author: Roze
author_rank: Contributor
timestamp: May 26, 2015, 11:00:39 pm
content: Thank you very much!I thought I was doomed.

author: sean0118
author_rank: Frequent Contributor
timestamp: May 29, 2015, 02:55:15 am
content: Quote from: T3sl4co1l on May 26, 2015, 10:58:47 pmI'm having the opposite trouble, I can'tincludethe designator in the update.I've changed the default designator of several library components, but updating from the schematic view isn't updating to the new 'default designator'.Any thoughts?

author: T3sl4co1l
author_rank: Super Contributor
timestamp: May 29, 2015, 03:27:13 am
content: Designator I don't think usually changes (for...obvious reasons?).You might be able to reset it via annotation. The annotation dialog lets you control which components get assigned, reset, sorted, etc., and over what numerical ranges.You could also select them manually (via SCH List or Filter query), and use the Inspector to find-and-replace the string. (Select the components or their designators, I don't think it matters -- they share the same common value. Though they call it a different parameter (Name, or Text, or.. something like that, I'd have to check really).A replacement string is written:{was=becomes}You can have the selection:RV4, RV9, RV23, ...and on the Designator = "..." row, enter the string "{V=}" (no quotes). "V" is replaced by "", and now you getR4, R9, R23, ...To add it back in, you'd write {R=RV}.Only strings which contain the substring are affected, so this comes in handy for certain renumbering activities.You can list multiple substrings; they are evaluated in order I think. That looks like,{1=2,2=3,3=4}replaces all instances of "1" with "4" (rather useless, but if they weren't chained, obviously, it would be effective). Or you can write out{1=2} <ENTER>{2=3} <ENTER>etc. Same thing.There's also some functions that can be used if you bring up the "..." dialog (specifically, they are a subset of Pascal string functions -- you'll have to look up the list to see what Altium actually supports). The Copy(field, offset, length) function is probably the most useful (e.g., if you want to make a Part's Comment include properties like X1/Y1 position or...!?), or of recasting part of the field itself (i.e., for the designator's Text field, use "!" to reference itself, then cut down to the numerical part, and add/subtract an offset, to shift a bunch at once).Or you can brute-force it by selecting the parts in the List, turning on "Edit" mode, and pasting in an array from a spreadsheet.Aaaaaaaand, I'm sure Free_Electron has a selection of scripts or tools for such things handy... which I still haven't checked out yet, to my dismay I'm sure!Tim

author: sean0118
author_rank: Frequent Contributor
timestamp: May 29, 2015, 03:53:00 am
content: Thanks Tim,That probably explains why I couldn't find an option to update the designators. Lesson learned to choose correct designators from the start, I'll remember that now...I get what you mean by updating the string, I'm lucky though and don't have too many components that need changing, so I guess I'll just delete them and replace.When you mention scripts it's making me think there's a whole new world to Altium I don't know about, I'll have to look into that!