SparkFun Forums 

Where electronics enthusiasts find answers.

Questions about the BatchPCB service

Moderator: robacarp

By g1powermac
#8672
Hi All,

I'm in the process of making my first PCB design and decided to use WinQcad for it ( http://www.winqcad.com/ ). I've finalized the design and tried uploading the Gerbers to Batchpcb. It seems the DRC bot doesn't like my top layer. I'm getting these errors:

Checked Aperture 10 ( 0.0040): Failed
Error - Aperture too thin
Checked Aperture 11 ( 0.0072): Failed
Error - Aperture too thin

I've had WinQcad do its own DRC on my board (12.5 mil) and it went through fine. Not sure what exactly to do at the moment as this is totally new for me :-)

Any help would be great.

Thanks,
J Silverman
User avatar
By sparky
#8808
Aperatures have to do with your drill file. Check and make sure that WinQcad is not using smaller than 20mil drills and vias.

-Nathan
By Philba
#8810
first, get viewmate (free dl, google for it).

then, with a text editor, open up the gerber file that has the bad apertures. you will see something like this near the beginning of the file:
Code: Select all
%ADD10R,0.0710X0.0630*%
%ADD11R,0.0630X0.0710*%
this defines aperture 10 and 11. You will see 0.0040 on the same line as ADD10 and 0.0072 on the same line as ADD11. Then look down to a section that looks like this:
Code: Select all
D10*
X012145Y008315D03*
X013145Y008315D03*
...
The lines following D10 define the X, Y locations where the aperture is used. Look for a similar section that starts D11. In the above example, aperture 10 is used at locations 1.2145, 0.8315 and 1.3145, 0.8315.

Now, start up viewmate and load the gerber. position the cursor at the locations your gerber has and that will be the offending feature on your board.

Note that you may or may not be able to use your PCB sw to find the location as the gerber may be generated with offsets (eagle does that).
By g1powermac
#8824
Hi Philba,

I've been doing some investigation into the Gerber files created by WinQcad with ViewMate and found a couple of interesting things. First, ViewMate will allow you to turn the visibility of certain aperatures on or off and found out that aperature 10 is the outline of the board and 11 is for automatically placed text on the outside of the board's border. I can delete the text easily, but not sure what to do with the outline. Also, when I open the top layer Gerber file, I get this at the top:
Code: Select all
%ADD10C, 0.0040*%
%ADD11C, 0.0072*%
It's a bit different than the example you mentioned. Not sure if that too is causing any issues.

Any help would be great.

Thanks,
J Silverman
By Philba
#8828
I don't know winqcad (eagle uber alles...) but those are valid aperture definitions - your's is defining a line width.

Is the board outline in the copper layer(s)? most odd if so. or perhaps it's in a seperate layer that you could turn off when making the gerbers. I would think the outline would be a seperate gerber anyway (like SFE should take, hint hint).

Phil
By g1powermac
#8830
Hi Phil,

Yea, the board outline is defined as a line/trace in every layer. I'm not sure why WinQcad does that. I've also tried deleting the lines defining the outline on all layers except the mechanic layer (and set the mechanic layer as the keep out layer) and amazingly, the DRC bot accepted that. However, the given dimensions of the board are incorrect and therefore am charged more for the board. So that doesn't seem to work to well either. I love WinQcad for everything but this issue and would really like to use BatchPCB as I can't find prices this good anywhere else. Any further help would be great.

Thanks,
J Silverman
By Philba
#8832
well, sorry nathan, but SFEs method of determining board outline is just plain wrong. It would be best to have a board outline gerber (gerbmerge uses a border gerber file - .bor). I bet they have to give GP an outline layer.

So, to make the SFE stuff work, you have to figure out how they determine board size. I believe they simply scan all the gerber files and use the min and max dimensions they see. My guess is that you have something on your silkscreen layer sticking out. In eagle, there are lots of ways this can happen and, typically, I modify the library part outline so that the gerber doesn't have anything that protrudes from the outline of the board. Maybe you could do something similar in winqcad.

Phil
By pittuck
#8834
Philba wrote:well, sorry nathan, but SFEs method of determining board outline is just plain wrong. It would be best to have a board outline gerber (gerbmerge uses a border gerber file - .bor). I bet they have to give GP an outline layer.
well, not all software gives this gerber, in some software its even an optional extra when designing to make a board outline (autorouters need them, others dont).

So, until the gerber format makes having an outline files necessary, we have to keep this way (any more checks on files existing etc. will run into time problems, some boards already have problems with size checks taking too long [we cant just take the board outline as the board size, people will try to cheat])
By Philba
#8836
pittuck wrote:
Philba wrote:well, sorry nathan, but SFEs method of determining board outline is just plain wrong. It would be best to have a board outline gerber (gerbmerge uses a border gerber file - .bor). I bet they have to give GP an outline layer.
well, not all software gives this gerber, in some software its even an optional extra when designing to make a board outline (autorouters need them, others dont).

So, until the gerber format makes having an outline files necessary, we have to keep this way (any more checks on files existing etc. will run into time problems, some boards already have problems with size checks taking too long [we cant just take the board outline as the board size, people will try to cheat])
but if they "cheat" then give them the board to the outline they requested - it will be a bad board but that's their problem. gerbmerge clips to the outline gerber (.bor) so it's not impossible. If you haven't played with gerbmerge, you really should - very nice piece of work. As it is, embedding the outline in the silk layer is problematic since you guys don't say where the cut line is (either the cut itself or router center line and tool width). I can guess that it's the outer edge of the line but I'd prefer not to guess.

Note, I'm not trying to dis you or your service, I think it's great. I think you guys are great and providing a really useful service. I just think the whole size/border thing needs fixing.
By Philba
#8838
g1powermac wrote:Hi Phil,

Yea, the board outline is defined as a line/trace in every layer. I'm not sure why WinQcad does that. I've also tried deleting the lines defining the outline on all layers except the mechanic layer (and set the mechanic layer as the keep out layer) and amazingly, the DRC bot accepted that. However, the given dimensions of the board are incorrect and therefore am charged more for the board. So that doesn't seem to work to well either. I love WinQcad for everything but this issue and would really like to use BatchPCB as I can't find prices this good anywhere else. Any further help would be great.

Thanks,
J Silverman
OK, I got curious about winqcad as I've seen it mentioned several times. I installed and made a small board. I'll not waste bandwidth (much anyway) on the sw but found it very clumsy and restrictive. Anyway, I made a gerber and found that it's tossing all sorts of unnecessary stuff into the gerbers. The outline layer (mechanic) has text outside the border. The copper layer has both text and some sort of registration dots outside the border. They look to be 160 mil on the X axis and 70 mils on the Y (just by eyeballing it with the viewmate cursor). So your board should be (X+.160) X (Y+.70) bigger by batch PCB calcs where X and Y are your "true" board sizes. You can delete the text but not the reg dots. I didn't see a way to remove them in the software.

Unfortunately, free viewmate won't allow you to save modified gerbers. sigh. You might be able to delete them from the gerber files but that seems error prone.