SparkFun Forums 

Where electronics enthusiasts find answers.

Questions about the BatchPCB service

Moderator: robacarp

By eejake52
#5268
In spite of my attempts to follow all the rules, I'm in the drillfile doghouse because my drill file wasn't quite right. The message I got from SFE was "In the future ... export your drill file in 2.3 trailing suppression format."

I am using Eagle V4.14, I used SFE_special.cam to generate the file, and I checked it with Viewmate. I also read all the FAQs, tutorials, and most of the forum posts. So where was the glitch? Can someone help please.

Jake
By eejake52
#5273
Here is the first few lines of the file that got me in the doghouse:
Code: Select all
%
M48
M72
T01C0.0320
%
T01
X1423Y1927
X1423Y2927
X1423Y3927
X2423Y3927
I found that the file eagle.def, in section [EXCELLON] has entries that look like sprintf() strings, that control the way the above lines are printed. Specifically:
DrillSize = "%sC%0.4f\n"
controls the line T01C0.0320

and this one
Drill = "X%1.0fY%1.0f\n"
controls the the other lines like X2423Y3927

BUT
ResX = 10000
ResY = 10000
also controls the resolution of the X & Y coordinates.

Is this the right place to be messing?

Has anyone come up with a good solution?

Jake
By donblake
#5293
eejake52 wrote:BUT
ResX = 10000
ResY = 10000
also controls the resolution of the X & Y coordinates.
Jake, I believe this is the problem. I've done one Spark Fun PCB successfully. This section of my eagle.def file is:
ResX = 1000
ResY = 1000
If you're using ViewMate to view the drill file, note that ViewMate defaults to 3.4 mode. Before you import the drill file, click options and change the format to 2.3.

Don
By pittuck
#5294
so just to confirm the sparkfun cam fIle does work???
By eejake52
#5297
Pittuck> "so just to confirm the sparkfun cam fIle does work???"

It generates the gerber files fine (top and bottom traces, solder mask, silk screen); but it doesn't appear possible for a cam file to change the behavior of the drill file settings; looks like we have to edit eagle.def for that.

I'm a rookie at eagle, so if there is anyone who knows better, feel free to chime in.

Jake
By donblake
#5304
eejake52 wrote:...but it doesn't appear possible for a cam file to change the behavior of the drill file settings; looks like we have to edit eagle.def for that.
BTW, I didn't edit my eagle.def file. Jake, did you edit your's? If not, does anyone know why they'd be different?

Don
By eejake52
#5310
Don> "did you edit yours?"

No, I am using V4.14 and it came with ResX = ResY = 10000. I downloaded a fresh copy of the zip file from cadsoft to check that.

:idea: Just now I checked the release notes for V4.14 and it says:
" Increased resolution of EXCELLON driver to 1/10000 inch."

So the mystery is unraveled!

Sparky,
You should probably update the Eagle FAQ page as follows:
If you are using Eagle V4.14 or later, make a backup copy & edit file eagle.def (in the bin subdirectory), locate the EXCELLON section and change the value of ResX and ResY from 10000 to 1000.

Perhaps a better solution would be to define a new section called EXCELLON_SFE, but that would meant the SFE-Special.cam would need to be changed also.

HTH,
Jake
By pittuck
#5311
ok i am emailing this to nathan now, worst thing he wants is 20 or so orders from people with wrong drills (lol)
By nall
#5317
eejake52 wrote: You should probably update the Eagle FAQ page as follows:
If you are using Eagle V4.14 or later, make a backup copy & edit file eagle.def (in the bin subdirectory), locate the EXCELLON section and change the value of ResX and ResY from 10000 to 1000.
weird. i sent in a board a month or so ago made with eagle 4.14 (without any mods to eagle.def) and it came out perfect.
By eejake52
#5320
Nall,
On my recent order, SFE corrected the file and sent me an email about it; so my only explanation is that they probably corrected yours too.

If you still have the exact file, please post the first 15 or so lines.
Here is an example of the WRONG format:
Code: Select all
%
M48
M72
T01C0.0320
T02C0.0360
T03C0.0440
T04C0.1300
%
T01
X10856Y8792
X10856Y9792
X10856Y11792
X10856Y14792
On the last line, the location of the hole is implied as:
X = 1.0856; Y = 1.4792

SFE wants the file format to show as: X1086Y1479

Jake
By pittuck
#5321
Its because they need 2:3 format, with LZ.

So leading zeros can be ommited, BUT there must be 3 decimal places.
By nall
#5326
eejake52 wrote:Nall,
On my recent order, SFE corrected the file and sent me an email about it; so my only explanation is that they probably corrected yours too.

If you still have the exact file, please post the first 15 or so lines.
Well, crap. Here I was feeling good about myself that I hadn't caused SFE any troubles and my drill files suffered from the same problem you describe:
Code: Select all
%
M48
M72
T01C0.0320
T02C0.0400
T03C0.1300
%
T01
X4216Y9992
X4216Y10992
X4116Y13392
X4116Y14392
X6716Y14892


So is the appropriate fix to change eagle.def?
By BSpark
#5406
Awesome! Lots of people (undoubtedly myself included) will benefit from this discovery!
Just now I checked the release notes for V4.14 and it says:
" Increased resolution of EXCELLON driver to 1/10000 inch."
Thanks Jake!
By NleahciM
#5571
Hi - I just got the same message from Ben - but looking at my drd file it seems everything is two 3 decimal places, which I think is what is wanted? I made this in Eagle 4.13, by the way. I followed the instructions here: http://www.sparkfun.com/tutorial/PCB/ea ... torial.htm to the word.
Code: Select all
%
M48
M72
T01C0.0320
T02C0.0280
T03C0.0400
%
T01
X357Y243
X407Y403
X307Y553
X257Y703
X257Y853
X657Y853
X807Y903
X807Y803
X807Y703
X807Y603
X707Y553
X657Y703
X807Y403
X757Y243
X1107Y403
X1157Y253
X1507Y403
X1557Y253
X1607Y553
X1657Y703
X1657Y853
X1257Y853
X1107Y903
X1107Y803
X1107Y703
X1107Y603
X1207Y553
X1257Y703
X1257Y1033
X1257Y1173
X657Y1173
X657Y1033
T02
X297Y1032
X297Y974
X268Y393
X327Y393
X1588Y393
X1647Y393
X1617Y974
X1617Y1032
T03
X1057Y1203
X957Y1203
X857Y1203
X907Y453
X1007Y453
X957Y253
X1057Y253
X857Y253
M30
By LukeZ
#5573
I just placed my first PCB order, after reading through the tutorials and this forum. Like NleahciM, I got a reply that next time it would help if my drill file were in 2.3 trailing suppression format.

It seemed to me I had followed the instructions pretty well... As was suggested here, I changed my Eagle.def file so that ResX and ResY in the EXCELLON section are now 1000, whereas previously they were 10,000 (I am using Eagle 4.14).

Here's the first bit of the drill file I submitted - like NleahciM, it seems to me this is in the correct format. Am I missing something?


LukeZ

Code: Select all
%
M48
M72
T01C0.0315
T02C0.0320
T03C0.0400
%
T01
X681Y893
X831Y1343
T02
X1031Y1243
X1131Y1243
X1231Y1243
X1331Y1243
X931Y1143
X931Y1043
X1031Y943
X1131Y943