Moving footprint with F.Fab doesn't snap to Grid

Hello,

I have, in my personal footprints, graphics on F.Fab layer.

When the F.Fab layer is visible, if I move the footprint in PCBnew, it snaps to something else than the Grid.
When F.Fab is not visible (unchecked), the footprint snaps correctly to the Grid when moved.

Is this a bug or a desired feature?
Thank you!
David

Hi @dhaillant

Please post your Kicad version and OS.
Find them on Help / About Kicad / Copy version info. Top RH corner, then just paste into a post here.

Oh sorry:

Application: KiCad PCB Editor

Version: 6.0.10-86aedd382b~118~ubuntu20.04.1, release build

Libraries:
wxWidgets 3.0.4
libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3

Platform: Linux 5.4.0-135-generic x86_64, 64 bit, Little endian, wxGTK, xubuntu, x11

Build Info:
Date: Dec 18 2022 19:39:35
wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24
Boost: 1.71.0
OCC: 7.5.2
Curl: 7.86.0
ngspice: 36
Compiler: GCC 9.4.0 with C++ ABI 1013

Build settings:
KICAD_USE_OCC=ON
KICAD_SPICE=ON

I found that same thing happens if the anchor is set to a reference that only exists on the F.Fab layer.
If the F.Fab layer is turned off,the pads (none of which are on the anchor) will only follow the grid.

If the F.Fab is on, and the anchor is set to something that exists only on the F.fab, Kicad seems to be confused… sometimes follows the anchor and sometimes follows a pad to the grid.

Same problem in 7.0.0-rc

I don’t know if it is a bug or not.
I do know it is past my bed time. I’ll do some more experiments tomorrow unless someone else can answer.

Application: KiCad PCB Editor

Version: 6.0.10-86aedd382b~118~ubuntu22.04.1, release build

Libraries:
wxWidgets 3.0.5
libcurl/7.81.0 OpenSSL/3.0.2 zlib/1.2.11 brotli/1.0.9 zstd/1.4.8 libidn2/2.3.2 libpsl/0.21.0 (+libidn2/2.3.2) libssh/0.9.6/openssl/zlib nghttp2/1.43.0 librtmp/2.3 OpenLDAP/2.5.13

Platform: Linux 5.15.0-58-generic x86_64, 64 bit, Little endian, wxGTK, cinnamon, x11

Build Info:
Date: Dec 18 2022 19:39:39
wxWidgets: 3.0.5 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24
Boost: 1.74.0
OCC: 7.5.2
Curl: 7.86.0
ngspice: 36
Compiler: GCC 11.3.0 with C++ ABI 1016

Build settings:
KICAD_USE_OCC=ON
KICAD_SPICE=ON

1 Like

I don’t see how to set Anchor to a specific layer?

Anyway, the same behaviour happens with User.Drawings, F and B.Silkscreen, F and B.Courtyard etc…

While moved, the footprint has a tendency to jump forward and backward, trying to snap to the origin position of each graphic element.
It feels like a bug.

2023-01-26 08-56-09.mkv (1.1 MB)
Here is an example.

  • First I try to move the footprint (command “m”). You can see how it tries to snap to graphic elements.
  • Then I deactivate F.Silkscreen. You can then see that it only snaps to one graphic element (F.Courtyard)
  • Finally, I deactivate F.Courtyard and you can see that it only snaps to Grid.

For my above experiment I:

Selected a footprint with the anchor on pin 1.
Created a small circle on F.Fab layer within the confines of the F.Fab and off the grid to which pin 1 was attached
Set the anchor to the centre of the created circle.
Placed the footprint on the PCB editor.
Moved the footprint around with then without the F.Fab layer on.

With the F.Fab layer off the footprint behaved as it should with the anchor set to the previous pin1.
With the F.Fab layer on the footprint jumped around as if it didn’t know which anchor point should be used. Sometimes the new anchor point was placed on the grid which made Pin 1 off grid. Sometimes Pin1 went to the grid which meant the new anchor point was off grid.

Repeated the experiment today, same result. I haven’t tried any other layers.
I also think there is a bug. I wouldn’t think turning a layer on and off should upset the anchor.

I had the same result with F.Fab. The footprint tended to dither.

I was using a reference circle to show myself where I placed the anchor. Sorry, my bad description when I wrote placing the anchor on a layer.

Okay, I created a Bug Report here: PCBnew - Moving footprint, snaps to its own graphical elements rather than Grid (#13678) · Issues · KiCad / KiCad Source Code / kicad · GitLab
I hope it makes sense…

1 Like

It looks like if, in preferences, the option “Snap to graphics” is set to “Never”, the problem disappears.
But this is different. Snap to graphics is convenient for example to help your Edge.Cuts lines to be joined, or to set the origin of your local grid to a graphic marker.

The problem described here is the fact that the footprint snaps to its own graphics.

The same problem occurs on 7.0.0-rc

I placed a comment under your Issue.

1 Like

could you post a picture from your preferences-setting (global board preferences), ? I have tried already some minutes, but the footprint snaps only to the grid (albeit I have a vague memoy that I have seen such behaviour already).

This?


1 Like

This?

yes, thanks. Interestingly I still can’t reproduce. Maybe this depends on some additional setting elsewhere?

Weird! I feel like I’m chasing my tail.
fault was occurring on 6.0.10 earlier.
Went to 7rc and fault no longer there ( solved by new download?)

Now fault not present on 6.0.10.
Version as above still.

Getting late, will look again in the morning. Brain going into neutral.

So far, I haven’t be able to reproduce on 7.0rc.

(In a VirtualBox, with new settings)

Application: KiCad PCB Editor x86_64 on x86_64

Version: 7.0.0-rc1-unknown-00d77f624a~164~ubuntu20.04.1, release build

Libraries:
wxWidgets 3.2.1
FreeType 2.10.1
HarfBuzz 2.6.4
FontConfig 2.13.1
libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3

Platform: Ubuntu 20.04.5 LTS, 64 bit, Little endian, wxGTK, xubuntu, x11

Build Info:
Date: Jan 14 2023 20:32:50
wxWidgets: 3.2.1 (wchar_t,wx containers) GTK+ 3.24
Boost: 1.71.0
OCC: 7.5.2
Curl: 7.68.0
ngspice: 38
Compiler: GCC 9.4.0 with C++ ABI 1013

Build settings:
KICAD_USE_EGL=ON
KICAD_SPICE=ON

But I can reproduce in the same VM with 6.10.

@mf_ibfeew

Made one last attempt before bed.
Cannot fault 7rc.

Can fault 6.0.10 again
Using a 100mil grid, place a footprint on a board.
I used a SMD electrolytic.
Hide F.Fab layer.
Use M key and move item.
Show F.Fab layer.
Use M key and move. Watch the item bounce around the board.

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.