How to print a PCB from pcbnew in KiCad 5.0


#1

I’ve been working on getting familiar with KiCad 5.0 and was exploring how to print a test PCB to see what it looks like (on paper). For some reason the Print Preview function in Print only shows the sheet info. None of the selected PCB layers are visible in the preview image.

What configuration or steps might I be missing to make pcbnew print a board image?


#2

Use Plot command instead of print. It can plot to svg, pdf and most importantly gerber.


#3

Thanks for the pointer. I was hesitant to push the Plot button as I thought Print should be functional.

I just tried Plot, and while it generated files for a couple of different formats I tried (Gerber, PDF, and SVG), I could not render an image in PDF or SVG (or at least I didn’t have an obvious viewer for SVG). Of course I could see the layers in the KiCad Gerber Viewer as one would expect.

Must be something beyond the default settings that I’m not getting.


#4

I just tried pdf and it worked for me. Note that it creates separate file for each layer you select to be plotted.


#5

I do see the separate files for the various formats I tried. I have the same default configuration for the plotting options.

The PDF and SVG render blank images. For example, the front copper (F.Cu) layer is a 10K-sized files while the PDF version is 1K and the SVG is 6K, but they don’t render an image. Very strange


#6

Do you get same result with other boards? Try kicad demos.


#7

I don’t know an answer to your question. (I am still running version 4, and have not had any problems creating *.pdf files from “Plot”.) Those who are in the best position to help will probably ask you for the exact KiCAD version you are running (from EESchema, PCBNew, or the main KiCAD shell select “Help” > “About KiCAD” > “Copy Version Info”), and your operating system.

Dale


#8

Granted, printing to PDF is useful for combining layers on the same page. I usually use a system PDF print driver, but with mixed results. Some render traces as minimum printer width, some don’t render oval pads with offset drill holes at all.

Unfortunately, I don’t remember which PDF print driver gives the best results off the top of my head, and even if I did my answer would only be applicable to Windows (not OSx nor Linux).


#9

I never had a problem when using the linux (fedora or ubuntu) print to file option in combination with the print dialog. Only problem is printing true 1:1 is a bit harder that way. (It is better to print directly as you then can use the independent x and y scaling factors)


#10

I wonder if your design is outside the defined sheet area. If you zoom out in PcbNew there is a gray rectangle that shows where the defined sheet borders are. You define the sheet size with this tool:
2018-08-06%2010_58_43-Pcbnew%20%E2%80%94%20C__Users_chelliot_Dropbox_RemoteDevelopment_KiCad_KiCad5TestNew_KiCad5T

Printing will only print things that are on the sheet (within the sheet boundary rectangle). I wonder if this is the same with the PDF plot because PDF files need to have a defined paper size (even if it is a custom size). The SVG plot output may need the same thing, but I’m not as familiar with that file format.


#11

Thanks to all for pondering my predicament while I was at the beach yesterday. I thought if I got away from the problem I might get a “spark of inspiration”…ah, that’s my story and I’m sticking to it.

I probably would not print a board every time, but I have on occasion printed out separate layers on transparencies to do an overlay and check component and via alignment and connectivity. I know it’s probably an old fashion notion and perhaps not even practical with complex boards, but it can provide warm and fuzzy confirmation sometimes.

I have to try the suggestion from qu1ck to check demo projects. I was just working through some small random designs to get the hang of the symbol and component library management when I decided to check out the printing function. A known quantity might provide some insight.

Additionally, I just followed the suggestion from SeembazuruCDE to check the sheet setting. I do in fact have the sheet/page set to USLetter 8.5 x 11 in, landscape. I zoomed out on the PCB but I don’t see any sheet boundary rectangle lines. Wow, hope that’s not another problem to chase.

BTW, here’s my KiCad version info:

Application: kicad
Version: (5.0.0), 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
OpenCASCADE Community Edition: 6.8.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=OFF
BUILD_GITHUB_PLUGIN=ON
KICAD_USE_OCE=ON
KICAD_USE_OCC=OFF
KICAD_SPICE=ON

Not sure why it shows my “platform” as Windows 8; it’s Windows Pro 10, Version 10.0.17134, 64-bit.

I’ll get back with the check on demo project boards ASAP. Keep the ideas coming in the meantime.

Thanks,
Glenn


#12

Another way to make sure your are within the sheet size is the upper left-hand corner of the sheet is where the global origin is. As you have probably noticed, y-positive is down. If you know your sheet size, put your cursor anywhere on your design and check the X and Y coordinate readout on the bottom of the window to make sure you are within the coordinate space.

So for your design where you have the sheet size set to USLetter, make sure you have imperial (inches) selected. If within your design the X coordinate isn’t between 0 and 11 and your Y coordinate isn’t between 0 and 8.5, then you are off the page. Simple math should tell you how far off you are.

You should be able to drag-select everything and move it all together back into a sane coordinate range.

Here is an example screenshot of a sample board that I made to test some features. You can see where my cursor is positioned, and the gray sheet borders around everything.

Or, I could be completely wrong as to what the problem is and I’m sending you on a wild goose chase. :wink:


#13

That was the ticket! Somehow I was way off in negative Ether! I grabbed the board and dragged it back into positive space and, voilà, I’m on the page and in sheet frame and the print (at least preview) works.

I don’t know how the board got started there. Perhaps I was over zealous when I started the test PCB layout and forgot to set the page size first thing.

Many thanks for your persistence to help me sort out the error in my ways.

Best Regards,
Glenn