How could the copper item error?

I downloaded the uartdbg.kicad_pcb and opened it in KiCad / Pcbnew, and can reproduce these 3 errors.

Weird thing is, if I move the whole PCB to the center of the drawing area the DRC errors go away.

that’s true :+1: . But how could this happen? Is it a BUG ?

That’s what I said. :slight_smile:

This doesn’t happen in 5.99 (the unstable development version).

Oh, I use the version 5.1.8-5.fc32

The whole version info is:

Application: Pcbnew
Version: 5.1.8-5.fc32, release build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.69.1 OpenSSL/1.1.1g-fips zlib/1.2.11 brotli/1.0.7 libidn2/2.3.0 libpsl/0.21.0 (+libidn2/2.3.0) libssh/0.9.5/openssl/zlib nghttp2/1.41.0
Platform: Linux 5.8.15-201.fc32.x86_64 x86_64, 64 bit, Little endian, wxGTK
Build Info:
    wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24
    Boost: 1.69.0
    OpenCASCADE Technology: 7.4.0
    Curl: 7.69.1
    Compiler: GCC 10.2.1 with C++ ABI 1014

I’ve been moving the PCB a bit around (0, 0) and it looks like the error related to the the grey outline that is the border of the sheet size.

Then I opened a random project of my own and moved the whole PCB to around (0,0) and it also generates a bunch of DRC errors there.
In the screenshot below, the light grey lines (with corner near the rounded square GND pad) is from the paper border.

image

Oh, whether should we place pcb inline the paper broder. rather place it at will.:slightly_frowning_face:

Is this a rounding problem with right on the limit clearances? Moving the whole job around on the screen might affect this

I just tested in v5.1.10 and it is the same behavior, DRC errors until moved around…

Application: Pcbnew
Version: (5.1.10)-1, release build
Libraries:
    wxWidgets 3.0.5
    libcurl/7.71.0 OpenSSL/1.1.1g (Schannel) zlib/1.2.11 brotli/1.0.7 libidn2/2.3.0 libpsl/0.21.0 (+libidn2/2.3.0) libssh2/1.9.0 nghttp2/1.41.0
Platform: Windows 8 (build 9200), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
    wxWidgets: 3.0.5 (wchar_t,wx containers,compatible with 2.8)
    Boost: 1.73.0
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.71.0
    Compiler: GCC 10.2.0 with C++ ABI 1014

Build settings:
    USE_WX_GRAPHICS_CONTEXT=OFF
    USE_WX_OVERLAY=OFF
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_PYTHON3=OFF
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=ON

It’s not just DRC errors until moved around.
It’s DRC errors very close to coordinate (0, 0)

Time for someone is raise a report on this. There is already a pre-5.1.11

I hereby donate a simplified example.

uartdbg.kicad_pcb (36.2 KB)

Issue created:

3 Likes

I am surprised.
I place all my PCBs so I have 0,0 in the middle of it (5.1.10) and I didn’t noticed that bug. Yet :slight_smile:

Have you used footprints which have graphic polygons (non-pads) in copper?

From: gitlab

Seth Hillbrand :nut_and_bolt: @sethhillbrand · 21 minutes ago

I can confirm this on 5.1.10 but the issue is resolved in master.

I’ll leave this open in case we decide to release 5.1.11. We won’t be able to backport the fix from master but there might be a smaller fix that we can address

Which implies the cause if this is known, documented & committed to “master”.

Not quite. DRC was re-written from the ground up for 6.0. (Primarily for the new rules engine, but also for significantly better performance and fewer corners for bugs to hide in.)

No.
So you suggest that source of problem is graphic polygon.
I previously understood that anything close to 0,0.

No, not everything around (0, 0) gives errors, there are just a lot of errors in that neighborhood. See for exemple my post #13 above: How could the copper item error?

I also tried it on a few different projects, and some do not generate any errors at all.

The KiCad copper logo has the same effect.
Strangely two symbols do not generate the DRC error, even with one at 0,0