Differential pair skew matching fails with certain dimensions

Bug #1673632 reported by Andrew Zonenberg
36
This bug affects 9 people
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Medium
Seth Hillbrand

Bug Description

Version: tested on 28a6ca1

Steps to reproduce: open attached file, select "tune skew", try to skew-match the differential pair

Expected result: overlay appears and allows you to tune skew

Actual result: Overlay appears but no meanders are created

This seems correlated to the pair design rules but I haven't figured out exactly why some dimensions work and some don't.

Tags: cern pns
Revision history for this message
Andrew Zonenberg (azonenberg) wrote :
tags: added: cern pns
Revision history for this message
Xavi Torres (xtm) wrote :

I've experience the same behaviour.

With default diff. pair dimensions, the "Tune pair skew" works perfectly. I've then changed diff. pair dimensions to 0.2mm track witdh and 0.2mm gap. Tried again "Tune pair skew" and worked fine.

But if I draw a differential pair with 0.28mm track width and 0.15mm gap then it behaves different. The "label" with the actual lenght difference and target still appears but no meander appears (And the reported lenght remains the same)

Regards

Xavi

Revision history for this message
Xavi Torres (xtm) wrote :

Ups, I forgot to include the Kicad version used:

Application: kicad
Version: no-vcs-found-a7cdd94~61~ubuntu16.04.1, release build
Libraries:
    wxWidgets 3.0.2
    libcurl/7.47.0 OpenSSL/1.0.2g zlib/1.2.8 libidn/1.32 librtmp/2.3
Platform: Linux 4.4.0-112-generic x86_64, 64 bit, Little endian, wxGTK
Build Info:
    wxWidgets: 3.0.2 (wchar_t,wx containers,compatible with 2.8) GTK+ 2.24
    Boost: 1.58.0
    Curl: 7.47.0
    Compiler: GCC 5.4.0 with C++ ABI 1009

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

Revision history for this message
Seth Hillbrand (sethh) wrote :

This seem to be true for anything less than 0.18mm gap when testing on Linux

Changed in kicad:
status: New → Confirmed
Revision history for this message
Xavi Torres (xtm) wrote :

Same behaviour on Windows 7

Application: kicad
Version: (2018-02-10 revision a04965c36)-makepkg, release build
Libraries:
    wxWidgets 3.0.3
    libcurl/7.54.1 OpenSSL/1.0.2l zlib/1.2.11 libssh2/1.8.0 nghttp2/1.23.1 librtmp/2.3
Platform: Windows 7 (build 7601, Service Pack 1), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
    wxWidgets: 3.0.3 (wchar_t,wx containers,compatible with 2.8)
    Boost: 1.60.0
    Curl: 7.54.1
    Compiler: GCC 7.1.0 with C++ ABI 1011

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

Revision history for this message
Seth Hillbrand (sethh) wrote :
Changed in kicad:
importance: Undecided → Medium
Revision history for this message
Vesa Solonen (vesa-solonen) wrote :

May be related, the meander amplitude tuner geometry breaks on low values as shown on the screenshot.

Revision history for this message
Andrew Zonenberg (azonenberg) wrote :

I've seen that behavior, as well as other bizarre failures in which the P/N legs actually short to each other, under some circumstances with low values as well but I haven't been able to reproduce it reliably so didn't file it as a bug.

Not sure if related to this issue but certainly worth investigating.

Revision history for this message
Vesa Solonen (vesa-solonen) wrote :

Now that I studied it a bit more it seems to stem from forced 90° arcs. The rounded corner just does not fit there. That's why I suggest working on a 45° sharp corner implementation and a free angle arc series one. I believe the sharp corner 45° one would be the easiest for length calculation as well as DRC.

Seth Hillbrand (sethh)
Changed in kicad:
assignee: nobody → Seth Hillbrand (sethh)
status: Confirmed → In Progress
Revision history for this message
KiCad Janitor (kicad-janitor) wrote :

Fixed in revision 44c1f5785be0ee7a9238c9754ac4909d2748aeb6
https://git.launchpad.net/kicad/patch/?id=44c1f5785be0ee7a9238c9754ac4909d2748aeb6

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.