I’ve created a PCB in Eagle with the origin in the lower left corner of the board.
When I generate the gerbers and view in ViewMate (or Viewplot), the lower left corner of my board is not at the (0,0) origin. It is almost at (110,470)mil but in both mil and mm grids, it’s not at an integer location. Is this a flaw in my design? A bug in the gerber generation? A bug in the ViewMate/Viewplot software?
How can I fix this, or is it not a problem?
Should I post all or part of my top layer, which has the board outline on it?
You may have to tell ViewMate that the Gerber data is in 2.4 format. If that doesn’t work, then make sure that in both “excellon.cam” and “gerb274x.cam” that “Offset” for both X & Y are both 0. Also make sure that “pos coord” is checked. Oh, and make sure that “mirror” is not checked for any layers if you are getting your board made at a board house.
BTW, alternate Gerber viewers are GCPrevue and Gerbview. Both are free.
That is indeed my setup. I changed some of the placement and routing on the board, and now the offset is at a different location.
When viewing in Viewmate or Viewplot, both top and bottom layers align as they should, and when importing the drill file I need to manually change it to 2.4 for the holes to align where they should.
All the layers have this same offset from the origin.
Anything else you can think of? Would you care to look at these three files?
I looked at the Gerbers of some boards I had designed, using GCPrevue (v17.1.2). And then I downloaded ViewMate v10.6.34 and looked at those same boards. Both ViewMate & GCPrevue showed the left bottom corner of the board (I had a board outline in the top silk layer) offset from the viewer's absolute 0,0 position. The offset to the board's left bottom corner for 1 of my boards is:
I’m observing the same problem with offsets. Even though I carefully place a hole or the corner of a box at x0y0, it shows up somewhere else in the cam output. It may not bother a commercial house working with a set of files all run at the same time but I’m making my own boards and it would be a lot easier it I could get the origin to stay at zero. Does anyone know of a fix for this? I work around it by placing a reference hole on the board at x0/y0, running cam on it and looking at the offset in the output. I then enter the negative of the offset in the cam window and re-run the job. Is there a better way?
There is a “positive coordinates” option in the gerber output. This shifts the board image such that all coordinates are >=0. This step is whats responsible for output coords not matching input. I ran into this exact issue while working on some software yesterday.
This option might be necessary if the fab is using old or broken CAM software.