CNC PCB milling
-
@Joerideman said in CNC PCB milling:
@NeverDie I saw an YouTube video screenprinting. That guy noticed that semi transparent sheets work better than transparent sheets. Ink holds better or something.
I can actually try this one out. Because afteral. We want that 0.4mm pitch right?
I just need to find something to put the paint on.
Which thing are you planning to try? Sharpie-Oil on a semi-transparent sheet, or the uv resistant inkjet ink, or...?
For enhanced laser printing I found this: https://ikonartstencil.com/toner-enhancement-spray/
though I have no idea how well, or even if, it works.@NeverDie inkjet printing on semi transparent sheets.
-
I've played around with the Ustepper-S now, and as near as I can tell, it is working correctly in closed-loop mode without issue. After the execution of each command, it shows error of 0.00, and it maintains closed loop operation to maintain its position even after the execution of the command, as it should. In my testing, Servo42A fails to do that, as well as having other problems, including lack of response to posted github issues.
Ustepper-S incorporates PID, so it should be able to do rapids and yet stop exactly where it should. Again, my initial impression is that seems to be the case.
I'm ordering UStepper-S for the x and y axis as well, which unfortunately will again take weeks to receive. However, I expect this will be the last stepper driver upgrade that I will ever need to do. If I later decide to upgrade to NEMA-23, the same UStepper-S can be used to drive it and only a different bracket would be needed to position it on the back of the NEMA-23.
-
I found a good "once and done" lubricant for my CNC called Krytox. It's made by Dupont, is non-toxic, never dries out, and is non-reactive with just about everything. It is more or less liquid teflon (PTFE). It comes in a wide spectrum of different viscosities. I'm using GPL105, but I think for a CNC one could argue for using a version that's a least slightly more viscous (i.e. GPL106 or higher).
There also exists grease versions of Krytox, so perhaps (?) that would be even better. In general, for any given lubricant, how does one decide what the right viscosity is to use?
-
@andrew Have you got your new 3020T yet? I intend to buy 3020 but there are a few variants in Aliexpress. Which site did you buy from? Can you share the link? Thank you for starting this thread.
@mlei30 This was my choice:
https://www.ebay.com/itm/CNC-Router-3020T-3-AXIS-USB-Graviermaschine-GraviergeräT-FräSmaschine/313030564524
It already arrived and I started to play with it.
I decided not use its Chinese controller software or Mach3 with parallel port connection, so it needs some upgrade before I can make the first tests with it.
There are tons of upgrade options to make it work with open source stuff. I almost ordered a TinyGv2 controller, but it turned out, that that CNC can be GRBL controlled over the parallel port. In such case,
original stepper and spindle drivers can be used as well.The problem is, that the research I found behind this was misleading and it contains inaccurate / improper details (or at least not exactly applicable to my HW version), so I had to re-execute the reverse engineering.
I'm about to finish it. At the moment I can control everything on the CNC from GRBL. Now I need to calibrate it and make the solution "solid/proper". I have hard time finding free time for this, but I hope that first test runs will be done soon.
I'll be back with the results soon (and I'm also planning to write a blogpost on the details later).
-
@mlei30 This was my choice:
https://www.ebay.com/itm/CNC-Router-3020T-3-AXIS-USB-Graviermaschine-GraviergeräT-FräSmaschine/313030564524
It already arrived and I started to play with it.
I decided not use its Chinese controller software or Mach3 with parallel port connection, so it needs some upgrade before I can make the first tests with it.
There are tons of upgrade options to make it work with open source stuff. I almost ordered a TinyGv2 controller, but it turned out, that that CNC can be GRBL controlled over the parallel port. In such case,
original stepper and spindle drivers can be used as well.The problem is, that the research I found behind this was misleading and it contains inaccurate / improper details (or at least not exactly applicable to my HW version), so I had to re-execute the reverse engineering.
I'm about to finish it. At the moment I can control everything on the CNC from GRBL. Now I need to calibrate it and make the solution "solid/proper". I have hard time finding free time for this, but I hope that first test runs will be done soon.
I'll be back with the results soon (and I'm also planning to write a blogpost on the details later).
-
@mlei30 This was my choice:
https://www.ebay.com/itm/CNC-Router-3020T-3-AXIS-USB-Graviermaschine-GraviergeräT-FräSmaschine/313030564524
It already arrived and I started to play with it.
I decided not use its Chinese controller software or Mach3 with parallel port connection, so it needs some upgrade before I can make the first tests with it.
There are tons of upgrade options to make it work with open source stuff. I almost ordered a TinyGv2 controller, but it turned out, that that CNC can be GRBL controlled over the parallel port. In such case,
original stepper and spindle drivers can be used as well.The problem is, that the research I found behind this was misleading and it contains inaccurate / improper details (or at least not exactly applicable to my HW version), so I had to re-execute the reverse engineering.
I'm about to finish it. At the moment I can control everything on the CNC from GRBL. Now I need to calibrate it and make the solution "solid/proper". I have hard time finding free time for this, but I hope that first test runs will be done soon.
I'll be back with the results soon (and I'm also planning to write a blogpost on the details later).
- Does it use ball screws or trapezoidal ones?
- how stiff it is in X an Y directions?
(on my machine slight push on spindle, yields ~0.2mm of flex, and heavier one around 0.5mm, which is roughly precision I get when cutting plastic. For PCB routing error seems to stay within 0.2mm boundary) - how big is backlash
- screw (movement) linearity in X,Y planes
-
@andrew Looks as though your new nema steppers either have encoders or else those are knobs for manually jogging. Aside from that, it looks generally stiffer due to all metal with no plastic.
-
- Does it use ball screws or trapezoidal ones?
- how stiff it is in X an Y directions?
(on my machine slight push on spindle, yields ~0.2mm of flex, and heavier one around 0.5mm, which is roughly precision I get when cutting plastic. For PCB routing error seems to stay within 0.2mm boundary) - how big is backlash
- screw (movement) linearity in X,Y planes
@niallain it is 3020T which uses trapezoidal screws. "Z" uses ball screws.
you can check the "official" technical details on the item's specification (scroll down to the description then click on the "specification"):...
Driving units X axis: 1204 trapezoidal screws
Driving units Y axis: 1204 trapezoidal screws
Driving units Z axis: 1204 trapezoidal screws
...
Repeat accuracy: 0.05mm
...
Spindle precision: radial beat acuities 0.03 mm
...Note that none of these parameters above are confirmed. To be honest I don't have the right measurement tools for that, but the fine trace PCB samples will prove it, or not :)
-
@niallain it is 3020T which uses trapezoidal screws. "Z" uses ball screws.
you can check the "official" technical details on the item's specification (scroll down to the description then click on the "specification"):...
Driving units X axis: 1204 trapezoidal screws
Driving units Y axis: 1204 trapezoidal screws
Driving units Z axis: 1204 trapezoidal screws
...
Repeat accuracy: 0.05mm
...
Spindle precision: radial beat acuities 0.03 mm
...Note that none of these parameters above are confirmed. To be honest I don't have the right measurement tools for that, but the fine trace PCB samples will prove it, or not :)
@andrew said in CNC PCB milling:
@niallain it is 3020T which uses trapezoidal screws. "Z" uses ball screws.
you can check the "official" technical details on the item's specification (scroll down to the description then click on the "specification"):declared specs for mine were in the same ballpark as your's 3020T, modulo 8mm trapezoidal screw. But in reality that wasn't true at all, in my case cuplrit of the biggest error is the flex from the way screw nuts are attached to carriage, and the second/third are nonlinear screws (+-0.060mm) and backlash.
I'm ordered a 1204 ball screw kit for Y axis, to test how much it would reduce error.
PS:
As for testing, I just used regular digital calliper with 0.01mm resolution. -
@andrew said in CNC PCB milling:
@niallain it is 3020T which uses trapezoidal screws. "Z" uses ball screws.
you can check the "official" technical details on the item's specification (scroll down to the description then click on the "specification"):declared specs for mine were in the same ballpark as your's 3020T, modulo 8mm trapezoidal screw. But in reality that wasn't true at all, in my case cuplrit of the biggest error is the flex from the way screw nuts are attached to carriage, and the second/third are nonlinear screws (+-0.060mm) and backlash.
I'm ordered a 1204 ball screw kit for Y axis, to test how much it would reduce error.
PS:
As for testing, I just used regular digital calliper with 0.01mm resolution.@niallain said in CNC PCB milling:
in my case cuplrit of the biggest error is the flex from the way screw nuts are attached to carriage, and the second/third are nonlinear screws (+-0.060mm) and backlash.
I'm curious to know how is it that you're measuring those things? I'd like to quantify as many sources of error as possible, but I'm not sure how to go about it.
-
@niallain said in CNC PCB milling:
in my case cuplrit of the biggest error is the flex from the way screw nuts are attached to carriage, and the second/third are nonlinear screws (+-0.060mm) and backlash.
I'm curious to know how is it that you're measuring those things? I'd like to quantify as many sources of error as possible, but I'm not sure how to go about it.
@NeverDie How about a dial gauge in a magnetic mount attached to the spindle and measuring against x/y/z frame points, and a simple gcode like g0x100 g0x0 a hundred times? At least that's how I did it to check for lost steps.
-
@niallain said in CNC PCB milling:
in my case cuplrit of the biggest error is the flex from the way screw nuts are attached to carriage, and the second/third are nonlinear screws (+-0.060mm) and backlash.
I'm curious to know how is it that you're measuring those things? I'd like to quantify as many sources of error as possible, but I'm not sure how to go about it.
@NeverDie
I shoot a short clip to demo following measurements- backlash :
- flex: for example I used dial gauge, since my Y screw and table are currently dismantled, so I can't show how it's done with calliper on the table
- non-linearity is measured only on 1mm, with calliper or glass scale it would be possible to measure whole screw. (linuxcnc can use glass scale to map screw and then compensate, but I still don't have all components for it yet)
-
@NeverDie
I shoot a short clip to demo following measurements- backlash :
- flex: for example I used dial gauge, since my Y screw and table are currently dismantled, so I can't show how it's done with calliper on the table
- non-linearity is measured only on 1mm, with calliper or glass scale it would be possible to measure whole screw. (linuxcnc can use glass scale to map screw and then compensate, but I still don't have all components for it yet)
@niallain said in CNC PCB milling:
- non-linearity is measured only on 1mm, with calliper or glass scale it would be possible to measure whole screw. (linuxcnc can use glass scale to map screw and then compensate, but I still don't have all components for it yet)
That's quite an interesting result! I would not have imagined it would be so bad. What exactly is happening that causes this? Is the screw being wound up almost like a spring and some kind of stiction is causing the carriage to jump about like that? Is the anti-backlash nut causing it? Or is the stepper in fact not advancing as much as it should be due to no closed-loop feedback? What's the cause? How repeatable is it? i.e. does it jump about to the same amount in the same places each time it's cycled through the test, or does it vary each time the test is repeated?
It's a great advertisement for DRO's.
-
Reporting back: Regarding Sharpie-Oil pens, I found that it doesn't chip-off and disintegrate, even after letting it dry for a few days, if I write it onto inkjet transparency material instead of polypropylene:

Because it's so opaque, especially when compared to other black pens, it's the best pen I've found. The linewidth of the "Sharpie-Oil Extra Fine" pen is about 1mm, though, so that precludes using it in a plotter if ultra fine detail is required.
-
Reporting back: Regarding Sharpie-Oil pens, I found that it doesn't chip-off and disintegrate, even after letting it dry for a few days, if I write it onto inkjet transparency material instead of polypropylene:

Because it's so opaque, especially when compared to other black pens, it's the best pen I've found. The linewidth of the "Sharpie-Oil Extra Fine" pen is about 1mm, though, so that precludes using it in a plotter if ultra fine detail is required.
@NeverDie however.... The material sticks a bit to the paint.
-
@NeverDie however.... The material sticks a bit to the paint.
@Joerideman said in CNC PCB milling:
@NeverDie however.... The material sticks a bit to the paint.
??? Which thing are you referring to?Right, so I still use the polyproylene against the solder mask, but I can layer this inkjet tranparency on top of that. It's an extra layer, but it's kept separate from the solder mask by the polypropylene layer underneath it. Is that what you mean?
-
@Joerideman said in CNC PCB milling:
@NeverDie however.... The material sticks a bit to the paint.
??? Which thing are you referring to?Right, so I still use the polyproylene against the solder mask, but I can layer this inkjet tranparency on top of that. It's an extra layer, but it's kept separate from the solder mask by the polypropylene layer underneath it. Is that what you mean?
@NeverDie yes.
-
I found a good "once and done" lubricant for my CNC called Krytox. It's made by Dupont, is non-toxic, never dries out, and is non-reactive with just about everything. It is more or less liquid teflon (PTFE). It comes in a wide spectrum of different viscosities. I'm using GPL105, but I think for a CNC one could argue for using a version that's a least slightly more viscous (i.e. GPL106 or higher).
There also exists grease versions of Krytox, so perhaps (?) that would be even better. In general, for any given lubricant, how does one decide what the right viscosity is to use?
@NeverDie said in CNC PCB milling:
I found a good "once and done" lubricant for my CNC called Krytox. It's made by Dupont, is non-toxic, never dries out, and is non-reactive with just about everything. It is more or less liquid teflon (PTFE). It comes in a wide spectrum of different viscosities. I'm using GPL105, but I think for a CNC one could argue for using a version that's a least slightly more viscous (i.e. GPL106 or higher).
There also exists grease versions of Krytox, so perhaps (?) that would be even better. In general, for any given lubricant, how does one decide what the right viscosity is to use?
I guess maybe a dry lubricant would be a better choice, so that it doesn't attract dust or debris. To that end, I'm thinking maybe one of these:
https://smile.amazon.com/gp/product/B000GE1F9K/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1https://smile.amazon.com/gp/product/B00AF0ODGM/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1
Anyone have a preference, opinion, or other suggestions?
-
quick update, just managed to make some test milling.
pro tip: always check your tip before milling :) I had to trash the one I used for the first two, as its end was chippedtraces are 6 mil, the footprint is tqfp100 p0.5, built in from kicad.
some of the the standalone traces are 6 mil with 6 mil clearance, their open end came up, but otherwise it looks ok.other 6 mil traces that are connected to pads are actually ok.
6mil traces where the clearance is 4 mil only were not millet at all, due to the isolation routing path made by flatcam.
overall, I'm happy with it.
I've also ordered a dial indicator measurement tool, I'll report the backlash and other measured precision details when it arrives.
some pics:
the control box is open and it has an additional external grbl controller now, I'm working on a proper electronics.




-
quick update, just managed to make some test milling.
pro tip: always check your tip before milling :) I had to trash the one I used for the first two, as its end was chippedtraces are 6 mil, the footprint is tqfp100 p0.5, built in from kicad.
some of the the standalone traces are 6 mil with 6 mil clearance, their open end came up, but otherwise it looks ok.other 6 mil traces that are connected to pads are actually ok.
6mil traces where the clearance is 4 mil only were not millet at all, due to the isolation routing path made by flatcam.
overall, I'm happy with it.
I've also ordered a dial indicator measurement tool, I'll report the backlash and other measured precision details when it arrives.
some pics:
the control box is open and it has an additional external grbl controller now, I'm working on a proper electronics.




@andrew oh, for those who are interested, flatcam settings were the followings:
- tool dia: 0.1176326981
- passes: 2
- overlap: 0.15
- cut z: -0.05
- feed rate: 500
- spindle: 300 (0-1000 range, but in fact as the pwm signal is inverted now, it is equivalent with 700)
the engraving tip was 2001 (20degree, 0.1mm end)