So I lay out boards fairly often, and something that keeps annoying me when trying to drag SMD components is that it is inconsistent where the center of the selection is. It often selects the pad, and I always want to drag by the centroid. When I am working with a coarse grid and want components aligned it is really annoying to try and select the center of the package rather than a pad. Is there any way to make it so that every time I select a package, that it is moved by the centroid rather than selecting a pad?
You need to place the footprints in personal libraries, change the anchors (third icon from bottom, RHS), then work with those footprints rather than Kicad Library footprints.
It is a bit of an effort to build up your original libraries, but it is only done once.
Does a D-pak have a useful “centroid”?
That makes sense, I have already started making my own footprints for a variety of things so this isn’t too difficult.
The easiest way I found was in the footprint editor,
scroll through the Kicad libraries on the left,
highlight the footprint you wish to copy
File > Save As
keep the name, scroll through the list of libraries 'till you find your personal libtary in which you wish to place the footprint, highlight
Save.
Close the Kicad footprint
Open your newly saved footprint in your personal library
Change the anchor
Save.
Much quicker to do than read or type.
Just take a little time set up your libraries first. Changing libraries later is a PITA.
There are a few ideas in this and this other FAQ.
You taught me something I did not know about. But…FWIW my D-pak “center” point is the center of the heatsink tab pad. That seems to be pad #3. Long live consistent inconsistency!
“Change the subject” department:
If we are going to discuss annoyances, my “pet peeve” is schematics diagrams which are spread out much larger than needed. It can take what could be schematic which is easily read in a single view, and require that you zoom and pan in order to read it. This peeve extends back in time to schematics which were hand drawn by a draftsman on an “E” sheet when it could have fit very nicely on a “B” sheet. OK maybe I exaggerate somewhat. Nowadays it applies to schematics in LTSpice drawn by people I work with.
My centroid is usually where pin 2 isn’t. ie. Where it has been amputated
Is there any way to make it so that every time I select a package, that it is moved by the centroid rather than selecting a pad?
I can feel you. The flexibility of kicad is nice, but for me (my workflow) the flexibility is more often distracting than helpful. But because kicad is built around the “flexibility”-paradigm we will have to adapt.
To give a little bit constructive help: you can disable the “pad”-checkbox in the selection filter (bottom right). This leaves the anchor point and the geometric centric point as dragging point for the footprints. If you use a symmetrical footprint you can both points to be the same (in your own footprints, see hint of jmk).
I don’t understand how it can help.
I use only footprints from my own library and very often have the problem that after some footprints moving I have them out of grid while I want to have them all in grid.
It is because when moved they are sometimes caught not by their center but by one of pads.
I thought about it but always when damage at PCB is already done
you can disable the “pad”-checkbox
I thought about it but always when damage at PCB is already done
yes, currently the “pad disabling” (in the selection filter) is not very convenient (for the power user). Imagine I (or you) want to move/drag some footprints:
- first you have to think/remeber of this pad-disabling
- it requires to move the mouse away from the footprints into the bottom right cormer of the screen
- click the pad-checkbox (the checkboxes a relatively small compared to standard icons - which is generally good regarding screen space, but pointing at them gets more difficult)
- move mouse back to the central canvas, do the movement-work.
- try to CTRL-click some pads for highlighting connected tracks → remember: oh, dont works with pads disabled
- so repeat the complete procedure and re-enable the pads
This is normally to cumbersome for me - so normally I still leave the pad-checkbox enabled. This requires than more zooming into the board-view (to really distinguish between footprint-anchor and pad-anchor) and more concentration during the work (footprint movement), but it’s my current workflow.
I can think of some improvements, but none is matured enough for a god feature-request:
- added global preferences-checkbox to disable “movement by pad anchor”. But I also don’t like a overfill of preferences setting - a setting for every niche-demand is not the solution.
- hotkey for the selection filter
- save of selection-filter settings and recall this saved settings with hotkey
my too.
I think it would be good.
The other (and in my opinion better) solution would be to not allow to move footprints by kipping it for anything other then center point (defined anchor point).
Who needs to move footprint to fix one of its pads to grid? If you (reading it) need it just tell us what for it is needed.
Since V6 or V7 I have all the time problems with my footprints lost grid. I don’t remember having that problem with V5 ever.
I have designed all my footprints that way that they have Courtyard rectangle in 0.1mm grid and when placing footprints (I work with 0.1mm grid) of a block of schematic I just place them with their courtyard rectangles touching each other. That way I know i used a minimum space needed what can be helpful when I will be later placing the blocks at limited PCB space.
From time to time I notice that I can’t place a footprint touching the other because those one is out of grid.
Who needs to move footprint to fix one of its pads to grid? If you (reading it) need it just tell us what for it is needed.
Align a footprint to another by pads is useful for instance for connectors: use a pad as anchor point, than this movement snaps nicely to a already existing pad of the next connector. Than use CTRL+M (for move exactly) to move 5.08*xx (with 5.08 as example-pitch of that connector) to the side.
So there are usecases for “moving by pad anchor”, but (for me) only seldom.
Maybe open a feature-request to disable “moving by pad anchor”, let’s see much support we get and what the developers tell us.
What about:
The “Grid/Snap to” is disabled whilst the “Ctrl” key is held down. Maybe a similar feature to disable pad grabbing when moving footprints?
Any thoughts???
I would rather see it opposite. Additional action to grab for the pad.
Either way, it doesn’t matter.
The idea was to hold a key down while using the mouse either disabled or enabled the pad grab.
The idea was to hold a key down while using the mouse either disabled or enabled the pad grab
Could work. Just tested, the CTRL-key is not used at the start of the footprint dragging (movement). For moving footprints with mouse-click this could work.
But the modifier would not work for the hotkey “move”-command, it would just consume a second hotkey-combination: A “M” as normal move, and “CTRL+M” is a second hotkey combination (I use it for move exactly currently, and “Shift+M” for move with reference)
I suppose it is such kind of behavior that single user very rare wants to change it. For such kind of setting I think the better place is in Properties settings than in modifier keys which can be used for more frequently changed by single user options.
I can’t imagine me having a need to move footprint grabbing it by pad. Till now it only makes me a mess at PCB that I have to correct when I notice it.
So if such setting would be possible I will have it set once and forget forever.
@mf_ibfeew
I didn’t mean use the Ctrl key, I meant perform a similar function but with a different key.
Now I’ve slept on it, I don’t think this is a great idea because when it is wanted, it will be used for a considerable time. ie. as long as it takes for final placement.
Better idea is a hot key to turn the pads function on and off or as @Piotr suggests, a Properties setting.
We have a compromise in the Selection Filter, so the circle continues.
This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.