Creating a DXF drill file

I need to create a dxf drill map with specific markers that are readable by my cam software. I made a KiCad dxf drill file with default X markers that was not suitable. Is it possible to use circles or dots instead of X’s?

Solved. DXF files contain different markers that represent different sized holes. The smallest hole is marked with X. The second biggest hole is marked with a circle. Since I needed circles for all my 1mm holes I made one hole less than 1 mm. I can now use my favourite CAM app to produce Gcode for drilling holes in my PCB’s.

The intended use for the drill file is for humans to have some kind of visual reference. I wonder who and how anybody ever thought using them for CAM data was a good idea.

Having to manage hole size in KiCad to be able to use this file for CAM seems quite cumbersome. But I have to admit, thinking of this solution is quite clever.

Writing a script to read in the “exellon” drill file and convert them to G-code would be quite simple, and there is probably already a load of software out there that can do this. This may be aomething to remember if the markers in the DXF file ever change or become unusable.

Love your humour. After posting, It did cross my mind that I was probably the only human on the planet that wanted O’s rather than X’s in a DXF file so I gave up hope of receiving a reply… So, thank you for your reply and curiosity, I feel rather privileged that you took the time to answer my silly question. :clown_face:. Anyway, it turned out very well indeed… and it may not be as cumbersome as you think. The story behind it may be useful for anyone making PCB’s on a Macintosh.
Initially I wanted to make PCB’s with my CNC machine. Most CAM software is for Windows only and with a lot of generous help from @BlackCoffee I managed to set up a Windows Cam app on my Mac. Unfortunately I encountered numerous problems with the Cam and Windows platform software and after more generous help from the Cam owner I still had problems. After searching the world for alternative PCB cam software I decided to focus on a KiCad solution. Apart from using KiCad dxf files for generating Gcode for drilling, I use KiCad postscript files to generate PCB artwork that I use with a dry film home made PCB process. The artwork is printed onto an inkjet Epson transparency. And my first PCB is something to behold.

I also have a mild interest in milling PCB’s and recently I cloned FlatCAM and managed to run it with one of my gerber files (I have not done actual milling). FlatCAM does seem usable, but it leaves lots of small dots of copper that are not properly milled, which is inexplicable to me. It nicely generates an (adjustable) number or contrours, but in the corners between contours it leaves small spots.

Another annoying thing is that it has far too many adjustments, and the beta version I got working annoyed me further because you can generate a set of milling contours with a handful of mouse clicks, but deleting the contours (because they do not work) pops up a lot of nag screens. The beta version I had also could not remember the settings you made in the first place, which adds another load of repetitive mouse clicks.

Quite sad actually. FlatCAM has a lot of strong points but it’s user interface seems to be a random collection of vaguely useful things that got accumulated over many years of tinkering. I do think it has got a lot of potential, but it has to get rid of those copper dots on all the corners and the user interface needs a thorough cleanup.

Another possibility for me is to use bCNC. It’s not dedicated to PCB milling, but it can load a DXF file and add offsets to contours. It would therefore need a bit more manual work for each PCB to mill, but my intention for milling PCB’s is mostly for relatively small and simple stuff. For more complicated or bigger PCB’s the cheap fab houses are usually a much better option.

If you are on a Windows machine copperCam would be a good choice. It worked for me when I tried isolation milling but went down hill after that. I hated the results of CNC milling and went for the more elegant approach of dry film.

CopperCam is no good for me. It’ does not run (natively) on Linux, and it’s not Open Source.

@barrie, After our last communication, given your comments, it occurred to me that, perhaps, you didn’t fully understand Feeds, Speeds, Depth of Cut. And, the ‘Units’ required by your CNC Machine, all with respect to setting-up and using CopperCam.

Though you successfully etched a PCB, and perhaps no longer interested in Milling a PCB, I provide the following should you be inclined to further tinker and get it working…

Milling Tool-Bit:
You can use V-Bits but, though they can do a nice job, consistent results are a challenge because the further-down the Bit goes, the Wider the groove and the Narrower the Trace. So, variations in depth setting matters a lot. Also, they can leave rough edges and, if the Step-down is too much, they can Poke-Holes/Grooves through the PCB.

I stick with 0.7mm to 1.0mm End-Mill bits. Usually I use 0.7mm with Engraving Depth at 0.4mm to 0.6mm. Usually 0.5mm

Rotation Speed of the bit: I does matter! And results can range from Rough to Excellent.

Tip: I set the Bit’s height by using a Cigarette/Joint rolling Paper for a Shim (preferring RAW and ZIG-ZAG brands). Their thickness does vary so, given a desired 0.4mm Depth-Of-Cut (for example), the actual Engraving Depth will be Less. Knowing the Brand/Thickness, I set the height by feeling the Snugness of the Shim and set the Z=0 based on that and experience. I test in several locations on the PCB.

