Marlin Collision Sensing
This feature requires the BD sensor firmware version (you can get it by sending M102 S-1, not the hardware version on the sensor) to be greater than V1.2b (i.e., V1.2c and above) or purchased after March 2024, otherwise you need to use an external hardware tool (such as STlink) to flash the firmware into the BD sensor.
How It Works
- Automatically performs Z-axis offset calibration during G28: it can be triggered upon homing (after the nozzle contacts the bed) — then slowly moves upward until the nozzle just leaves the bed — and sets this position as the Z-axis zero point.
Benefits
- Automatic Z-axis offset calibration.
- You can still manually adjust the Z-axis offset for different filaments.
- Overcomes temperature drift.
- Temperature drift will change the Z-axis offset, but will not change the range of the bed mesh height map with the BD sensor. This means the bed mesh is the same even at different temperatures.
The code for this feature is in the pull request list of the official Marlin GitHub: https://github.com/MarlinFirmware/Marlin/pull/27243 So please use the following Marlin code: https://github.com/markniu/MarlinPULL/tree/bugfix-2.1.x
How to Use
Enable BD_SENSOR and add #define BD_SENSOR_CONTACT_PROBE in configuration.h
It should look like this:
#define BD_SENSOR
#if ENABLED(BD_SENSOR)
#define BD_SENSOR_PROBE_NO_STOP // Probe bed without stopping at each probe point`
#define BD_SENSOR_CONTACT_PROBE // it uses nozzle collision sensing to probe while homing`
#endif
-
Increase the probe speed in configuration.h.
-
Sensitivity depends on speed, so you need to adjust the Z-axis speed.
-
homing_speed and second_homing_speed should be in the range of 3 to 10, here it is the Z-axis probe feed rate.
-
For example:
#define Z_PROBE_FEEDRATE_FAST (5*60)
#define Z_PROBE_FEEDRATE_SLOW (5*60)
- In Configuration_adv.h, increase the Z-axis homing bump to greater than 4mm.
#define HOMING_BUMP_MM { 5, 5, 5 }
Test Homing
- Please send the
G28 Zcommand about 10 times, or use theM48command, to see if it is stable.