Introduction: Carvera Touch Probe Modifications

I added support for a 3 axis cnc probe to my carvera.

These probes require power, so the existing probe connector on the side of the bed will not work without modification


There are a few ways to go about this process, I will be covering two:

Method 1: Using the USB power connector on the side of the machine to provide power

Method 2: Hiding all the cables under the bed so it works similar to the existing spare touch probe. This has a bug right now. If the wireless probe is fully charged it will shut off the power that I am using. To fix this, simple remove the wireless probe from its charging socket and restart the machine before powering on the carvera and using the probe

I will figure out a different fix and update these instructions when I get it sorted


Two other ways I have been thinking about: Using the EXT port on the controller board, that would require a firmware update

Making the whole thing wireless similar to the default carvera probe, which is in the works.

Supplies

For this project you will need:

  • NO CNC touch probe https://a.aliexpress.com/_mrmgNDs. Be sure to grab the 6mm NO or 4mm NO version. They should be ~50 USD
  • carvera collet to match the touch probe (The probe I bought has a 6mm shank, so I have a 6mm collet)
  • tools to disassemble the Carvera bed (several metric allen wrenches)
  • soldering iron
  • heat shrink tubing
  • hot glue (strain relief)

Then you have two options:

Under the Bed Mounting (the one I used):

USB port on side of machine:

  • USB A male cable end
  • a 2 pin JST connector that fits in the bed probe slot on the carvera

Step 1: USB Method

(This is not super detailed as I did not go through this process)

If you want to use the USB port on the side of the machine, get a USB A male cable end and strip the wires.

The Touch Probe should have come with a USB C cable with stripped ends as well. Connect the reds and blacks of these two USB cables together with solder/heat shrink tubing


The yellow wire on the probe USB side will then get connected to the side probe point using a 2 pin JST connector (sorry, I don't know the size probably 2mm or 2.54mm pitch). Using the existing probe as a guide, you want the yellow wire to be connected where the blue wire of the existing probe goes (closer to the back of the bed)

Step 2: Method 2: Remove the Bed

Using Allen/hex wrenches, remove the 9 bolts holding down the mdf bed

On my machine there are a bunch of extra parts removed. That is for an all aluminum bed project that is in the works

With the bed removed, unplug the JST connectors that are plugged into the two circuit boards and unscrew them.


Once you are done with that, measure a piece of red wire that will go between the two boards along the existing trench. You can see the red wire in the second image

Step 3: Prepare the Power Circuit Board

On the board you took from the top right, solder one end of the red wire carefully to the pin marked in orange in the image. This will provide our +5v for the probe

Step 4: Prepare the a Axis Circuit Board

On the circuit board you took from the bottom left, carefully de-solder the 2 pin JST connector

Solder on the new 3 wire JST connector:

The first pin, furthest right in the images and marked in yellow, will be the data pin. This was the yellow wire on my probe usb c connector

The second pin will be the negative connection for the probe and connect to the black wire of the probe usb c connector

The last pin will not connect to this circuit board and instead connect to the red wire that is attached to the previous step's circuit board. Make sure to shrink wrap this connection so it does not interfere with the other pins


Replicate this pin arrangement on the female side of the JST connector when connecting it to the USB C cable for the probe

Step 5: Replace the Circuit Boards in the Bed

Replace the two boards in the carvera bed with their socket head bolts and run the red wire along the channel between them.

If needed, add hot glue strain relief between the red cable and the two circuit boards as well as on the JST connector if needed.


Test the probe by plugging it in and turning on the carvera. The bed will move when it turns on so be sure nothing will be pinched in that process

The probe should light up, if it does you can replace the MDF Bed

Step 6: How to Use the Probe

The first few times you test the probe, make sure it is well above the bed and won't run into anything if triggered.

To test the probe:

Drop the current tool so that the spindle is empty

Swap to the 6mm or 4mm collet, whichever fits your probe


In carvera controller, connect to your machine and click the button that says MDI to open up a terminal

In the terminal type but do not hit enter/send

M490.1

Place the probe into the collet without its usb cable and hit enter/send in the controller to close the collet. Wait for the collet to fully close before letting go of the probe

To get the length of the tool into memory, run

M491


Use the control interface to move the probe somewhere where it is well above the bed and will not hit anything as it moves down 10mm

In the MDI run

G38.2 Z-10 F100

This will move the head down 10mm and display a warning since it did not touch anything

Move the head up 10mm and run

G38.2 Z-10 F100

again, but this time, as it is moving slowly down use a finger to touch the probe to activate it. The light on the probe should turn red and the machine should stop without the alarm.

If so, you have successfully wired your CNC probe, if not, check your wiring.


G28

will move the whole machine to its clearance position so you can mess with the probe


M490.2 will loosen the collet so you can remove the probe. Again, have a hand on the probe before running that command.



Step 7: Useful GCodes With Breakdown

(This is a work in progress. Use at your own risk, please comment with anything you notice. I am not sure about the ATC setup yet as mine has been disassembled)


Probing Commands follow this format:

G38.2 {Axis letter}{distance along that axis} F{feedrate}

So to probe along Z it would be

G38.2 Z-60.0 F100


To zero the probe you use the following:

G10 L20 P{Workspace} {Axis Letter} {offset}

Generally you use P0 as that is the active workspace

So to zero the Z axis

G10 L20 P0 Z0.

And to zero the X axis: (note the value after x is 1/2 the diameter of the probe tip, in this case for a 2mm tip. It is good practice to measure the diameter of the ball with a micrometer and use that measurement to set this value as it will be more accurate)

G10 L20 P0 X-1.0


more info here: https://linuxcnc.org/docs/html/gcode/g-code.html#gcode:g10-l2



Make sure you have run

M491

So that the tool length is in memory

Putting that together with some moves you can probe the bottom left corner of an object by getting the probe tip just over the bottom left corner (less than 8mm in the +X and +Y).



This is attached as a file to this step


G10 L20 P0 X0 Y0 (Zero X and Y where the tool is currently)

G38.2 Z-152.1 F100 (probe down in the Z direction)

G10 L20 P0 Z0. (Once the probe has touched the top face of the object set the new Z value to 0)

G91 G0 Z2.00 (rapid move the Z axis up by 2mm to avoid collisions)

G90 G0 X-10. Y 5. (move the probe off the left side of the workpiece with some Y offset so it can touch off X)

G90 G1 Z-2 F100 (slowly move down in Z so the user has time to avoid a crash)

G38.2 X35 F100 (probe along the x positive direction)

G10 L20 P0 X-1.0 (Zero X axis to 1/2 diameter of Tip. It is a negative number as we are probing from the left. Probing from the right would be a positive 1)

G90 G0 X -2.0 (rapid move along the x away from the workpiece to avoid a crash)

G90 G0 Z 2.0 (rapid move up along Z to avoid a crash)

G90 G0 X5 Y -10 (move to next probe start)

G90 G1 Z-2 F100 (slowly move down in Z so the user has time to avoid a crash)

G38.2 Y35 F100 (probe along Y positive direction)

G10 L20 P0 Y-1.0 (Zero Y axis to 1/2 diameter of Tip. It is a negative number as we are probing from the near side. Probing from the far side would be a positive 1)

G90 G0 Y -2.0 (avoid crash)

G90 G0 Z 2.0 (move up along z to avoid crash)

G90 G0 X5. Y5. (move the probe above the workpiece and finish the program)