Engraving Speed = 160 mm/min. Be sure you have consistent Units! Many CNC’s for Hobby use don’t go beyond 1000rpm so, user needs to adjust Depth of Cut and Milling Speed.

@paulvdh, I understand but, mention a friend recently installed CopperCam on Linux Mint (using PlayOnLinux) No problems.

Screenshot of the standard setup, rolling-paper thickness, Milled Examples and V-Bit Example

Nice & Clean with 0.6mm, 0.7mm, 0.8mm End-Mill Bit

0.3mm V-Bit

1 Like

Must say I am very impressed with your comparison results. Thy certainly display good examples of what can be done with CNC milling. When I first realised V bits were not a good choice, I decided to try end mills. Unfortunately, at that point, I experienced more problems with copperCam and ended up re-installing it. The next problem was that CC could not read my user license. After many emails with Bertrand, the owner of CC, we concluded CC was installed correctly and the problem was a Mac issue… although CC file read/write privileges were set for both read and write… and that was the straw that broke the camels back. I abandoned CC and developed an impressive dry film drill and etch process utilising KiCad’s dxf and postscript files. If CC installed my license, I would be tempted to take another shot at milling.

Ahhh… the License problem:

I never had License problem until Bertrand changed how it’s managed - that caused me much head-scratching until I discovered (with Bertrands insight from noticing something in a screenshot I sent him).

There used to be a License file, now the License info get embedded into the INI file (grabbing info from a License file and/or the License Panel. But, afterwards (after it’s transferred to the INI) the info disappears. And, Everything is good UNLESS (this is the Trick…)

This is the Upshot/Trick of the problem: There MUST NOT any other “.exe” file in the CC folder. That was a change from previous versions. That’s what Bertrand noticed in a screenshot - I had the cpsetup.exe file in the folder. After I removed it, and went through the Setup again, Bingo! License now updates correctly…

Screenshot shows my current folder contents (Yes, I deleted the Sample Gerbers (I don’t need them). I also created custom post-processor files…

It is very interesting to know you had a similar problem. Bertrand did explain the integration and deletion of the license. I sent him my set up and he said everything was OK. BUT… I see a difference in my setup to yours. I have two exe files as you see in the screen shot I sent to Bertrand. He never mentioned that saying: “Uninstalling and reinstalling is never a solution. It it clear that you have lockers that block disk accesses from CopperCAM.” and said my setup was good.

I just deleted the other exe file and restarted CC. No change. Still flagged as a demo version.

Two Screenshots show Bertrand’s comments to me…

When re-doing the installation, the .LIC file was automatically deleted (as is supposed to happen if coming from older installation). Thus, you don’t see .LIC in my folder.

ADDED: Screenshot of the .INI License section…

1 Like

As I understand it, the License info pulls into the .INI when Re-Installig by clicking the cpsetup.exe That’s how I did it. And, cpsetup.exe should be in a different folder (such as the Download folder/etc…). CC will create a new folder or use existing one but, will NOT put copy of setup in it (so, don’t put anything such as INI, EXE… into the folder)

After Reinstalling, click File>License and fill in the Info. If everything is correct re Files, then the INI will get populated with the Info. On my system, the License Panel retains the info but, ONLY if all is good. I just checked and it’s still populated with the info.

I made a Video for Bertrand that shows the .INI being re-written without the Info, that’s when Bertrand noticed the other files in the folder.
After I cleaned them out and reinstalled CC, all magic happened…

1 Like

Your tenacity is nothing short of amazing! Problem solved. This time I opened POM ignored the CC shortcut and opened CC by clicking cpsetup.exe on the C drive as you suggested. Checked Help>License (your CC must be older than mine) and the info was loud and clear. Also the .lic file was gone. Maybe other problems were caused by always opening CC from POM cc shortcut. Many thanks again for your help but you leave me with a dilemma. :thinking:

Finally! I know I did mention (several times) how to do it (never from POM shortcut). I simply dragged an Alias (shortcut) of the CopperCam.exe to my Dock-Strip. Naturally, I made a custom Icon. It launches directly from that.

I’m sure you can make Icons if wanted…

Don’t know what dilemma I left you with, save that of deciding to make PCB’s with Dry-Film or CNC…

Spend some time with CC - once the learning-curve dust settles, it may become your favorite program…

Yes, CNC or not CNC, I made a nifty little exposure box and currently assembling my first PCB. It is an arduino countdown timer. Current exposure time is around 10 secs and the timer will help me get a more accurate exposure time… I invested a lot of time in developing the drill etch process which works very well. However, I will give it another try after i finish the timer project.

1 Like