Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. General Discussion
  3. CNC PCB milling

CNC PCB milling

Scheduled Pinned Locked Moved General Discussion
933 Posts 28 Posters 140.2k Views 27 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • NeverDieN Offline
    NeverDieN Offline
    NeverDie
    Hero Member
    wrote on last edited by
    #380

    Even after all this tweaking, the z-axis was off by 0.048mm after the latest set of probing.

    E andrewA 2 Replies Last reply
    0
    • NeverDieN NeverDie

      Even after all this tweaking, the z-axis was off by 0.048mm after the latest set of probing.

      E Offline
      E Offline
      executivul
      wrote on last edited by
      #381

      @neverdie said in CNC PCB milling:

      Even after all this tweaking, the z-axis was off by 0.048mm after the latest set of probing.

      What do you mean by "off"? Afaik grbl doesn't have a M48 equivalent command for probe/machine repeatability... So it can't probe the same place automatically. You have to write your own code for that, based on G32.2 command, take a few measurements and see the difference.
      If you mean across the whole board, depending on the size of the measured area that's not bad at all.

      1 Reply Last reply
      0
      • NeverDieN NeverDie

        Even after all this tweaking, the z-axis was off by 0.048mm after the latest set of probing.

        andrewA Offline
        andrewA Offline
        andrew
        wrote on last edited by
        #382

        @neverdie could you please explain how did you find/measure this? also please let me know the details of the executed job, including the G code generation properties/settings (e.g. feed rate, depth, multiple passes etc.) used in flatcam.

        NeverDieN 1 Reply Last reply
        0
        • andrewA andrew

          @neverdie could you please explain how did you find/measure this? also please let me know the details of the executed job, including the G code generation properties/settings (e.g. feed rate, depth, multiple passes etc.) used in flatcam.

          NeverDieN Offline
          NeverDieN Offline
          NeverDie
          Hero Member
          wrote on last edited by NeverDie
          #383

          @andrew said in CNC PCB milling:

          could you please explain how did you find/measure this?

          1. Decided upon an origen. Used Chilipeppr to "run test probe" to find the zero z-height. Zeroed x,y,z at that location.
          2. Did an autolevel, at 1mm spacing, over a 20x10mm area.
          3. Following this, returned to x=0, y=0. Ran another test probe. Ideally it would have come back as z=0. Instead, it came back as z=-0.048.

          So, if at that point I were to actually run g-code with a cutting depth of z=-0.05, it would barely scratch the surface. Somehow during the 1mm autolevel probing, z became uncalibrated. If I were to re-zero z based on the second test probe, it would cut, but the cutting depth wouldn't be uniform.

          Anyhow, my new rule is that if I come across a situation like the above, I throw out the auto-leveling and start over rather than executing the g-code. Often, the next autoleveling will have less discrepancy by step 3.

          rmtuckerR andrewA 2 Replies Last reply
          0
          • NeverDieN NeverDie

            @andrew said in CNC PCB milling:

            could you please explain how did you find/measure this?

            1. Decided upon an origen. Used Chilipeppr to "run test probe" to find the zero z-height. Zeroed x,y,z at that location.
            2. Did an autolevel, at 1mm spacing, over a 20x10mm area.
            3. Following this, returned to x=0, y=0. Ran another test probe. Ideally it would have come back as z=0. Instead, it came back as z=-0.048.

            So, if at that point I were to actually run g-code with a cutting depth of z=-0.05, it would barely scratch the surface. Somehow during the 1mm autolevel probing, z became uncalibrated. If I were to re-zero z based on the second test probe, it would cut, but the cutting depth wouldn't be uniform.

            Anyhow, my new rule is that if I come across a situation like the above, I throw out the auto-leveling and start over rather than executing the g-code. Often, the next autoleveling will have less discrepancy by step 3.

            rmtuckerR Offline
            rmtuckerR Offline
            rmtucker
            wrote on last edited by
            #384

            @neverdie
            Maybe run step 1
            Then run some g-code but above the job.(for a few mins).
            Then run step 3.
            This could be an autolevel problem.

            NeverDieN 1 Reply Last reply
            0
            • rmtuckerR rmtucker

              @neverdie
              Maybe run step 1
              Then run some g-code but above the job.(for a few mins).
              Then run step 3.
              This could be an autolevel problem.

              NeverDieN Offline
              NeverDieN Offline
              NeverDie
              Hero Member
              wrote on last edited by
              #385

              @rmtucker said in CNC PCB milling:

              Maybe run step 1
              Then run some g-code but above the job.(for a few mins).
              Then run step 3.

              How might that help?

              rmtuckerR 1 Reply Last reply
              0
              • NeverDieN NeverDie

                @rmtucker said in CNC PCB milling:

                Maybe run step 1
                Then run some g-code but above the job.(for a few mins).
                Then run step 3.

                How might that help?

                rmtuckerR Offline
                rmtuckerR Offline
                rmtucker
                wrote on last edited by
                #386

                @neverdie
                What if you have broken .048 off the end of the tool during autolevel?
                So run some g-code above the job then re-probe so you know you have not twatted the tool.:relaxed:

                NeverDieN 1 Reply Last reply
                0
                • rmtuckerR rmtucker

                  @neverdie
                  What if you have broken .048 off the end of the tool during autolevel?
                  So run some g-code above the job then re-probe so you know you have not twatted the tool.:relaxed:

                  NeverDieN Offline
                  NeverDieN Offline
                  NeverDie
                  Hero Member
                  wrote on last edited by NeverDie
                  #387

                  @rmtucker said in CNC PCB milling:

                  What if you have broken .048 off the end of the tool during autolevel?

                  Good point. I'll have a closer look for that the next time it happens.

                  Also, I'll try repeating the test using a dull bit (which presumably won't break) and see whether it still happens or not.

                  Thanks!

                  1 Reply Last reply
                  0
                  • E Offline
                    E Offline
                    executivul
                    wrote on last edited by executivul
                    #388

                    @NeverDie grbl 1.1 probing command is G38.2 Z-10 F25 where Z tells it how low should go before erroring if it doesn't touch and F is the speed.
                    You should try manually issuig G38, then G92 Z0 to set new Z0 position and then finally G0 Z10 F100 to lift the probe, rinse and repeat without the G92, how repeatable is the reading, does it stay at 10.00?
                    Then do the air job, or some simple moving (G0 X5 Y5 Z5, G0 X0 Y0 Z10 a few times )and retest manually with G38

                    LE. The probing command is G38.2, I've edited the post to correct it.

                    1 Reply Last reply
                    0
                    • NeverDieN NeverDie

                      @andrew said in CNC PCB milling:

                      could you please explain how did you find/measure this?

                      1. Decided upon an origen. Used Chilipeppr to "run test probe" to find the zero z-height. Zeroed x,y,z at that location.
                      2. Did an autolevel, at 1mm spacing, over a 20x10mm area.
                      3. Following this, returned to x=0, y=0. Ran another test probe. Ideally it would have come back as z=0. Instead, it came back as z=-0.048.

                      So, if at that point I were to actually run g-code with a cutting depth of z=-0.05, it would barely scratch the surface. Somehow during the 1mm autolevel probing, z became uncalibrated. If I were to re-zero z based on the second test probe, it would cut, but the cutting depth wouldn't be uniform.

                      Anyhow, my new rule is that if I come across a situation like the above, I throw out the auto-leveling and start over rather than executing the g-code. Often, the next autoleveling will have less discrepancy by step 3.

                      andrewA Offline
                      andrewA Offline
                      andrew
                      wrote on last edited by
                      #389

                      @neverdie said in CNC PCB milling:

                      @andrew said in CNC PCB milling:

                      could you please explain how did you find/measure this?

                      1. Decided upon an origen. Used Chilipeppr to "run test probe" to find the zero z-height. Zeroed x,y,z at that location.
                      2. Did an autolevel, at 1mm spacing, over a 20x10mm area.
                      3. Following this, returned to x=0, y=0. Ran another test probe. Ideally it would have come back as z=0. Instead, it came back as z=-0.048.

                      So, if at that point I were to actually run g-code with a cutting depth of z=-0.05, it would barely scratch the surface. Somehow during the 1mm autolevel probing, z became uncalibrated. If I were to re-zero z based on the second test probe, it would cut, but the cutting depth wouldn't be uniform.

                      Anyhow, my new rule is that if I come across a situation like the above, I throw out the auto-leveling and start over rather than executing the g-code. Often, the next autoleveling will have less discrepancy by step 3.

                      if your probe speed is too fast, then it could push the pcb at the given points and also it could damage your tip's end, as it was mentioned by @rmtucker, which could cause this issue as well.

                      1 Reply Last reply
                      0
                      • NeverDieN NeverDie

                        @andrew said in CNC PCB milling:

                        did you manage to create double sided PCB jobs in the meantime based on my suggestion and on flatcam's documentation? it is not a hardcore process, let me know if you stuck at a given step.

                        Not sure what kind of pins to use for the alignment.

                        andrewA Offline
                        andrewA Offline
                        andrew
                        wrote on last edited by
                        #390

                        @neverdie said in CNC PCB milling:

                        @andrew said in CNC PCB milling:

                        did you manage to create double sided PCB jobs in the meantime based on my suggestion and on flatcam's documentation? it is not a hardcore process, let me know if you stuck at a given step.

                        Not sure what kind of pins to use for the alignment.

                        I missed this reply from you.
                        so, you have to define the alignment holes, typically outside of the actual pcb area, in the "frame".
                        you have to define two of them, the rest will be calculated automatically.

                        the steps are exactly the same as that you can see on http://flatcam.org/manual/procedures.html#side-pcb

                        see the pic below. note, that you don't have to write the coordinates to the input boxes manually, once you click on the design area the corresponding coordinates will be copied to the clipboard, so you can use ctrl-v to fill out the settings.

                        • click on the picture to define the axis (X in this example)
                        • copy the corresponding coordinates to the point/box input filed
                        • click on the design area to define the exact location of the first alignment hole (left side of the actual pcb)
                        • copy the corresponding coordinates to the alignment holes input filed
                        • click on the design area to define the exact location of the first alignment hole (right side of the actual pcb)
                        • copy the corresponding coordinates to the alignment holes input filed. the two set of coordinates have to be separated by coma.
                        • configure the alignment holes' drill size
                        • click on the create align drill button and you're done. back on the project tab you can find a new drill job which you have to further process to create the belonging G code from it.

                        alt text

                        NeverDieN 1 Reply Last reply
                        1
                        • andrewA andrew

                          @neverdie said in CNC PCB milling:

                          @andrew said in CNC PCB milling:

                          did you manage to create double sided PCB jobs in the meantime based on my suggestion and on flatcam's documentation? it is not a hardcore process, let me know if you stuck at a given step.

                          Not sure what kind of pins to use for the alignment.

                          I missed this reply from you.
                          so, you have to define the alignment holes, typically outside of the actual pcb area, in the "frame".
                          you have to define two of them, the rest will be calculated automatically.

                          the steps are exactly the same as that you can see on http://flatcam.org/manual/procedures.html#side-pcb

                          see the pic below. note, that you don't have to write the coordinates to the input boxes manually, once you click on the design area the corresponding coordinates will be copied to the clipboard, so you can use ctrl-v to fill out the settings.

                          • click on the picture to define the axis (X in this example)
                          • copy the corresponding coordinates to the point/box input filed
                          • click on the design area to define the exact location of the first alignment hole (left side of the actual pcb)
                          • copy the corresponding coordinates to the alignment holes input filed
                          • click on the design area to define the exact location of the first alignment hole (right side of the actual pcb)
                          • copy the corresponding coordinates to the alignment holes input filed. the two set of coordinates have to be separated by coma.
                          • configure the alignment holes' drill size
                          • click on the create align drill button and you're done. back on the project tab you can find a new drill job which you have to further process to create the belonging G code from it.

                          alt text

                          NeverDieN Offline
                          NeverDieN Offline
                          NeverDie
                          Hero Member
                          wrote on last edited by
                          #391

                          @andrew Are you using male header pins for your alignment? How deep are you drilling the holes them?

                          andrewA 1 Reply Last reply
                          0
                          • NeverDieN NeverDie

                            @andrew Are you using male header pins for your alignment? How deep are you drilling the holes them?

                            andrewA Offline
                            andrewA Offline
                            andrew
                            wrote on last edited by
                            #392

                            @neverdie yes, I use male pins, with 0.7mm drill (so it is tight for the pin), 5mm depth. but this is really up to you, choose anything which you have easy access to.

                            NeverDieN 1 Reply Last reply
                            0
                            • andrewA andrew

                              @neverdie yes, I use male pins, with 0.7mm drill (so it is tight for the pin), 5mm depth. but this is really up to you, choose anything which you have easy access to.

                              NeverDieN Offline
                              NeverDieN Offline
                              NeverDie
                              Hero Member
                              wrote on last edited by
                              #393

                              @andrew

                              With single sided PCB, I soldered the ground wire (for probing) to the copper cladding, just as the Chilipeppr author did. How are you handling it for two sided? If I do it that way for two sided, the solder bump may prevent the board laying flat on the wasteboard.

                              E andrewA 2 Replies Last reply
                              0
                              • NeverDieN NeverDie

                                @andrew

                                With single sided PCB, I soldered the ground wire (for probing) to the copper cladding, just as the Chilipeppr author did. How are you handling it for two sided? If I do it that way for two sided, the solder bump may prevent the board laying flat on the wasteboard.

                                E Offline
                                E Offline
                                executivul
                                wrote on last edited by
                                #394

                                @neverdie I use a wood screw in the sacrificial board holding a piece of metal as a "clamp" I slide it over the board (1mm overlap) and clip one alligator clip to the screw, the other to the bit. After probing I slide it out of the way. The metal piece is about 10cm long and it's left in place for the life of the wood board.

                                NeverDieN 1 Reply Last reply
                                0
                                • andrewA Offline
                                  andrewA Offline
                                  andrew
                                  wrote on last edited by
                                  #395

                                  hackaday just released a relevant post:
                                  https://hackaday.com/2018/01/04/guide-why-etch-when-you-can-mill/

                                  NeverDieN 1 Reply Last reply
                                  0
                                  • NeverDieN NeverDie

                                    @andrew

                                    With single sided PCB, I soldered the ground wire (for probing) to the copper cladding, just as the Chilipeppr author did. How are you handling it for two sided? If I do it that way for two sided, the solder bump may prevent the board laying flat on the wasteboard.

                                    andrewA Offline
                                    andrewA Offline
                                    andrew
                                    wrote on last edited by
                                    #396

                                    @neverdie said in CNC PCB milling:

                                    @andrew

                                    With single sided PCB, I soldered the ground wire (for probing) to the copper cladding, just as the Chilipeppr author did. How are you handling it for two sided? If I do it that way for two sided, the solder bump may prevent the board laying flat on the wasteboard.

                                    I use some flat metal weight connected to the given wire, placed on top of the pcb.

                                    1 Reply Last reply
                                    0
                                    • andrewA andrew

                                      hackaday just released a relevant post:
                                      https://hackaday.com/2018/01/04/guide-why-etch-when-you-can-mill/

                                      NeverDieN Offline
                                      NeverDieN Offline
                                      NeverDie
                                      Hero Member
                                      wrote on last edited by NeverDie
                                      #397

                                      @andrew said in CNC PCB milling:

                                      hackaday just released a relevant post:
                                      https://hackaday.com/2018/01/04/guide-why-etch-when-you-can-mill/

                                      Interesting that the engraving bits he liked the best were the 30 degree 0.1mm bits. So far, that's been my preference as well.

                                      YveauxY 1 Reply Last reply
                                      0
                                      • NeverDieN NeverDie

                                        @andrew said in CNC PCB milling:

                                        hackaday just released a relevant post:
                                        https://hackaday.com/2018/01/04/guide-why-etch-when-you-can-mill/

                                        Interesting that the engraving bits he liked the best were the 30 degree 0.1mm bits. So far, that's been my preference as well.

                                        YveauxY Offline
                                        YveauxY Offline
                                        Yveaux
                                        Mod
                                        wrote on last edited by
                                        #398

                                        @neverdie Possibly too late, but it still might contain some handy tips: https://hackaday.com/2018/01/04/guide-why-etch-when-you-can-mill

                                        http://yveaux.blogspot.nl

                                        1 Reply Last reply
                                        0
                                        • NeverDieN Offline
                                          NeverDieN Offline
                                          NeverDie
                                          Hero Member
                                          wrote on last edited by NeverDie
                                          #399

                                          @yveaux said in CNC PCB milling:

                                          @neverdie Possibly too late, but it still might contain some handy tips: https://hackaday.com/2018/01/04/guide-why-etch-when-you-can-mill

                                          It nicely sums up the biggest challenge of all:

                                          The biggest challenge in this DIY process is getting a correct and consistent cutting depth. These V-bits yield a wider cut the deeper you go, effectively robbing you of precious engraving resolution. If you do not tune in just the right depth, some traces will come out too thin and frail.

                                          The results I'm getting seem random. Sometimes it's great. Sometimes it's totally unusable (obliterated traces). Some of the time it's usable, but only just barely.

                                          So, I'm trying to think of a better approach that might deal with that. Maybe one way might be to start every etching session by running @executivul 's calibration traces. If it's cutting too deep, adjust, and then run again. When it's finally cutting right, then cut the desired PCB traces.

                                          I don't know what the answer is, but that's where it currently stands with me.

                                          The alternative is to just make a number of boards. Then cherry pick the good ones and dispose of the rest.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          21

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.1k

                                          Posts


                                          Copyright 2025 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular