[linux/ubuntu] 3D viewer not working

Hey guys,

I am trying to get a nice 3D view of a tiny board I created (three parts only). The 3D view always used to work for me in the past but also I haven’t used it in a long while. When I want to view the board, the whole “active part” of the 3D view is “stuck”. I attached a screenshot. I cannot change this view regardless of what I click or do. When I start kicad from terminal I get no error messages. I tried changing the canvas first but it doesn’t change anything either.

Can anyone help?

What KiCAD version do you use?

KiCAD version?
Is the 3D viewer icon menu really 2 times there? :fearful:

First thing I would try - if this is not a known bug - reinstall KiCAD over what you got there.

1 Like

Ah yeah, sorry guys. I am using KiCad 4.0.6-e0-6349~53~ubuntu14.04.1 on a Ubuntu 14.04 machine running 4.2.0-42-lowlatency (I use Ubuntu Studio).

The buttons aren’t actually there twice but the “active” part of the window (where the 3D objects should be) is just “fragments” or “errors”. I cannot click anything on the “second row” of buttons. The whole window is inactive and doesn’t change, regardless of what I click on the “top row” or set in the settings.

Let’s see if we can activate some help for you…

@cbernardo, @c4757p, @maui, @kammutierspule … hm, who else I forgot that is running KiCAD under linux and is close with the development (esp. 3D)?

No idea. That is the stable release, so nothing should changed on 3D Viewer for years.
You can rise a bug at:

but I suggest you install the nightly builds and let us know how it behaves.

Please also report your computer specifications, most important, the GPU.

You may also have some problems with some missing library or graphic driver…

Yeah, that is what I suspect too. The 3D viewer used to work for me in the past, I am not sure though if I ever had it running successfully on this machine… Is there any way I could get more information about my issue? I would describe myself as a 10+ years, very computer savvy, intermediate level linux user. Is there for example any way to get more information out of the console or something?

My computer specs: Laptop, 64-bit, 4 x i5
Graphics: GM108M [GeForce 940M]

That enough for you?

I am not sure what suggest…

  • Install proprietary NVIDIA Drivers
  • Does the PCBnew in OpenGL mode works??
  • Install KiCad nightlies

There is no information log you can get from KiCad I’m afraid.

4.0.6 3D viewer working just fine on Ubuntu 16.04 64 bit from the PPA

OpenGL canvas works flawlessly.

This is the driver I am using:
filename: /lib/modules/4.2.0-42-lowlatency/kernel/drivers/gpu/drm/i915/i915.ko
license: GPL and additional rights
description: Intel Graphics
author: Intel Corporation
author: Tungsten Graphics, Inc.
firmware: i915/skl_dmc_ver1.bin
srcversion: 681D3068BC7AA47FBC5A6C3

I am using the js-reynaud repo for updating my KiCad. You suggest using the nightly builds changes anything if this is not a bug in the actual software - like you stated before? Because I wouldn’t necessarily blame KiCad for this either but could also imagine that the issue could be originating somewhere else. Thanks.

You report that you have one NVidia GPU, but you are using Intel Drivers, so probably you are running some default failsafe mode drivers.
You should try to install the proprietary NVidia drivers on Linux if you are using an NVidia GPU.

but still I don’t know why KiCad fail to open 3D Viewer…

You are updating from Stable version (as your version is 4.0.6).
Have a look at

Nightly Development Builds
for clarification.

Nightly builds are the latest version of developing (they are build every hour or so…). It is a very different version of KiCad :slight_smile:

His laptop probably has a hybrid graphics cards setup. One intel card included in the cpu and an external nvidia card. The external nvida card is not trivial to get running under linux. One needs Nvidia optimus and Bumblebee:


1 Like

Yeah, as far as I remember, after trying lots of things with the graphics drivers, my current state is pretty much the only workable one. I believe with the NVidia drivers make my CPU hot because it doesn’t idle anymore. Something like that. My laptop is an Acer Aspire V Nitro VN7-571. I think Rene_Poschl is probably right about the hybrid graphics card setup. Yeah, that could be the reason actually…

I see what you mean…

“Using Bumblebee, you can use your NVIDIA card for rendering graphics which will be displayed using the Intel card.”
O_o ok I am not updated with this technology…

I remember some time ago I saw a feature that allows an hybrid on the fly switching between graphic cards… (so on less intensive tasks the GPU on CPU can be used)
but I remember there was an option on the BIOS to disable this feature… so the system will only work with one of the GPUs.

It’s not a questions about bios/efi.
This is managed by the operating system/driver side.
In linux optimus is responsible for starting up the nvidia card.
(You need to start the software under optimus such that it uses the external graphics card. or was it prime? I’m not sure anymore.)

So, I changed to the proprietary NVidia driver today to see if it helps any. Now when I start the 3D viewer, the CPU goes nuts for a couple of seconds and then pcbnew crashes. Any more thoughts?

PS: I don’t think I have a split graphicscard… According to the specs of my computer, I have an GeForce 940M.
PPS: With the NVidia drivers I can’t create an OpenGL canvas either.

Have you run any OpenGL test tools to see if the necessary features are all available?

But you also reported running the Intel i915 driver above. The only way both can be valid is a hybrid.
What is the exact laptop model?

It’s a lot easier to check. He just needs to open the terminal and enter:
lspci | grep VGA
If the output is 2 lines he has a hybrid card.


chrisi@mobstation:~$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Broadwell-U Integrated Graphics (rev 09)

What could I do to check the necessary features of OpenGL to be present? Like said, at least the OpenGL canvas works flawlessly.