CNC PCB milling

  • Hero Member

    The NVBDH+ brushless spindle and controller arrived today, and so I hooked them up to a power supply and gave them a quick test spin. It runs comparatively quiet. The motor itself is pretty much sealed. On the positive side of that, little if any dust will ever get inside it. On (maybe) the negative side, the fan basically directs air at the back of the motor, and not really anywhere else. I’m only guessing, but keeping other parts of it cool may prove challenging if doing a lot of deep cuts on wood, for example.. For milling PCB’s, I don’t think it will be a problem though. It has little, if any, visible run-out, so in that dimension it appears to be far better than the spindle that came with the 2418 kit. πŸ™‚

    I won't be able to test it on the CNC itself until after my 3D printer arrives because it's too large to fit the kit spindle's holding bracket.

  • Hero Member

    @coddingtonbear How hot does your motor get when you're using it? I'm concerned that only one end of it seems to be getting blown by the fan, and since it will be held by plastic....

  • Hero Member

  • Hero Member

    I found a very similar motor being used on a thingiverse printed CNC machine: and also: . That's giving me more confidence that the heat will be manageable.

  • Hero Member

    Epilog: I ran the brushless spindle unloaded continuously at its maximum speed and monitored its temperature using a DS18b20 temperature sensor beneath the holding bracket (so, getting the least amount of circulated air onto it). It reached an equilibrium temperature of around 31C. Also, it turns out that it actually does have pretty good air flow. So, I’m no longer worried about this spindle getting too hot. πŸ™‚

  • Hero Member

    UPDATE: I received and installed a pair of chromed hardened steel rods onto the x-axis. Wow! I could feel an immediate improvement in rigidity. I wasn't really expecting that, so it made me curious. I tested the new rails with a magnet: yes, they attract a magnet. Then I tested the old rails with a magnet. No attraction! Therefore, I think maybe the old rails are probably aluminum. Aaaargh! That would explain a lot. So, FYI for anyone else who buys one of these Chinese kits.

  • Hero Member

    Yup, I just now did a spark test on the old rods, and the result is conclusive: definitely aluminum. I should probably replace the z-axis rails as well.

  • Hero Member

    Epilog: Definitely much less vibration in the CNC now that the x-axis rods have been replaced with steel rods. I've ordered y-axis and z-axis steel rods, so I plan to replace those as well. Hopefully doing so will damp the vibration even further.

  • Hero Member

    I just now ran across z-axis tape, which may prove to be a God send for using any of the 6mil isolation routed PCB's that I might make on this PCB etcher. The problem I was having with such isolation routed boards was: no solder mask! So, soldering parts to the boards just wasn't working for me, and I had fallen back to producing boards with much larger isolation widths. However, it appears that with 3M's z-axis tape, I can just tape the SMD parts down onto the board, with no soldering required!

    Amazing! From my perspective, it's downright revolutionary:

  • Mod

    @neverdie Interesting stuff! I didn't know it existed.
    I saw a sparkfun youtube video in which they use it to tape down an ATMega TQFP instead of soldering it, but they keep it pressed down during the demo.
    So, do you think it can also be used to mount chips?

  • Hero Member

    @yveaux said in CNC PCB milling:

    So, do you think it can also be used to mount chips?

    Yes! One of my favorite youtubers shows it being done at time index 1:00 on:
    Part 2: Hi-Res Pressure Sensor Matrix Mat finished – 09:37
    β€” Marco Reps

  • Hero Member

    Anyone know whether it is possible to etch some or all of the silkscreen onto the PCB? I've tried some googling, and I haven't found any leads on how to do it using flatcam.

  • @neverdie What about using toner transfer paper and ironing it on. Just print it reversed on a sheet, cut it out and iron it on. If you use a color laser you could do something other than black. Obviously you won't get white like a lot of fabs use, but I would think it would be good enough.

  • Hero Member

    @executivul said in CNC PCB milling:


    Have you tried it? i.e. Do you know if it works, or is it a blind reference?

  • Hero Member

    Here's a very impressive looking demo of PCB etching:

    I checked the machine specs, and it's a maximum of 11,000RPM on a brushless spindle . That's very encouraging.

  • @neverdie I never used it to do silkscreening, but years ago I made a few PCBs to try a sheet out. It worked okay. I had some gaps in some traces on some the boards. That may have been from me not cleaning the board well enough before doing the transfer.

  • Hero Member

    @dbemowsk Since the etching has to work (else there will be no PCB), I'd rather keep it within that domain if possible. Wegstr's lettering (above) looks very nice.

  • @neverdie said in CNC PCB milling:

    @executivul said in CNC PCB milling:


    Have you tried it? i.e. Do you know if it works, or is it a blind reference?

    I've done it a few times, be careful though you don't cut your traces with the silkscreen πŸ™‚
    I use the tracing option all the time for custom cutouts when panelising boards, generate cutout paths in Altium and trace in Flatcam.

  • Hero Member

    My Prusa i3 Mk3 still hasn't shipped due to production delays, and so I haven't been able to mount the new spindle yet on my PCB etching mill. Meanwhile, it looks as though the existing setup may just barely be good enough for etching pads for the atmega328p SMD. By using lots of rosin flux, it looks like I can solder to it without unresolvable solder bridges.

  • Hero Member

    Also, I received a TMC2130 stepper driver, so I'll be auditioning that fairly soon:
    Supposedly it is a bit more precise, and so that may help also. If it pans out, then I'll order TMC2130's for the Y and Z axis also.

  • @neverdie Here is an interesting approach that might work, but it requires etching.
    Making PCB with 3D printer and permanent marker – 07:57
    β€” Lamja Electronics

  • Hero Member

  • Hero Member

    Good news! This guy has identified what may be the ultimate stepper motor driver for CNC:
    Precision motion control: ODrive Servo? Trinamic Stepper? Chinese Hybrid? – 11:38
    β€” Marco Reps

    And he says that by pairing it with your own mosfets, you can send up to 20amps to your stepper motor. Taken altogether, this sounds like a really good setup to me. πŸ™‚

    I assume that with this gear you can just tell the motor to go at maximum speed all the time and let it decide (through monitoring) what that speed should be. No more underperformance or endless tuning of parameters.

  • Hero Member

    @coddingtonbear said in CNC PCB milling:

    If you haven't designed your own mount, you might want to check out the part I posted on Thingiverse the other day: .

    I'm finally able to print this. Is 20% infill OK, or does it need to be completely solid?

  • @neverdie IMHO I wouldn't think you would need it completely solid. make sure your side walls are thick enough though. I would use 1mm or more for strength. That's just my opinion though.

  • Hero Member

    I blithely printed the parts using PLA. Now I need to find a strong glue to weld the braces into place. Anyone know of a strong glue that works well with PLA?

  • Hero Member

    @neverdie Answering my own question, it appears (according to this Hackaday article: that weldon #16 will do the business in terms of solvent welding PLA.

  • Hero Member

    Comparing my spindle mount:
    to Coddingtonbear's 55mm spindle mount:
    it seems that mine is intended for a 52mm spindle. Unfortunately, I'll just have to make do, as nobody that I can find seems to be selling standalone true 55mm spindle mounts, like Coddingtonbear has.

    Fortunately, though, the holes on mine do align with the holes on Coddingtonbear's 3D printed adapter. πŸ™‚

  • Hero Member

    I upgraded to the brushless motor after 3D printing cottingbear's adapter. Then I ran @executivul 's test scripts to check its performance. It looks as though the new spindel can support faster feedrates, but the trace isolation is 0.7mm, which is much larger than the original cheapo spindle. 😞 It has an ER8 on it, not an ER11. Not sure if that's to blame (?). I wouldn't think so, though, because I'm using a 1.75mm collet on it.

    The z-axis still has a lot of flex in it. I think that's probably a factor. I'm not sure what can be done to mod my way out of that. Perhaps I'd be better off getting a proper CNC mill rather than this wobbly type of design.


    I can now see the advantage of having two z-axis motors, one on each side of the spindle. That would probably give it at least a bit more rigidity. Either that, or a single very rigid,, unmoving central column as used by mills.

  • Hero Member

    Any suggestions on how to improve it?

  • @neverdie said in CNC PCB milling:

    I can now see the advantage of having two z-axis motors, one on each side of the spindle.

    Maybe just a stronger stepper motor.

  • Hero Member

    I switched to a 52mm spindle, and now I'm getting better results:
    The benchmarks on the right were produced by the 52mm spindle. πŸ™‚ Those on the left by the 54mm brushless spindle.

  • @neverdie I guess some backlash being present. Is the brushless heavier than the other one?
    The width of the cut is proportional to engraving bit tip size, depth of cut, tip angle, the spindle itself should be irrelevant except runout, of course, but you will hear the runout long before you see it, a 0.1mm of runout will make a hell lot of noise and rattling.
    For greater rpms er8 is better than er11, my 60k rpm has er8 the 24k have er11.
    Try to find the highers resonance pole rpm, turn the rpm to max, slowly decrease it while listening carefully, take a note when it's quieter, use the highest rpm that runs quietly. This setting unfortunately changes with every tool change, sometimes you won't have a good enough rpm resonant pole so you take out the bit, nut and collet and reassemble. By turning them you change the invisible runout a bit and you get another system state. On my spindle every 1/10-1/15 tool changes results in heavy resonance and I must proceed as above.

  • Hero Member

    @executivul Cool! Here's my first attempt at that, and it's already producing a visibly different result:

    As to which spindle is heavier, I don't know. The next time I demount the brush spindle, I'll weigh it and let you know.


  • Hero Member

    This guy developed his own method for balancing the high speed motors used on his quadcopter. I can't help but think that maybe something similar could be done on a CNC spindle.
    In depth video how to balance brushless motors using a vibration meter and tape - Ontaerial – 25:35
    β€” Yuri Retro

  • Hero Member

    And these guys have the same idea, but they instead use a laser to visualize the magnitude of the vibration:
    Flite Test - Laser Balancing Props - FLITE TIP – 07:11
    β€” FliteTest

  • @neverdie knowing the vfd has a speed input I guess I could wire a simple arduino with a mic. Take note of the sound level and get it calibtared in no time, at the push of a button, but that project is far away, I have other things on my mind for the next few months.

  • hello everyone,

    what is the current status with the quality, fine traces and result stability?
    after a long absence I finally had some time to finish my new board and prototype it.
    I don't have those issues that appearing for some of you, the result is pretty nice, the milling quality is the same across the whole board.
    in this design the thinnest traces were 15mils, and the smallest vias were 0.8mm with 0.3mm drilled holes.





    just for reference, please see my relevant configuration options detailed below:


    • cnc: cnc2418
    • carving: 2001 bit (20 degree, 0.1mm end)
    • mounting holes and outline milling: 0.8mm endmill


    • isolation routing: tool dia: 0.1176326981mm; width (# passes): 2; pass overlap: 0.05mm; cut-z: -0.05mm; feed rate: 200
    • milling: tool dia: 0.8mm; cut-z: -1.75mm; feed rate: 170; depth / pass: 0.3mm
    • drilling: feed rate: 120


    • flatcam
    • bcnc (also for the autoleveling)

  • Hero Member

    Hi Andrew,

    Since you ask about status, here's mine: I've now replaced all the aluminum smooth rods that came with my 2418 kit with chromed hardened steel ones which, it turned out, had about 0.04mm larger diameter. The result has been much less apparent vibration. I also upgraded the spindle to a higher rpm motor. I don't as yet have any quantified numbers to know whether the combination of doing all that has made any tangible improvement or not.

  • Hero Member

    @andrew I ran @executivul 's diagnostic with my new setup:
    Starting with 0.1mm, the trace width's increase by 0.1mm in each block.

    @executivul's g-code specified the feedrate at 1400.

    So, yeah, 15mil looks like it would be achievable, even at that faster feedrate. On the otherhand, the woodpecker setting limits x and y to 200mm speeds, so I guess (?) the speed never actually gets beyond those limits anyway.

    The next upgrade after this will be switching over to trinamic drivers, which may (?) be able to drive things a bit faster. That will likely require dropping woodpecker and switching over to marlin firmware so as to get the most out of the trinamic drivers.

  • @neverdie what was the cost for the overall upgrade?

    for me the 10 mil traces also worked with the default sw/hw configuration.

    did you change any parameter in the grbl firmware? 1400 feedrate is very nice, much faster than mine, however I did not use higher rates than 200 so far.

    your steppers are still the same? is it ok for the high feedrate without any issue?

  • Hero Member

    @neverdie said in CNC PCB milling:
    On the otherhand, the woodpecker setting limits x and y to 200mm speeds, so I guess (?) the speed never actually gets beyond those limits anyway.

  • @neverdie the controller does not limit it, but the firmware settings. however, based on my default settings the feedrate is limited (by config) to 800. check your $110, $111, and $112 config options.

    you are free to override this configuration with a different value, so you can try 1400 in the grbl firmware settings, which will cause real 1400 feed rate in case of you test G code.
    the questions is that how the steppers/spindle could handle this.

  • Hero Member

    @andrew said in CNC PCB milling:

    what was the cost for the overall upgrade?

    The spindle I'm currently using cost $34:

    I power it with a separate, adjustable power supply, since it can go to 48v.

    I had to 3D print an adapter for the new spindle to fit onto the 2418. Cottingbear has one on thingiverse. Aside from the plastic filament needed for the print (maybe $2 worth), it requires just 4 short linear bearings and a lead nut.

    The 6 chromed steel smooth rods cost around $20-30 in total, including e-packet delivery.

    My feeling is that the steel rods are a worthwhile and very easy upgrade, even though I don't have data to prove they make any difference. Not sure yet whether the new spindle will eventually produce better results or not, although it does run quieter, which is nice. πŸ™‚

    The yet to be used trinamic drivers cost $42.50:
    I got a couple extra in case I accidentally burn one or two of them out. I'll be plugging them into a RAMPS board, which is cheap, and which, as an arduino Mega 2560 shield, will replace the woodpecker board.

  • @neverdie Can you run a stock GRBL build on RAMPS?

  • Hero Member

    @dbemowsk said in CNC PCB milling:

    @neverdie Can you run a stock GRBL build on RAMPS?

    I don't know. I'm planning to use Marlin, which supposedly can exploit at least some of the TMC2130 driver's special features.

    After I get all that working, then I may upgrade to higher torque stepper drivers, still NEMA 17 though, as the trinamics can support more current than the A4988's that are on the woodpecker.

  • Hero Member

    I found out that I can buy precision rods and matching linear bearings directly from Because of the tighter fit, this would, I'm guessing, reduce the deflection on the x-axis.

  • By checking this discussion i have found a project online called: pcb cyclone factory. I am novice. What do you think about it ?

  • Hero Member

    @jeremushka Looks like it might be kinda shakey. Vibration is a notable enemy.

  • Hero Member

    Looks no worse than what I have .

  • I would like to create pcb's with a 0.5mm pitch as a target and I have tried to follow this thread for hints. Have you @andrew, @NeverDie or @executivul been able to get that done with the milling method?

    Then one of the problems with the 2418 that @NeverDie seemed to have was that the machine itself was not stable enough. Do you think that the cheap 3018 work better? For example

  • @lamikr pls see one of my very first test I made after I built my cnc. check the TQFP100 footprint.

    for me, the cnc2418 was good choice. with proper assembly it is very stable and its output is stable.
    I was using the cnc for designs down to 10mil traces without any issue.

    so, I have good experience with my low cost cnc but do to the lack of hands-on experience with other devices, I cannot compare or recommend others.




  • Hi everyone,

    can someone help me pick out what to order from

    I would like to order a 3018 pro, but which one?

    What drilling bits would I need to order to mill PCB?

    Any help much appreciated!!

  • Hardware Contributor

    @dennisc - I think its a matter of taste and preference, but there is 728 posts in this thread, many describing the pro and cons with different drillbits and mashines. Since its DIY its very hard to tell exactly what to pick - atleast for me - but lets see if someone else is bolder.

  • @sundberg84

    I know there are so many posts!

    I am under a bit of time pressure and can't wait for aliexpress or bang good, so I was hoping somebody just ordered something off amazon. (and I could copy that).

    I am interested in the 3018 Pro, that on looks good enough price wise at least. But maybe had an experience with Sainsmart or something else.

    Other important reason is that there have not been many posts in the last months in this thread.

  • I have bought a 3018 Pro and put it together today.

    I'm now trying to find out how to calibrate it, any tips would be awesome!

    Im using GBRL control.


  • Ok calibration was quite easy.

    I managed to get the x, y and z axis zeroed. Only thing I am wondering is this:

    I can see my file goes 0.2 mm deep. Is there a button to alter the offset?

    I found I had to do all kind of fake zeroing to get it deeper!

  • @dennisc I have myself ordered the 2418 from the Jack's store.
    I also ordered the parts for Ant's team's PCB machine based on the BOM on

    It will be intersted in for comparing these two and I think money will not be wasted as other one could in the end anyway be used for drilling if other one does the route milling.

    Another thing I am wondering how this will compare to Eleksmaker A3 with 405nm laser and Marco Reps modifications.
    Important upgrades for the EleksMaker PCB laser CNC machine – 07:40
    β€” Marco Reps

    Laser is interesting due to it's accuracy but I am worried from the reflected beams. I have only found out so classes for protecting from the beam but would rather like to see a full box made from proper shielding material on top of the Eleksmaker.

    Fourths interesting thing is the openpnp based pasta dispenser and pick and place machine.

  • @lamikr said in CNC PCB milling:

    Laser is interesting due to it's accuracy but I am worried from the reflected beams. I have only found out so classes for protecting from the beam but would rather like to see a full box made from proper shielding material on top of the Eleksmaker.

    Fourths interesting thing is the openpnp based pasta dispenser and pick and place machine.

    I made an enclosure for my 3D printer in which I had a plexiglass panel for the door. Not long ago I made a mod for my 3D printer that allows me to change to different tool heads.

    One of the tools is a 6 watt laser module. I got a piece of this to replace the plexiglass on the door of my enclosure. It is rated for the wavelength of my laser module which is 450nm. This might be a bit small if you wanted to make a complete cover made out of this stuff though.

  • @dbemowsk Thanks for the shielding material tip, I may buy it later if starting to work with 0.5w 405nm laser for engraving. (Some safe enclosure definetly needed)

    In the meantime I have not constructed my CNC 2418 from Jack's store and tested that I can control it by seding the g-gode commands from terminal. I have not yet tried to workflow from Kicad, to flatcam and from there to bCNC.

    Original GRBL firmware was 0.9j but I managed to upgrade it to v1.1h over USP without need for using another arduino as a ISP programmer and wiring it to woodpecker. Arduino-ide did not detect the board automatically but the flashing to grbl 1.1h worked with a following command out of the box on my linux by using a following avrdude command:

    avrdude -v -C/etc/avrdude/avrdude.conf -pm328p -carduino -P /dev/ttyUSB0 -D -Uflash:w:grbl_v1.1h.20190825.hex

    This thread is so long that it takes lot of time to try to find all important steps. But what I have gathered is that 3 most important things that I am still missing before trying to mill are the

    1. auto leveling
      What I read, this should be easy with gBNC. Mostly connect one wire from the drilling bit to A5 pin in woodpecker and another from woodpecker's ground to pcb.

    2. Current adjustment for all three A4988 motors.
      If I understood correctly @andrew and @NeverDie both changed that from 0.6A to 0.9A? Can that be done only by rotating the potentiometer on a4988 driver boards or do I also need to add some resistors?

    3. End stops modules? Could them be connected somehow to woodpecker?

  • Hero Member

    Looks like the price on more precise equipment has come down:

    Either this or a more classic mill setup is probably the most cost effective for cutting pcbs more accurately. It's the twisting slop that most limits my current CNC's PCB fidelity.

  • Hero Member

    On my previous attempts, I wasn't aware there existed any options for milling PCB's beyond just v-bits. Now it seems that there's quite a range of actual end-mill bits in diameters as narrow as 0.05mm!

    Milling PCB tracks on a Tormach with a "Very" Small End Mill – 00:53
    β€” CNCTurboStep

    They look like this:
    alt text

    From what I've read, when using end mills with less than 100 micron cutting diameters, it's recommended to do step cutting, due to the delicate nature of the bit. That's fine with me: once I set up the machine with a PCB blank, I can walk away and come back when it's done.

    Anyone tried using end mill bits like these for milling PCB's, and if so, how do they compare?

  • @NeverDie I've got this one several months ago, I couldn't say it's a good one though.
    here is the list of drawbacks I've had/have:

    • spindle fixed speed 12000RPM. I added automatic circuit breaker to it so it won't put home on fire when it rams into the table. (threw away DC connector on top as it wasn't reliably holding both sides to begin with and then it was burned a bit after spindle stall). Runout is about 50um. + whatever collet would add (cheapest ones from aliexpress were disappointment in a range 50~100um, so I've got precision one locally)
      The only thing I'm going to invest into this machine is 24K spindle + vfd with small runout. (it just arrived but still unpacked, it will need adapter plate to mount it on Z plate, hopefully I'll make something with adjustable tilt to simplify tramming)
    • it was poor assembled, one has to disassemble and put it back properly tightening screws and making sure belts are not loose (that solved lost steps issue)
    • it uses lead screws with bronze nuts like in 3D printers and a plastic spacer between nuts (to counter backlash).
    • axis plates are attached to nuts via that same plastic spacer (not sure how it would do with milling aluminium)
    • there was (still is) some backlash (~40-60um) left after tightening nuts,
      one could tighten it further but that would come at cost of lower speeds as no-name steppers start stalling (currently I have 2300mm/min max on XY plane, and one would wish for more rapids if one would wish to try milling plastics)
    • squaring it is nightmare, basically the only option you have is adjusting X pillars and try to square XY and YZ at the same time (and there isn't much space to play with it). For tramming spindle on XZ plane, I had to move up one side of X support plate as there isn't sufficient play in spindle mount and then level sacrificial board to make X axis square to the table.
      As result of several iterations, I've got Β±40um difference in hight across the table. XY axises still not square ~0.5mm on opposite sides of of the table on X axis, but I don't have heart to repeat whole procedure again (yet).
    • controller dial is way too sensitive, so I practically don't use it at all. Ribbon cable to SD card fell appart, USB connector for PC doesn't work reliably (but mostly works if you got it in working position).

    The whole setup was bought to prototype PCBs and later on learn how to mill other stuff (plastics/aluminium) for casing prototypes.

    So far I've managed to mill reliably 0.3mm isolation paths with 60*0.2 engraving bit (but as you did, I've redesigned board with wider traces to reduce failure chances). In Flatcam, I had to add runout value to tip diameter to avoid track thinning. Perhaps I could do more fine traces now (after all the tuning) with more fragile 30 or 15 degree bits, but I won't try till I get current project out of the door (at least hardware part of it).
    and here is my 1st attempt to mill the case part

  • Hero Member

    I received one of the 0.2mm end mill bits, so I'll be having a run at it with that sometime soon. To give it the best chance, I plan to bed level with some large diameter endmills first, as I haven't tried that before and maybe it will help. Looking forward to it.

    Wegster has a series of impressive videos on youtube that are an inspiration that this is actually possible to do with fairly ordinary looking equipment (though they charge a small fortune for theirs):
    Double layer PCB prototyping 0.1 mm traces/spaces – 12:45
    β€” WEGSTR CNC

    Maybe there's more to it than meets the eye? Makes me wonder what exactly they're doing in order to accomplish it so perfectly.

    An alternative might be to connect a sharpie type pen and plot that way as a prelude to chemical etching. I haven't wanted to do that, but it's a fallback that might work to get fine pitch etches.

    Hackaday did a very insightful analysis of "the mother mill" which explained why it is surprisingly good at milling PCBs despite it's having a largely plastic frame construction:
    Usually success begets knock-offs, but I can't say that I've noticed any knockoffs of the OtherMill.

    I'd really like to have a machine with an automatic tool changer, where I could just launch it and come back when it's totally done with everything. I'm surprised that capability hasn't yet become more widespread.

  • Hero Member

    Anyone else out there using CNC to make their own PCB's? After taking a break from it for a while, I'm going to take another stab at it, now with the benefit of fresh eyes. Right off the bat I'm making a few changes:

    1. Flattening a space for the PCB on the sacrificial board so that little to no bed leveling will be required:
    2. As seen in the photo just above, using a concrete paver to stabilize the platform. This is a common tactic used in 3D printers.
    3. Mounting the printer on non-skid pucks (also shown in the photo) to guarantee that the CNC doesn't slide around.
    4. Using FR-1 instead of FR-4 as the substrate for the copper clad PCB.
    5. As already mentioned in the post just above, using end-mill bits instead of v-bits to accomplish the etching.
    6. Oh, and yes, I replaced the spindle I was previously using with this upgraded, more powerful spindle.
    7. Using a stronger double-sided tape ("Nitto Tape") to hold the PCB in position while the PCB is being etched by the CNC. Actually, I'm not unsure as to whether it's stronger than the double sided golf grip tape I was using previously, but I'm trying it today, so I'll soon have a basis on which to gauge it.
    8. Laying around somewhere I have some TMC drivers, and when I find them I'll use them to upgrade the rudimentary GRBL controller that came with the original CNC kit. Not sure if it will yield any improvements, but, meh, seems like it's worth trying.
    9. I've switched to a domestic fabricator of blank PCBs that I'll use instead of the Aliexpress ones. I don't know whether it will make a difference, but the quality does seem to be higher, and I can get them with thicker substrates than what I can find on aliexpress.
    10. I switched to a metal spindle mount.

    I've already noticed one anomaly that I hadn't noticed previously, which is that if I use Flatcam to set the depth of cut to 1.5875mm (equals 1/16 of an inch), then if I do it in 4 passes (where the first pass is at 0.5mm depth, the second at 1.0mm depth, the third at 1.5mm depth, and finally the last pass at 1.5875mm, I end up getting a shallower depth of cut than if I were to later do a depth of cut of 1.5875mm in just one pass. Not sure if this is caused by an error in chillipepr, the gerbal controller, or the stepper missing steps.

    Meanwhile, software seems to have improved since the last time I was using it, so I'm looking forward to trying it again as well as new alternatives. Anyone here have any favorites?

  • Hero Member

    I wasn't getting a completely smooth flattened area using just a 1/8" end mill, so I'm going to hazard a try with
    by switching to a 1/4" collet in my ER11 spindle.

  • Hero Member

    SOLVED: up until now I was running the "stable" release of FlatCAM, but it turned out to be so full of shortcomings that I decided to throw caution to the wind and install the latest beta release instead. I'm glad I did. Not only did it fix a range of problems that the stable release had, but it also has a "finishing" setting that's doing a much better job of smoothing out my spoilboard using a mere garden variety 1/8" end mill. πŸ™‚ The main downside is that the "finishing" algorithm can take quite a while to run, so for speed's sake I'll still give the Freund a try. Freund cutting tools are pretty good quality, so I expect it will be an improvement.

  • Hero Member

    @niallain As far as v-bits go, I've lately had good results with this type:

    It's not as fragile as the typical aliexpress style v-bits.

  • Hero Member

    It's now possible to use an inexpensive open source controller to achieve both closed loop control and 0.02 degree resolution on a nema 17 stepper:

    I get the impression the original maker isn't selling it anymore. So, you can make it yourself from the files posted or github, or a number of inexpensive clones are also available on aliexpress for around $15. By use of a magnetic encoder, it basically immediately corrects for any missed steps. In the case of 3D printing, that means no layer shifts, even if, as demonstrated in this youtube video, you were to whack the printhead hard with a rubber mallet during a print:

    S42B closed loop stepper motors - No more layer shifts! – 14:46
    β€” Teaching Tech

    As for CNC, it's a new level of control assuredness.

    Also, because the drivers offer a way to directly monitor how hard the servos are working, they should provide a way to make better informed decisions about increasing speed, acceleration, etc.

    UStepper appears to be another board that was conceived along similar lines.

    I'm planning to upgrade my nema 17's to ones with 3x the torque, and then later upgrade those upgrades with mechaduino/ustepper closed loop controllers. By sticking with nema 17, all these should be drop-in replacements for what's already there. i.e. no need to change couplers or other fittings.

    For even greater torque and precision I could outfit the steppers with planetary gearboxes, but, meh, I'll evaluate that after the upgrades already pending are completed. I presume they come with a downside of much slower speed.

    Anyone here done any of this? How did it go?

  • @NeverDie I recently finally made my first reliable PCBs, combining milling and laser. Both on the same Chinese build 3018. I enhanced my 3018 with a 7W laser diode a year ago. Selection of which one is the active device is done by a manual switch. Maybe some of my experiences are usefull to you or anyone else here.

    For milling I nowadays completely rely on the heightmap of Candle (GRBL1.1 on a WoodPecker board, not the original board of the machine), the Gcodes generated by FlatCAM which are in turn based on the Gerbers by EasyEDA. Apart from the laser enhancement and the PCB, I feel no need to change anything on the machine anymore. I have had some serious thoughts on replacing the Z-axis part, and maybe one day I will do so.

    I mill the isolation tracks in 5(!) passes. Time is no issue here; quality and reliability are. I use 30Β° piramyd bits, they are very well pointed and the machine has very little runout, so I realy need those five passes. I love these bits (eg : they're stable, sturdy, hardly breakable and when needed I can sharpen them myself.

    The laser comes in when getting to the soldermask: it's cutted out in vinyl on a thin (0.1mm) sheet of silicone. Silicone does not melt, nor attach to the freshly cured ink and is reusable a couple of times.
    After exposing the UVink and rinsing the unexposed ink with alcohol, I clean up the edges of the pads again with the laser on a higher power level.

    It was hard to get the milling bit and the laser beam zeroed at exactly the same point. But once I had: what a joy to use the techniques combined!!

  • Hero Member

    @bikerMark said in CNC PCB milling:

    Time is no issue here; quality and reliability are. I use 30Β° piramyd bits, they are very well pointed and the machine has very little runout, so I realy need those five passes. I love these bits (eg : they're stable, sturdy, hardly breakable and when needed I can sharpen them myself.

    Thanks for the tip! I just now ordered some.

    I'm a bit unclear as to how you are using the laser, but it sounds interesting. Although different from what you are doing, I imagine that using a uv laser to selectively cure solder mask would be the ultimate. By not curing the solder mask over the pads, you could just wash the uncured soldermask off later. Would it work? I guess it depends on whether the uv laser can be focused well enough that it only exposes what you want it to.

    How fine a pitch can you etch with your setup? That's the real test, especially given how finely pitched a lot of smd parts are.

  • Hero Member

    @bikerMark At the beginning of this youtube the guy utilizes a laser to do very selective curing of a PCB's etching mask:

    How to make a Giant Mosfet | Best DIY project for 2020 – 17:09
    β€” American Tech

    First time I've seen it actually done. I presume the very same approach might work for solder mask too?

  • Hero Member

    I just now came across a dedicated autoleveling program that allows you to do a two-stage autoleveling. This has at least a couple of advantages over the much more common one-stage autolevelers that's typically encountered: 1. you only need to probe once. If your CNC job gets derailed, you don't have to re-probe, and 2. you have the opportunity to review and correct the probing values in case something went amiss during the probing. AFAIK, this program should be compatible with whatever g-code sender you may wish to use.

    2-stage levelling with AutolevellerAE v0.7.6 – 04:31
    β€” daedelus1982

    For instance, auto-leveling has been broken in the Universal G-Code Sender for over a year now. Perhaps this could fill the autolevelling need not currently being met by UGS.

    [One thing I like about UGS is that it constantly updates its best guess as to the estimated time of job completion. Very handy! Seems like an obvious feature for a g-code sender to have, and yet many/most g-code senders that I've tried seem to lack it.]

  • Hero Member

    For flattening the spoilboard, I ended up trying the 1/2" freund:
    rather than the 1/4" freuend. No worries: it posed no challenge for my spindle motor.

    The problem is that, unlike a fly cutter, this straight bit effectively cuts a kind of donut
    around the central shaft, beause the blades do not extend inward enough. Even though moving the bit far enough will effectively erase the donut, I'm concerned it may create unnecessary resistance to downward plunging if the spindle is holding stationary in the XY plane. Therefore, the next bit I'm going to try is:
    which looks to be more like a fly cutter and, if so, should avoid creating pegs directly underneath the spinning shaft.

    I'm also going to try:
    simply because it is so highly rated for flattening a spoilboard, even though it is likely to produce some amount of pegging directly beneath a shaft that is not moving in the XY plane.

  • Hero Member

    I ordered 3 of these closed loop mechaduino clone controllers that utilize 12-bit encoders:

    The uStepper hardware specs are better, at least on paper: 16-bit encoders and higher voltages, but at 4x the price, plus even more cash if you want an equivalent OLED add-on with buttons. For sure Ustepper's trinamic hardware is very tempting, but I'm not sure how solid the uStepper firmware currently is, whereas the mechaduino firmware has been tested for a few years now. I also get the impression, perhaps incorrectly, that the ustepper documentation is comparatively sparse right now. So, for all those reasons, I chose mechaduino over Ustepper. Maybe later, somewhere down the road, I'll give Ustepper a try.

    ETA for the mechaduino's is about a month from now. I'll report back after I've received them and given them a try.

    Meanwhile, on an unrelated topic, I was finally able to test one of the tiny diameter endmills:
    and Wow! It works great. My first impression is that this is the solution I've been looking for: just set the cutting depth to be "more than enough" and you can isolation cut all the traces in one pass while keeping the desired trace width. Much faster and easier to use than v-bits, IMHO.

  • @NeverDie I do not yet have a CNC mill.

    If ever I wanted to make a PCB I used photosensitive PCB. Etching goes very well. And I also discovered that waiting a few weeks for well made pcb's is usually worth it.
    But I pretty much read this whole topic. I am still interested by your experiences. So thank you for sharing.

  • Hey @NeverDie, everyone,

    It is good to see how this thread developed over the time and you guys are enjoying the PCB milling.
    Unfortunately I had many other responsibilities and was super busy, so a lot from my projects had to be postponed. Nevertheless I'm still working with my CNC.

    A few days ago I replaced the spindle to a laser module to make same plywood engraving, and the original spindle motor holder (the 3D printed stuff) broke during the unscrew...


    I managed to fix the laser module with cable tie. πŸ™‚
    It is ok for the laser, but of course not for the spindle and for the PCB milling.
    Replacement parts are available mostly in packages (e.g., but it is possible to print your own version too.
    Some guys already came up with an enhanced design, such as

    I already wanted to make an upgrade on the CNC, so I came to a conclusion, that I will fix the broken part with a custom 3D printed one, then sell the machine.

    I already ordered my new toy, a CNC3020T (EUR 325 + shipping EUR 25):


    Well, I hesitated a lot and almost bought a CNC3040Z-DQ (bigger, better, ball screw), but as currently I really don't have enough space for it (and to be honest, no reason to buy a better/bigger) I sticked with the 3020T. The quality I achieved with my 2418 will be definitely reproducible and this is enough.

    I just read the endmill isolation routing posts. Interesting stuff.
    I'm curious whether you can use smaller ones to deal with the 6mil/6mil trace/isolation sizes.

    Happy milling and cheers!

  • Hero Member

    Hi Andrew!

    Great to hear from you and your updates. πŸ™‚

    @andrew said in CNC PCB milling:

    I'm curious whether you can use smaller ones to deal with the 6mil/6mil trace/isolation sizes.

    Yes, I'm wondering the same thing. There's reason to be hopeful that it can be done: I've seen a number of 0.1mm end mills for sale, and that's roughly the the bit diameter that would be needed. After I upgrade my stepper motors to higher torque models, and after I upgrade them even further to be closed loop, I'd like to give it a try. Fine pitched etchings like that would probably also greatly benefit if solder mask could be applied afterward, and so I'm hoping to learn how do that as well:

    Join the fun! With your new machine already on the way, you may be ready to give it a try before me. 😎

    When you get a chance, please do let us know how you like your new CNC. It looks a lot sturdier than the CNC that you will soon be selling.

  • @NeverDie sure, you will hear more about my new gear πŸ™‚
    Considering the shipping time and my availability, this should happen around late August or early September!

  • Hero Member

    One more thing worth mentioning: This guy has, I think, a correct insight into why auto-leveling may not work as well in the real world as it theoretically should:

    Blank PCB material is not as rigid as it appears, depending on its size and how it was stored (not to mention how you mount it) there will be some bowing which results in a curved surface under your engraver.

    Unfortunately, the probing process doesn't put enough pressure on the board to push it down while the actual engraving process will. This means you will get shallow cuts even with an autolevelling process.

    The trick is to ensure that the probe pushes the board down to it's fully flat level before measuring the height at that point. My solution was to put a small ball on the spindle that is 2mm lower than the probe tip - as the probe moves downwards the ball pushes the PCB to the underlying bed and compresses before the probe makes contact. This gives you a far more accurate depth reading.

    His solution looks like this:
    alt text
    which looks as though it could be improved upon.

  • Hero Member

    Recent strategy was to do multiple overlapping passes with a narrow diameter bit to get lots of isolation. It nominallly worked, but it consumed a lot of machine time. So, now testing a new strategy, which is to first do one bulk isolation with a wide bit and then do one final pass with a narrow bit to clean out whatever copper remains near the traces. Though it does require a tool change, in theory it should be faster.

  • I have found a YouTube channel that has a few video's about using the 3018 CNC for PCB milling.

    They winked a bit at the Wegstr promotional video.

    But they seem to get good quality. They also have better video's explaining the steps.

    CNC PCB - high quality with the budget 3018 CNC – 05:20

  • Hero Member

    Can anyone here explain the appeal of Mach3 in the year 2020? The premise seems to be: don't use stepper driver hardware (e.g. Trinamics) and don't use a motion controller, but instead do all the stepper motor control directly from a PC by bit-banging pins on a parallel port in real-time!? How is that a good idea, and why is it advantageous? I understand how maybe back in the day that was perhaps the most affordable way to do it, but these days? I just don't get it.

  • @NeverDie Just get any Atmega328 board (Uno, Nano) and flash grbl 1.1f and wire it to whatever drivers you have (now I'm using hybrid closed loop servos, but I've used TB6560 in the past).
    I use OpenCNCPilot, it has autolevel, and a lot of other useful functions: simplify, arc to lines, split long lines, etc. I mainly use it for splitting long lines, as a long move doesn't account for the board topography (local highs and lows), by splitting the line accordingly to the detail needed (5mm for dip, 2-3mm for smaller smd boards) I get a much better engraving. Also the autoloevel grid size and step setting is very simple.

  • Hero Member

    Hi executivul! Great to hear from you again.

    @executivul said in CNC PCB milling:

    @NeverDie Just get any Atmega328 board (Uno, Nano) and flash grbl 1.1f and wire it to whatever drivers you have (now I'm using hybrid closed loop servos, but I've used TB6560 in the past).

    On Aliexpress I notice there are these drivers (one per axis) that it sounds as though you are using. Some of them (usually blue) are self-described as "Hybrid", whereas others (often Green or some other color) are self-described as "closed loop." I haven't tried either one, but I get the impression that the "Hybrid" drivers function closed loop as well, and it sounds as though that is what you are doing. If that is the case, what, if any, functional difference is there between the self-described "hybrid" drivers and the self-described "closed-loop" drivers? I assume you know what I'm referring to, but if not, let me know and I'll post pictures and links in order to clarify.

  • Hero Member

    By the way, good news! Just yesterday I think I've identified the very same spring-loaded bit used very successfully by both Bantam Tools and Wegstr for removing DIY solder mask over solder pads. 😁 Details here:

    For anyone not familiar with this process, here is a demo video:
    How To Make a PCB Solder Mask with the Bantam Tools PCB Milling Machine – 02:53
    β€” Bantam Tools

    I'll be giving it a try once my rig is upgraded and re-tuned, because obviously the z-axis height needs to be controlled very precisely for it to work without etching off the same copper pads that I'll be trying to re-expose from under the solder mask. I suppose using 2oz copper clad might also be worth it for the wee bit of added headroom. If push comes shove, I've read that even thicker copper clad PCB is available, though off-hand I have no idea where would be a good place to buy it. From what I've read the thicker cladding is most often found in PCB's made for military applications.

    Edit: Gave a quick cursory look, and both 3oz and 4oz copper clad PCB is not hard to find. Not saying it will be needed, but nice to know in case it is.

  • Hero Member

    Time to upgrade the motion controller. The woodpecker is hopeless because it takes 12v-36v input voltage and downconverts it to 12v:
    alt text
    This means you can't actually drive your stepper stick at more than 12v, even though the A4988 can use up to 36v and the DRV8825 up to 45v. The TMC5160 allows up to 60v. I'm guessing the grbl board designers did this to avoid any possibility of going over the allowed voltage, which would mean fewer warrantee returns. All well and good for them, but if I'm not mistaken, it deprives the user of snappier accelerations.

    So, I ordered just a primitive arduino shield, and hopefully it is lacking this "feature":
    alt text
    The board markings do indicate the same 12-36v range, though, but I'm guessing that's there purely either as a cautionary warning for A4988 users or because that's the highest voltage that the capacitors are rated for. Given the cramped board, perhaps trace widths are a factor as well.

    The mechaduino driver can handle voltages up to 40v, but the mechaduino board itself was designed with 36v capacitors. The MKS-servo42a has a 30v maximum according to the design they borrowed from.

    All this does make me interested in trying a TMC5160 at 60v just to see how much snappier it might be.

    Unfortunately, the uStepper (, despite using the TMC5160, doesn't take advantage of the 60v possibility. It recommends 24v input voltage, with a 30v maximum.

    Good grief! Why, oh why, did they do that? Was it just to save a few pennies on component cost? Will I have to design my own board if I want high performance?

    I was originally hoping for this to be a drop-in upgrade. Maybe it still is, but I'm starting to have doubts about just how much of a performance upgrade I can expect from it.

  • Hero Member

    Reporting back: I received the el cheapo GRBL boards (above). The good news is that they don't have a buck converter getting in the way, the way the woodpecker does. The bad news is that the caps are rated at only 40v. So, I may replae them with ones rated for higher voltage. Also, there's a mysterious glass fuse soldered in the midst of it all. Not sure at what current it's rated to blow but, meh, probably high enough if the designer did his homework.

    So, overall, I expect this will be an improvement over woodpecker for running GRBL at higher voltage. πŸ™‚

  • Mod

    @NeverDie judging from the images, this looks like a diode instead of a fuse.
    Anyway, keep up the good reading, I'm loving your posts πŸ‘

  • Hero Member

    @Yveaux said in CNC PCB milling:

    @NeverDie judging from the images, this looks like a diode instead of a fuse.

    Not a bad guess based on the image you were working from, but if so it's a diode with the word "FUSE" written under it:
    alt text

    Anyway, keep up the good reading, I'm loving your posts πŸ‘

    Thanks for the encouragement! πŸ™‚

  • Hero Member

    The nice thing about this particular board is that there's an easy way to levitate a fan over it to cool down the stepsticks:
    alt text

  • Mod

    @NeverDie said in CNC PCB milling:

    a diode with the word "FUSE" written under it

    Got me there, but it seems to be a fuse with orientation πŸ€”
    We'll never know unless you put a multimeter on it πŸ˜‰

  • Hero Member

    @Yveaux said in CNC PCB milling:

    @NeverDie said in CNC PCB milling:

    a diode with the word "FUSE" written under it

    Got me there, but it seems to be a fuse with orientation πŸ€”
    We'll never know unless you put a multimeter on it πŸ˜‰

    OK, I just now probed it, and it conducts with the same 0.12 ohm resistance in both directions. So, it's not a diode. Here's a closeup photo that I took for you:
    I'm going to deem it a fuse unless you have a different theory or can recognize it as something else.

    Anyhow, changing topics, the good news is that the electrolytic capacitors have a higher voltage rating than what I had reported earlier. They are 100uF capacitors, and upon closer inspection it says that they are rated at 50v, not 40v as I had earlier thought. That's good news, because it means they should be able to handle the 45v maximum that DRV8825 stepper drivers can tolerate. πŸ™‚

  • @NeverDie Did you check out the assembly instructions? There they use a fuse with a rather high current in this place 🀣 🀣 🀣
    The explanation why it is polarized is because in fact, it used to be a diode in older revisions, check out Step 7 here.

  • Mod

    @eiten said in CNC PCB milling:


    Now it's a polarized yellow wire πŸ™€

  • @Yveaux said in CNC PCB milling:

    polarized yellow wire

    Oh boy, good luck @NeverDie. These are hard to get. Never saw them on Ali.

  • Hero Member

    @eiten said in CNC PCB milling:

    The explanation why it is polarized is because in fact, it used to be a diode in older revisions, check out Step 7 here.

    Yeah, let's look at that:

    D1(Diode) was intended to prevent users from damaging the board by accidentally reversing the polarity on the high voltage line. Unfortunately this feature was abandoned because I could not find a big enough Diode that would handle 6 amps at a time and still fit on the board. The work around for this is to solder in a jumper wire (Yellow Wire).

    LOL. This excuse just doesn't ring true. I mean, by version 3 he still couldn't manage to find space on the board for a suitable diode? Nevermind that he could have used an alternative for reverse polarity protection, like a mosfet, which also wouldn't have incurred as large a voltage drop.

    Well, speaking of diodes, I don't see any TVS or zener diodes on this board for protection against back EMF. I guess that's just assumed to be handled by the driver modules?

  • @NeverDie and for reverse polarity protection, you could just use a FET, a resistor and a Zener (only necessary if reversed voltage is breaking the FET, which is cheaper if you have some amps and has loooots of less power dissipation:
    I use this on all my PCBs with removable batterys. Luxury upgrade: a reverse voltage indicator:
    Add a Zener parallel to the LED if you have a wide expectet input voltage range.

Log in to reply

Suggested Topics

  • 4
  • 2
  • 20
  • 9
  • 5
  • 2