Update footprint doesn't update text position/style/visibility

Bug #1753286 reported by Bernhard Stegmaier
26
This bug affects 4 people
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Medium
Jeff Young

Bug Description

Import schematic from eeschema to pcbnew via "Update PCB from Schematic".
Go to footprint editor and change position/visibility/layer of value field (nothing else).

Tried to update this footprint / all footprints / all footprints that match the name, but changed footprint doesn't show up (i.e., I do not see any changes in the value field).

Version:
<<<
Application: kicad
Version: (2018-02-08 revision 54ce01f8d)-master, release build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.54.0 LibreSSL/2.0.20 zlib/1.2.11 nghttp2/1.24.0
Platform: Mac OS X (Darwin 17.4.0 x86_64), 64 bit, Little endian, wxMac
Build Info:
    wxWidgets: 3.0.4 (UTF-8,STL containers,compatible with 2.8)
    Boost: 1.59.0
    Curl: 7.55.1
    Compiler: Clang 9.0.0 with C++ ABI 1002

Build settings:
    USE_WX_GRAPHICS_CONTEXT=ON
    USE_WX_OVERLAY=ON
    KICAD_SCRIPTING=OFF
    KICAD_SCRIPTING_MODULES=OFF
    KICAD_SCRIPTING_WXPYTHON=OFF
    KICAD_SCRIPTING_ACTION_MENU=OFF
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_SPICE=OFF
>>>

Revision history for this message
Bernhard Stegmaier (stegmaier) wrote :

Forgot:
If I delete the footprint and again do a "Update PCB from Schematic", then I get the new footprint with the changes of the layer field.

Revision history for this message
Bernhard Stegmaier (stegmaier) wrote :

Sorry... should read "value field" of course, not "layer field".

Revision history for this message
Jeff Young (jeyjey) wrote :

The theory is that if the board positions/sytling of the texts are different from the library versions then you have probably hand-tuned them and don't want that lost. I think this theory is mostly valid.

Never-the-less, this surely ranks as the #1 reported not-a-bug.

I can think of two things we might do to improve this situation:

1) have a checkbox on whether or not you want to reset the positions/styling of the text
2) have a flag that indicates whether the user has ever modified the position/sytling on the board; reset positions/styling if not

(1) kind of foists the problem off on the user, but (2) will not doubt still result in bugs getting files (though perhaps not as many).

Thoughts?

Revision history for this message
Wayne Stambaugh (stambaughw) wrote : Re: [Bug 1753286] Re: Update footprint doesn't work

I would rather let the user decide. Anything that makes an assumption
about what the user wants will just lead to more bug reports.

On 03/04/2018 02:13 PM, Jeff Young wrote:
> The theory is that if the board positions/sytling of the texts are
> different from the library versions then you have probably hand-tuned
> them and don't want that lost. I think this theory is mostly valid.
>
> Never-the-less, this surely ranks as the #1 reported not-a-bug.
>
> I can think of two things we might do to improve this situation:
>
> 1) have a checkbox on whether or not you want to reset the positions/styling of the text
> 2) have a flag that indicates whether the user has ever modified the position/sytling on the board; reset positions/styling if not
>
> (1) kind of foists the problem off on the user, but (2) will not doubt
> still result in bugs getting files (though perhaps not as many).
>
> Thoughts?
>

Revision history for this message
Bernhard Stegmaier (stegmaier) wrote : Re: Update footprint doesn't work

OK, I can understand that.
But, that makes it somehow impossible to fix text positions of a footprint all at once in a PCB.
And, like it is, it just looks like if it doesn't work.

I would vote for (1)... I even wouldn't do a checkbox, but maybe just a confirmation popup like "This will reset all your hand-tuned matching footprins. Do you want to continue?".
The popup only when changing more than the current selected footprint.

Revision history for this message
Wayne Stambaugh (stambaughw) wrote :

@Bernhard, your solution would prevent users from updating the footprint while keeping their current footprint text positions and text sytle. I would be opposed to this. I rarely want to change the footprint text position, size, or style when I update a footprint. You solution would force me to manually restore these settings when I just want the footprint pads and silkscreen outline updated.

Jeff Young (jeyjey)
summary: - Update footprint doesn't work
+ Update footprint doesn't update text position/style/visibility
Jeff Young (jeyjey)
Changed in kicad:
status: New → Triaged
importance: Undecided → Medium
assignee: nobody → Jeff Young (jeyjey)
Jeff Young (jeyjey)
Changed in kicad:
milestone: none → 6.0.0-rc1
Jeff Young (jeyjey)
Changed in kicad:
status: Triaged → In Progress
Revision history for this message
PCB Wiz (1-pcb-wiz) wrote :

> The theory is that if the board positions/sytling of the texts are different from the library versions then you have probably hand-tuned them and don't want that lost.

> 1) have a checkbox on whether or not you want to reset the positions/styling of the text

A variant of this bug report I've noticed, is the value field itself also seems to not update from library.
ie is there ANY means to apply a revised lib value field, to a existing design ?
The strange thing is, a manual add-part does bring in all-new.

see also this thread
https://forum.kicad.info/t/v5-heads-up-devs-dont-explain-here-the-upcoming-changes/11123/12

That means there needs to be more controls over WHAT the user updates, on the 'Update from library' paths.

It should be possible to update everything (as inferred in #1) but I agree that should not be the default.

Most common will be outline.pad changes (as mentioned above).
Next would be value field
Last would be XY locations etc

NETlist import menu gives some guide for 'change option' ideas.

In testing I also observe that NET import with no-value-line, (edited net list) into a blank sheet, does not apply the LIB value, instead it blanks value.
I would expect similar behaviour to other CAD tools
a) Value defined in NET ? - Easy, that is applied to part. Includes defined as ""
b) Value not present in NET ? Should use LIB defined value
That may need a separate bug report.

Jeff Young (jeyjey)
Changed in kicad:
milestone: 6.0.0-rc1 → 5.1.0
Jeff Young (jeyjey)
Changed in kicad:
status: In Progress → Fix Committed
Changed in kicad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.