pcbnew hangs during startup on Windows 10

Bug #1819301 reported by Grant Haidinyak on 2019-03-10
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
KiCad
Undecided
Unassigned

Bug Description

pcbnew hangs when it starts up. I had 5.0.2 running fine, but it started hanging 2 days ago. I’ve since downloaded and installed the previous 2 nightlies and 5.0.1-4. All of them exhibit the same issues.

kicad starts fine, and Eeschema seem to work as expected. When pcbnew is started (either through eeschema or command line), then eeschema also hangs. I’ve rebooted multiple times and reinstalled multiple times. Task Manager reports that kicad is using 16% CPU during the hang.

I've done a "sfc /scannow" and verified the filesystem.

Download sites:
https://kicad-downloads.s3.cern.ch/index.html?prefix=windows/stable/
https://kicad-downloads.s3.cern.ch/index.html?prefix=windows/nightly/
https://kicad-downloads.s3.cern.ch/windows/stable/kicad-5.0.2_1-x86_64.ex

Seth Hillbrand (sethh) wrote :

It sounds like something changed in your setup. There are a few things that can cause issues when pcbnew loads. In no particular order (and not exclusive) the are:

1) Antivirus
2) Network shared files
3) Drive synchronization (dropbox/google drive)

If any of these changed for you in between when 5.0.2 was working and when it wasn't, I'd start there to try to chase down the issue.

Changed in kicad:
status: New → Incomplete
Rene Poeschl (poeschlr) wrote :

Might also be graphics driver related as pcb_new might be setup to use hardware acceleration. (So any change to graphics drivers or even a windows update might interfere with kicad that way.)

I assume you are the person from the forum? https://forum.kicad.info/t/pcbnew-hangs-on-startup-using-window-10/15643

Seth Hillbrand (sethh) wrote :

@Rene- Definitely a possibility but now that we are using GAL for eeschema and op says they tried the nightlies, I am inclined to suspect network drive or AV.

Grant Haidinyak (ghaidinyak) wrote :

Update: Thanks to Rene's suggestion, I was able to get pcbnew to startup by removing the configuration files and having Kicad regenerate them. I've included the configuration directory as an attachment.

I was able to duplicate the issue by taking my board design, passing it to pcbnew, exporting it to a Spectra DSN file, import the Spectra file to freerouting, route the board, import the Spectra Session file, save the file, exit pcbnew. Then on restart of pcbnew from Eeschema, Kicad would hang (kicad, eeschema, pcbnew unresponsive).

I can upload the board design, if you like. It's just a teensy 3.2 board.

Seth Hillbrand (sethh) wrote :

I assume that this us your configuration directory before you regenerated it. Is that correct?

If you put these file back into your configuration directory does the issue happen again?

The thing that looks odd to me here is that file1 in the pcbnew configuration is not escaped properly for MSW. Could one of our windows devs test this and see if the improper escaping locks up pcbnew?

Filenames (in filexx=... in config) use sometimes / and sometimes \\ as dir separator, but it does not create issues on my W7 32 bits install.

Wayne Stambaugh (stambaughw) wrote :

No problems here for me either on windows 10 pro. I even manually changed the path separator in my pcbnew config file and tried running pcbnew in stand alone mode with out any issues. Could it possible be a malformed board file?

Seth Hillbrand (sethh) wrote :

Thanks JP and Wayne. The malformed board file seems possible but then I don't understand why removing the configuration changes the behavior.

Wayne Stambaugh (stambaughw) wrote :

@Seth, you are probably right about the board file being malformed. It would be nice if we could duplicate this one.

Grant Haidinyak (ghaidinyak) wrote :

Everyone, Thanks for your time and attention.

Yes the configuration files that were uploaded were the hang-a-matic configuration files. I did copy them over and they still cause the hang. I started removing lines from the config file until pcbnew started without hanging.

I uploaded a config file where removing the first line, "canvas_type=1", causes pcbnew to start normal. Unfortunately, this line is in a working config file, so I can only guess that there is some interaction between this line and the other lines in the config file that causes unhappiness in pcbnew.

Seth Hillbrand (sethh) wrote :

Looks like Rene's suggestion is the correct one. @Grant, does pcbnew lock up again when you select "Accelerated Canvas" in pcbnew?

Grant Haidinyak (ghaidinyak) wrote :

Also, pcbnew hangs even when it is started outside Kicad environment, i.e. double clicking on the pcbnew icon in the kicad program directory.

Grant Haidinyak (ghaidinyak) wrote :

I select the accelerated canvas by going to Preferences menu, then selecting the Modern Toolset (Accelerated) F11. Everything seems to work fine. I shutdown and restart pcbnew & shutdown & restart all of Kicad. After every restart, pcbnew starts fine.

Seth Hillbrand (sethh) wrote :

I just re-read your comment in #10. Are you saying that the configuration file you uploaded in #10 had canvas_type=1 as the first line and then you deleted it? Before you deleted that line it didn't work and after you deleted it, it did work?

Grant Haidinyak (ghaidinyak) wrote :

@sethh That is correct. pcbnew hangs with the uploaded configuration. Remove the canvas_type=1, pcbnew starts fine.

Seth Hillbrand (sethh) wrote :

OK, but the uploaded configuration doesn't have canvas_type=1. It has canvas_type=2 on line 179.

Basically, I am trying to determine if you had two canvas_type settings or only one. We _should_ be loading the last one in the file but maybe there's some logic that is wonky here.

Grant Haidinyak (ghaidinyak) wrote :

OK, retested it, taking the known failing configuration file and remove the canvas_type=1. So, I have another data point. Fist some background on my computer setup.

o) I have a Dell XPS15, that has a GPU. I have another monitor attached the laptop
o) I have Pluggable docking station, attached to which I have two additional monitors. This are accessible through displaylink
o) the monitors on the laptop can use the GPU for acceleration.
o) The monitors on the docking station, can't use the GPU.
o) Yes, that means I have 4 monitors.

1) I start up kincad on a display that doesn't support the GPU and start pcbnew on that monitor. Hardware acceleration doesn't appear to be turned on.
2) I move pcbnew window to monitor that supports GPU. hardware acceleration doesn't appear to be on
3) I exit Kicad. Window locations are remembered.
4) I startup Kicad. pcbnew is now started on the hardware accelerated monitor (see #2).
5) pcbnew hangs.
6) Hilarity ensues.

Sorry for the confusion. As an aside, how do I get hardware acceleration to work on my system?

Launchpad Janitor (janitor) wrote :

[Expired for KiCad because there has been no activity for 60 days.]

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

Other bug subscribers