Rounding error on copy/paste

Bug #1854431 reported by Adam Reynolds
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Unknown

Bug Description

When laying out multiple copies of complicated or dense components (eg: large BGAs), I'll often break out one, or just a section of one of the components and then copy/paste the resulting tracks/vias to the rest of the part and other similar parts. On a recent design, I ran into an odd problem where pasting the tracks/vias resulted in a very small rounding error on the coordinates (0.000001 mm) of just a couple of the pasted vias/tracks. This then led to endless errors with trying to select and route tracks, determine track lengths, perform length matching, odd 0-length stubs created when connecting to these vias, etc.

I was using a pretty course metric grid when copying and pasting, on the order of 0.25 mm, and this problem only affected a few of the hundreds of tracks/vias that were pasted. If it had been every pasted via I would have noticed it much sooner, but since it was only a handful of the ~500 that were pasted it made it much more elusive.

Here's an excerpt of the .kicad_pcb file for some of the vias that were affected:
  (via (at 192.4 94.750001) (size 0.4572) (drill 0.2032) (layers F.Cu B.Cu) (net 2) (tstamp 5DD3DDD5))
  (via (at 188.4 94.750001) (size 0.4572) (drill 0.2032) (layers F.Cu B.Cu) (net 2) (tstamp 5DD3DDF9))
  (via (at 186.8 106.000001) (size 0.4572) (drill 0.2032) (layers F.Cu B.Cu) (net 2) (tstamp 5DD3DDB0))
  (via (at 194 106.000001) (size 0.4572) (drill 0.2032) (layers F.Cu B.Cu) (net 2) (tstamp 5DD3DDBC))
  (via (at 192.4 106.000001) (size 0.4572) (drill 0.2032) (layers F.Cu B.Cu) (net 2) (tstamp 5DD3DDD5))
  (via (at 188.4 106.000001) (size 0.4572) (drill 0.2032) (layers F.Cu B.Cu) (net 2) (tstamp 5DD3DDF9))
  (via (at 186.8 117.250001) (size 0.4572) (drill 0.2032) (layers F.Cu B.Cu) (net 2) (tstamp 5DD3DDB0))
  (via (at 194 117.250001) (size 0.4572) (drill 0.2032) (layers F.Cu B.Cu) (net 2) (tstamp 5DD3DDBC))
  (via (at 192.4 117.250001) (size 0.4572) (drill 0.2032) (layers F.Cu B.Cu) (net 2) (tstamp 5DD3DDD5))
  (via (at 188.4 117.250001) (size 0.4572) (drill 0.2032) (layers F.Cu B.Cu) (net 2) (tstamp 5DD3DDF9))
  (via (at 186.8 128.500001) (size 0.4572) (drill 0.2032) (layers F.Cu B.Cu) (net 2) (tstamp 5DD3DDB0))

I was using KiCAD version 5.1.4 in the standard js-reynaud/kicad-5.1 Ubuntu repo. I could paste the full version info of my install now, but it has since been upgraded to 5.1.5. When the copy/paste was performed I was on 5.1.4.

Tags: pcbnew
Revision history for this message
Michael Kavanagh (michaelkavanagh) wrote :

Does the problem still exist in 5.1.5? Please copy the full version info from About KiCad -> Copy Version Info (this is required information for all bug reports).

Changed in kicad:
status: New → Incomplete
tags: added: pcbnew
Revision history for this message
Adam Reynolds (suicidaleggroll) wrote :

I was able to replicate the problem on another board that was created in 5.1.5:

Application: Pcbnew
Version: 5.1.5-52549c5~84~ubuntu18.04.1, release build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.58.0 OpenSSL/1.1.1 zlib/1.2.11 libidn2/2.0.4 libpsl/0.19.1 (+libidn2/2.0.4) nghttp2/1.30.0 librtmp/2.3
Platform: Linux 4.15.0-62-generic x86_64, 64 bit, Little endian, wxGTK
Build Info:
    wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.22
    Boost: 1.65.1
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.58.0
    Compiler: GCC 7.4.0 with C++ ABI 1011

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

Revision history for this message
KiCad Janitor (kicad-janitor) wrote :

KiCad bug tracker has moved to Gitlab. This report is now available here: https://gitlab.com/kicad/code/kicad/-/issues/2618

Changed in kicad:
status: Incomplete → Expired
Changed in kicad:
importance: Undecided → Unknown
status: Expired → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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