Is it possible to edit with relative coordinates

Hi All,

More then year ago I’ve read all KiCad documentation files then have a half year break. Then I have done some experiments and had next long break.
There are some things I know that I don’t know and probably more I don’t know that I don’t know.
Now I’m trying to do first PCB in KiCad 4.07 beginning with some mechanical information about my box.
When I press E on a line i can edit its parameters in absolute coordinates.
By pressing SPACE I can have new origin and can see my position as dx dy.

Is it possible to edit coordinates relative to that (or any other set by me) origin?
What is the function of the bottom key on right toolbar (probably “Set grid base point”)?
After using it I see crossed circle but can’t figure what it is for - I expected to have new origin, but it is not this - after E I still have absolute coordinates, and I can’t delete that useless (probably) circle.
I’m used to work (Protel 3 from 1997) in relative coordinates. specially for symmetric PCBs it is much easier. I don’t believe it is not possible here, I just suppose I don’t know how to do it.

The next to it key “Set base point for drill and placement” I also don’t understand. I am surprised that base point for drill and placement could be different than original point (0,0) for gerbers, but I have never went deep into production file formats. I suppose that by using this point I can do drill not match to gerber and someone will have to fix what I have damaged.
Do I have to set that point and if yes where in practic I should set it ?

I am also surprised that in Protel (the only PCB program i Know) X rises to right and Y to up, and in KiCad Y rises to down. Do one of these programs has to mirror y when generating gerbers or the gerber format (I don’t know) has a flag (or flags) specyfying direction for rise Y (and may be X).
I plan to compare simple gerbers (with one line) but not now.

No, it isn’t. Only absolute coordinates. There is an option under “move exactly” but not what you say. Many of us are expecting this feature.

It sets the grid origin, but not the coordinates origin. Useful in combination with the user grid.

Instead of deleting it, set another grid origin at absolute (0,0)

I set the drill origin to some place, usually a corner, of my board. Then, the drill and footprint position files coordinates are related to this origin.

Yes. The generated gerber files are alright with both programs. Don’t worry.

Actually the above mentioned “Move Exactly” works with this “User Origin” and also with the “Grid Origin” (the “crossed circle”) in the nightly builds / the upcoming 5.0. Hit the space bar, select an item, open Move Exactly from the context menu, leave coordinates at 0,0, select what you want from Move Relative To. Very nice.

Thanks pedro,

Its a pity.

Can imagine it can be usefull, but not so often.

With no function active hitting the space bar sets User Origin with no repect to grid (I am in 4.07). I don’t suppose such behaviour be useful anytime.
Can I set somewhere (I don’t see in settings) to make cursor being always at grid (like when I activate some function - like “Add line” for example)?
I’m not sure (work with PCB since yesterdy evening) if such flag in general would help or disturb, but for SPACE and User Origin I suppose it would help.

I see I have to experiment with it.

Do you know you can draw measurements in PCBnew?
These can help a lot with juggling around coordinates in your head and getting things right.
You can also draw some graphic lines circles / arcs on the “user” layers to support your brain.
(I for example are unable to remember a lot of details of a project I did a year ago).

Yes I know, but not decided yet which layer to use for it :slight_smile:

The “Dwgs.User” is meant for user notes / drawings and such.
“Fabrication” layers are ment for notes for hand assembly of a PCB.

Here you can find a better description for the intended use of the layers:
http://docs.kicad.org/stable/en/pcbnew.html#_layers

In a post-5.0rc1 version which I’m using the cursor snaps to the grid.

1 Like

I know the intended use of layers but…
Few months ago I have done some experiments to find how I can get the PCB printed documentation I need.
I’d like to get one picture with part courtyard + value and next with part courtyard + ref. Both on the gray picture of copper. I found the only way to get it by haveing my footprints with the same picture on F.CrtYd and F.SilkS and value on one of them and ref on another.
Typically we hev PCBs without any farb on it (people use SilkS here). But from time to time we make some pritings on PCB. I supposed to use Dwgs.User to it. And it is the reason I’m not sure which layer to use for dimensions.
It is my first try. May be I will decide to export separate layers and then combine them using some other programm (I didn’t check what GerbView can help here).
Makeing doccumentation under Protel was frustrating and time consuming process and moving to KiCad I wonted to make things that way to get it directly from PcbNew.
Not final decision yet.

The silk screen is for the text and (pin) marks you want printed on the PCB itself.
These are usually part of the (collection of) gerber files you send to China to get your PCB.

The user and Fab layers are purely meant for documentation purposes. You can put anything you want on them.
These layers are normally not even included in the gerbers you send away.
You can make PDF or SVG files from them for documentation purposes.

If you have very specific wishes of how which text you want on which layer, then start by making custom footprints which already have the text and graphics you want on the right layers. Then as a last step rotate text and move it a bit of text around to avoid overlaps and such.

From what I remember, in 4.0.7 the cursor doesn’t snap to the grid in the new canvases, but does in the legacy canvas. (I’m using Windows. MAC and Linux may be different or the same. As always, YMMV.)

I can confirm what @eelik says that the cursor position snaps to the grid in the OpenGL canvas (I haven’t checked in Cairo, but I don’t see why not there). It isn’t immediately apparent though because the mouse pointer doesn’t snap to the grid. But if you select in Pcbnew’s Display Options to always show the crosshairs you will see the snap in action. (Without the crosshairs, I had to watch the coordinates on the bottom of the screen to verify the snap.)

So, sorry to say that if you can’t upgrade to v5 (there are lots of valid reasons so I’m not judging), you’ll have to wait until you can upgrade. In the mean time, you might be best served by learning the keyboard shortcuts (legacy=F9, HW acceleration (OpenGL)=F11, SW acceleration (Cairo)=F12) for switching canvases and do some work in Legacy and some in new.

I am doing my first KiCad PCB using 4.0.7 and then I suppose V5 will be available.
I don’t know if V5 (not final, stable) I can get from somewhere in ready to install version for Windows.

It is available as a revision between RC1 and RC2 as a nightly called RC1-dev (see the link in the “Nightly Development Builds” section of the windows download page). It seems fairly stable to me, but things may change overnight… If you are learning v4.0.7, it might be best to stay with that one until the v5 stable is released with well documented library upgrade instructions. But, if you are adventurous there are a lot of usability benefits of the current v5 nighties.

Be warned, it is pretty much a one way street. It is difficult to go back to v4.0.7 from v5 because of new features in the saved projects and settings files that v5 introduced. And, you can’t run both on the same machine unless you run one in a virtual machine because they will try to share settings files and v4.0.7 may choke on the new settings file.

In Draw function I can gest only one layer at time - so it is not posiible to get black picture of elements on the gray view of copper. In Draw I can on/off Ref and Value fields.
In Print and Export SVG functions I can combine layers and can get my PCB extended to whole page but I can’t switch on/off Ref and Value fields.
So to get what I wont I have to have what I had written previously. The other solution would be to have courtyard at one layer, Ref at second and Value at third. And it have to be F/B layers.
So till now I decided to use two layers with the cost of haveing to draw courtyard twice.

Of course. After the decision of how to do it I have made all footprints I need for that first PCB and now I am trying to use them.
When I’ll be ready, and when I’ll look what V5 can output may be I’ll change my decision.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.