This information is provided as a courtesy to users who would like to use our Unified Firmware on a machine with a BLTouch device installed. We do not provide free technical support for the BLTouch/CRTouch, as this is not a product that we sell or use regularly. We offer a competing product called the EZABL Pro, which we recommend as an alternative.
This information may be out of date, so please check with the manufacturer for current, up-to-date installation information. If you have information to add regarding this subject, please let us know by submitting a ticket.
The CRTouch is a clone of the BLTouch and it functions identically to the original BLTouch sensor. Any guides and information about the BLTouch apply to the CRTouch and the CRTouch is setup in our firmware using the BLTouch settings.
Each version of the firmware has a section for “Community Features” near the bottom of the user-configurable options of configuration.h. There is a setting to enable the BLTouch directly, and another to specify the data pin(s). For example:
// BL TOUCH ----------------------------------------
// There are 2 ways to connect the BL Touch to the V4.2.X boards - All on the 5 pin header or using 3 pins on the 5 pin header + Z Endstop port
// For details on these 2 types of connections refer to our help center article here: https://support.th3dstudio.com/helpcenter/creality-v4-2-2-v4-2-7-board-bl-touch-wiring-options/
// If you want to use the BL-Touch uncomment the BLTOUCH line below and uncomment #define CUSTOM_PROBE above and then enter in your offsets above in the CUSTOM PROBE section.
//#define BLTOUCH
// If you are using the 5 pin header for all the BL Touch connections, uncomment the below line
//#define BLTOUCH_ON_5PIN
If using the BLTouch on 5 pin option for the 4.2.x boards, both of these options need to be enabled by removing the leading slashes (//) from those lines as seen above. If you are following the manufacturer’s wiring instructions, the default setting for the pin selection is usually correct. If you are using your own wiring or a non-standard mainboard, please check the manufacturer’s documentation for the correct Marlin settings to use.
Once we have the BLTouch enabled, we need to tell the printer where the probe is in relation to the nozzle. To accomplish this, we need to enable the CUSTOM_PROBE setting, which in turn enables the custom nozzle-to-probe offsets for use.
The CUSTOM_PROBE option is usually available towards the beginning of the configuration file, in the “EZABL Mounts” section as seen here. Enable it as shown:
// EZABL Probe Mounts - Uncomment the mount you are using for your EZABL to enable it in the firmware.
//#define CR10_OEM
//#define ENDER3_OEM
//#define ENDER3_V2_OEM
//#define ENDER3_MAX_OEM
//#define ENDER5_OEM
//#define ENDER6_OEM
#define CUSTOM_PROBE
Nozzle-to-Probe Offsets tell the printer where the tip of the probe is so that it ensures the probe stays within the bed’s limits during probing procedures. This setting follows a diagram and instructions detailing its use. By default, the nozzle-to-probe offsets are set to generic values. The setting is disabled, so it needs to be enabled as shown:
#define NOZZLE_TO_PROBE_OFFSET { -10, -10, 0 }
Measure the distance from the tip of the nozzle to the center/tip of the probe in X and Y directions ONLY. These measurements need to be in millimeters (mm). Enter the X and Y values in place of the defaults.
Do NOT use a Z value for nozzle-to-probe offsets, always leave the Z value at zero (0).
Click here for additional information about nozzle-to-probe offsets.
We also have two additional settings of interest. These are shared with the EZABL, and since the EZABL is our product, we have them named as such. These two features do work with the BLTouch and other bed-leveling probes. They control the number of data points the probe takes, and the “margin” around the edge of the bed to account for any obstructions that might be present when using binder clips/glass beds:
//===========================================================================
// EZABL Advanced Settings - EZABL_POINTS & EZABL_PROBE_EDGE are also used for other probes
//===========================================================================
// Probing Grid Points - If you want more or less EZABL probe points change the number below, use odd numbers. Total points is # times #.
#define EZABL_POINTS 5
// Probe Edge - How far from the edge of the bed to probe from. Use 50 if using binder clips. This also sets the edge inset value for MANUAL_MESH_LEVELING.
#define EZABL_PROBE_EDGE 50
Our firmware is a slightly-modified version of Marlin. If there is a setting you do not see present in configuration.h, please also check the configuration_adv.h and configuration_backend.h files to see if the setting is present. You can also add/modify/change our firmware as you see fit, and since it is based on Marlin, anything you can do in Marlin you can also do in Unified Firmware.