Can't place a via as the first point in a route using routing tool

Bug #1738818 reported by Art
14
This bug affects 3 people
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Medium
Unassigned

Bug Description

Can't place via on the end or in the middle of an existing track. When you try to place a via on an end of a track, a junction or just in a middle of a track, you have to click in that spot hit V shortcut and then move the cursor to the side and only then the via would appear. If you move back to the original location it will disappear again. Depending on the side of the grid the locations can be pretty far apart from each other. This especially drives me nuts when you run a trace on multiple layers and click the mouse button first to "tack" the trace down and then hit V - it will not place the via at that spot anymore, so you have get out of the trace drawing mode, delete the last segment (here we go, another pet peeve - what happened to the good all backspace, when you could just delete last segment without having to interrupt your workflow) then go back to track drawing mode again and draw it again and this time try to remember hitting V first before clicking.

Application: kicad
Version: (2017-12-18 revision ff4829eee)-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 8 (build 9200), 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

Tags: pcbnew pns
Revision history for this message
Tomasz Wlostowski (twlostow) wrote :

Is that happening when the router tool is active (X, then start trace, then V?)

Tom

Revision history for this message
Art (diametrix) wrote :

That's correct. Default shortcut for the router tool is "T", so yes, T then click on the existing trace, then press V. At this point there is no via placed. If I move pointer at this point at least by one grid jump, then the via will appear. However if I move the pointer back to the starting point it will disappear again.

Here are my interactive router settings:
Mode - shove
Mouse drag behavior - Move item
Free angle mode - unchecked
Shove vias - checked and greyed out
Jump over obstacles - checked
Remove redundant tracks - checked
Automatic neckdown - checked
Smooth dragged segments - checked
Allow DRC violations - unchecked
Suggest track finish - unchecked and greyed out

Optimizer effort - all the way to the right on high.

Revision history for this message
Art (diametrix) wrote :

Seems to be related to the "Shove" setting of the router. As soon as I switch back from "Shove" to "Highlight collision" everything starts working the way it's supposed to. When I switch back to "Shove" it goes back to the described behavior.

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

It changes the current layer (as if it has placed a via), but there's nothing there. If I click twice, then a via does appear (but I'm no longer in track-drawing mode then).

Changed in kicad:
status: New → Confirmed
summary: - Can't place a via ontop of an exiting track
+ Can't place a via ontop of an existing track
Revision history for this message
Jeff Young (jeyjey) wrote : Re: Can't place a via ontop of an existing track
tags: added: pcbnew pns
Jeff Young (jeyjey)
Changed in kicad:
importance: Undecided → Medium
Revision history for this message
Seth Hillbrand (sethh) wrote :

This does not currently reproduce on linux.

Revision history for this message
Reece Pollack (reece-pollack) wrote :

I have observed a similar behavior on Linux when I tried to place a via using the Via tool. The existing track was on the In1.Cu layer. I suspected placing the via at that spot might be triggering a DRC violation, so I moved the end of the existing track away from the other tracks and I was able to place the via.

I've also had a problem where I'd dragged two existing tracks on different layers (In1.Cu and Bot.Cu) to where their ends overlapped. Pcbnew displayed a helpful "X" which went away when I placed a via there with the Via tool, but dragging the via caused only one track to move. I don't remember exactly what I did to resolve the issue (removing and replacing the via? moving one of the track ends?).

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

Fixed in revision 28c19cb61312360a66cbc31a1534db26fa948279
https://git.launchpad.net/kicad/patch/?id=28c19cb61312360a66cbc31a1534db26fa948279

Changed in kicad:
status: Confirmed → Fix Committed
assignee: nobody → Seth Hillbrand (sethh)
Seth Hillbrand (sethh)
summary: - Can't place a via ontop of an existing track
+ Can't place a via as the first point in a route using routing tool
Revision history for this message
Seth Hillbrand (sethh) wrote :

Hey, look! I found a Janitor bug. :)

I had referenced this bug report in a different commit. Not as fixed but a precursor to fixing. Janitor was very enthusiastic and decided that I really got this one licked.

Changed in kicad:
assignee: Seth Hillbrand (sethh) → nobody
status: Fix Committed → Triaged
Revision history for this message
Maciej Suminski (orsonmmz) wrote :

That is a feature;) Janitor is very forgiving and accepts "(f|F)ix(es|ed|ing)?:? *(lp:|LP)? *#?([0-9]+)". I did not assume that 'fixes' git alias will become so popular and anticipated different forms of the formula typed manually. Looking at the regex again, I think that 'ing' suffix might be indeed too much.

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

I'm going to close this one unless someone can recreate on the current master

Changed in kicad:
status: Triaged → 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.

Other bug subscribers

Remote bug watches

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