How to Fix Auto Leveling Sensors Not Working – BLTouch & More
Auto leveling sensors are great accessories for 3D printing but sometimes they don’t work as we want them to, whether not working at all, not responding and more. This article will go through some troubleshooting methods to fix them.
To fix your auto leveling sensors not working, first ensure that the sensor wires are properly connected to the right port. Your bed should be manually leveled to a good degree as well. Update your firmware to the correct version for your 3D printer and auto leveling sensor type. Also check your probe isn’t bent.
There are more details that you’ll want to know to finally fix your auto leveling sensor not working, so keep reading for more. These should work for the BLTouch, CR Touch and other auto leveling sensors.
How to Fix BLTouch Not Working or Responding
When your BLTouch stops working or responding, there are specific solutions available to repair it. To ensure that your BLTouch works follow the steps outlined below.
- Fixing wires correctly
- Re-flash the firmware
- Straighten the pin
Fixing Wires Correctly
One of the main methods to fix a BLTouch not working or responding is to fix your wires correctly. When your BLTouch is wired incorrectly, it will not receive power and this will prevent it from responding.
A way to check that power is actually flowing through the wires is to use a Multimeter.
Once you’ve done that, you want to check the order of the wires on the connector, ensuring that it matches up in the correct order. Sometimes the order of the wires on the connector is different than how it is on your board.
The wiring can be different depending on what board you have. For example, the Creality board and the BIGTREETECH board is different, so you have to confirm it through your board’s wiring diagram.
After that, fix the wires to the right pin on the BLTouch.
One user reported that his BLTouch did not work after connecting it to an SKR Mini E3 V3.
He actually discovered that the Z-probe slot on his SKR Mini wasn’t working properly, which he tested by using the display extension that came with the BLTouch.
Re-Flash the Firmware
Another way to fix a BLTouch not working or responding is to re-flash the firmware.
One user who was having issues of his BLTouch not working figured out the solution, which was to re-flash. You want to make sure you flash the correct firmware that is compatible with your specific device and 3D printer.
Another user mentioned that they had issues due to flashing the wrong firmware. They went to the official Creality website to download the correct firmware.
Jyers is a very popular firmware that 3D printer hobbyists love to use, so I’d recommend trying that out. Someone who previously tried Creality firmware with the BLTouch said he had issues with it, but then went to Jyers and it’s been working fine since.
One issue that occurs with the BLTouch V3 sensor is that it reacts fine to touch but it doesn’t send a signal to the mainboard, causing the nozzle to crash into the bed.
The video below by Teaching Tech gives three fixes that works for the BLTouch V3 for Creality machines.
Straighten the Pin
Simply straightening a bent pin can fix your BLTouch not working or responding.
One user who had issues with his BLTouch not pushing the probe down managed to fix it by manually pulling out the pin to see if it was bent. He saw that it was so he gently straightened it and it solved the issue.
Unplug Your Z-Limit Switch
If you’ve tried these fixes but are still having issues, it might be due to your Z-stop or limit switch still being plugged in. It’s important to unplug your Z-limit switch so the BLTouch can take over.
You can also just tap the sensor during homing to see if it actually stops the nozzle, rather than allowing it to crash onto the bed.
How to Fix BLTouch Blinking Red/Blue Light or Light Staying On
When your BLTouch fails to function and blinks red or blue. The following guides will assist you in repairing your BLTouch.
- Use the right firmware
- Replace the BLTouch Cable
- Loosen the Grub Screw
Use the Right Firmware
One reason why your BLTouch blinks red and blue is because you are using an incompatible firmware with your 3D printer.
A user shared that he used the Smith 3D firmware with his Ender 3 V2 3D printer. In an attempt to level the bed, the BLTouch sensor fails to probe while blinking red.
To fix this, he installed a new compatible firmware and the probe started functioning.
Replace the BLTouch Cable
Another reason why your BLTouch blinks red and blue is because there is a broken cable at the connector from the BLTouch.
One user who has a Creality CR-10S Pro V2 experienced this issue. He ended up writing to Creality’s customer service since his 3D printer is still in warranty and managed to get a spare from them.
When your BLTouch fails to probe and consistently blinks red, you should try to:
- Check for a broken cable at the connector of the BLTouch
- Replace the broken cable with a new cable
Your BLTouch should light up and do a basic self-test when it receives power, even when your data pin isn’t connected. If it doesn’t light up, it means it’s either broken or isn’t receiving power.
Loosen the Grub Screw
Another reason why your BLTouch can blink red and blue is when your grub screw is tightened too much, leaving an insufficient amount of space between the magnet and the screw for the magnet to properly release.
It causes your BLTouch sensor to turn red and pin fail to deploy.
To fix this, one user applied the following solution which solved the problem:
- Locate the small hole at the top of the bracket where the BLTouch is mounted
- Insert a small hex wrench into the small hole and back the grub screw until it makes contact with the bracket.
- Then tighten the grub screw a little so there isn’t a lot of pressure.
A user started to experience a similar problem after trying to use his newly ordered BLTouch sensor. After applying the above solution, he testified that it has solved his problem completely.
Another user was about to file for a refund after facing this problem with his BLTouch sensor. After applying the above fixes, he shared that it was a great solution which solved his problem and said it was a lifesaver.
One user even said he has been having this issue on and off for a whole year and this solution is the one that finally fixed it.
How to Fix BLTouch That Keeps Moving Up
When your BLTouch keeps moving up and fails to function, there are specific reasons for this occurrence. Although, you’ll find fixes stated below that will solve your problem.
- Upgrade the mainboard
- Switch the Invert Z Axis
Upgrade The Mainboard
One way to fix a BLTouch that keeps moving up is to upgrade the mainboard.
A user reported that his BLTouch was moving in an upward and downward direction towards the bed. The BLTouch then pulls back before moving down, as if it is about to deploy the sensor.
They tried a few things such as changing the wiring around and flashing the Marlin 2.0 firmware but they didn’t work. The thing that did work for this user was to purchase a new mainboard.
Switch the Invert Z Axis
Another way to fix your BLTouch that keeps moving up is to switch the Invert Z Axis setting in your firmware.
After experiencing a problem with the BLTouch, a user revealed that the BLTouch homes upward instead of downward with the TH3D firmware.
To fix this issue, one user found the Invert Z Axis setting and applied it.
If you’re using the TH3D firmware, look for a source download for the customized Marlin firmware; the invert settings are located there.
How to Fix BLTouch Not Leveling
There are specific ways to fix the BLTouch sensor when it’s not leveling. You can follow these guides provided below to fix your BLTouch when it’s not leveling.
- Upgrade the firmware
- Installing the bed visualize plugin
- Replace warped bed plate
- Check the Z axis for binding
Upgrade the Firmware
A specific solution to fix your BLTouch not leveling is to upgrade the firmware.
After installing the BLTouch sensor, a user upgraded the 3D printer firmware and experienced issues from the probe causing the BLTouch not to level. To fix this issue, they did the following steps:
- Replace the Creality firmware with the Jyers firmware – the UBL 10 x 10 firmware is a good choice.
- Manually level the bed using the Jyers manual leveling feature while the bed is at printing temperature and the Z-offset is set to 0 or greater.
- Set the Z-offset to just barely touch a piece of paper on the bed’s surface, to the point where you can just about remove it
- Prepare a mesh through the Jyers and complete that
- Open the menu item to view the mesh and examine the values provided. Also, make sure to turn on the display of values.
- If you have more than 0.3mm of variation in values, repeat the manual leveling step (without adjusting Z-offset).
- You may need to repeat the above step three or four times to achieve really good leveling.
- If you chose the UBL firmware, you can adjust the startup code for your 3D printer in Cura to the following:
Ender 3 Custom Start G-code
G92 E0 ; Reset Extruder
G28 ; Home all axes
G29 A ; Activate UBL
G29 L0 ; Load default mesh from EEPROM
G29 F10 ; Fade corrections over 10 mm (uncompensated above that)
G29 J2 ; Get the bed tilt in a 2 x 2 grid instead of the default 3-points.
After you have implemented this, your 3D printer should carry out a sensing of the bed in various points such as the middle and the four corners at the start of prints.
The user who did these steps said that they have had a lot less issues since.
Installing the Bed Visualizer Plugin
Installing the Bed Visualizer plugin using OctoPrint is one way to fix a BLTouch that isn’t leveling.
After purchasing the Ender 3 and installing the BLTouch sensor, a user revealed that after several months of printing, his prints began to develop issues and the BLTouch sensor no longer leveled the entire bed.
One user who had a similar problem suggested running an M48, which is a probe Repeatability Test, explaining that if the range value is greater than 0.05mm, something is wrong. It tests whether your BLTouch is giving similar results when testing out the same spot multiple times.
An example of one user’s M48 results are:
- Recv: Mean: 0.008900
- Min: 0.003
- Max: 0.015
- Range: 0.012
- Standard Deviation: 0.003534
Some common issues with the M48 test come from the gantry not being level, hotend extrusion issues, or mechanical issues.
The user resolved the BLTouch not leveling issue by installing the Bed Visualizer plugin using OctoPrint. It then generated a 3D graph, which was used to get the four corners of the bed within a 0.1mm range of each other over the course of five iterations.
Finally, the user stated that the bed must be close to begin with, then the BLTouch will smooth out minor imperfections, but it will not compensate for a bed that is severely out of level.
Replace Warped Bed Plate
Having a warped bed is another reason why your BLTouch isn’t leveling properly, as well as having a wobbly bed.
One user experienced this issue and he fixed it by replacing the warped bed plate with a fresh one. A basic way to check whether your bed is flat is by placing it on a flat table and trying to press the corners. Also do this on the front and back.
If the plate wobbles, then that means it’s warped. The BLTouch probe is a great sensor, but the level of compensation might not reach up to significant warping.
Check the Z Axis for Binding
Another way to fix the BLTouch not leveling is to check the Z axis for binding.
One user who encountered this issue with his BLTouch revealed that when the Z axis is binding, it may not move the expected amount, causing the BLTouch to function properly but produce false results.
He resolved the problem by applying the following steps:
- Observe first if your axis is binding
- Proceed to inspect the brass nut and re-grease the rod.
- Ensure that the bracket through which the rod passes is at 90°.
When your rod is detached from the motor, it should be able to fall on its own and almost hit the motor. If it lands far to the side or far to the front or back, your bracket is not square and must be squared.
How to Fix BLTouch Not Stopping Z Axis
When the BLTouch is not stopping the Z axis, the following solution has been provided to fix the problem.
- Change the sensor pin value
- Flip the white and black wires
- Replace the firmware
Change the Sensor Pin Value
Another way to fix your BLTouch that is not stopping the Z axis is to change the sensor pin.
One reason your BLTouch sensor isn’t stopping the Z axis could be because the default profile downloaded in the Klipper firmware has the wrong sensor pin value.
A user who experienced this problem fixed the issue by a changing the sensor pin value to ^ PC14 with no space or quotes based on the official diagram of his SKR Mini E3 V3.0 mainboard.
Flip the Black and White Wires
When your BLTouch is not stopping the Z axis, this problem could be caused by a wiring connection not enabling the BLTouch to act like a Z home switch.
A user shared that his BLTouch developed an issue with auto home and the Z axis not stopping. After experiencing this problem, he fixed his BLTouch by flipping the white and black wires on the board.
Another user who uses the Creality brand kit solved the problem by swapping the black and white pins in the connectors in the BLTouch built with 2 pin connectors to replace the Z stop wire.
However, if your bed has a deviation of more than 1mm from side to side, you will need to manually level the bed before fix.
Replace the Firmware
A reason why your BLTouch is not stopping the Z axis could be caused by a wrong firmware usage.
The BLTouch pin on a user Ender 3 V2 3D printer retracts at the start of a print while attempting auto home, but the carriage continues to push down and crash into the bed.
To resolve this issue, the user upgraded the firmware to Jyers firmware, which resolved the issue so you can try this as well.
How to Fix BLTouch Self-Test Not Working
The following fixes have been provided to fix the BLTouch self test.
- Switch to Unified Bed Leveling (UBL)
- Ensure probe compatibility
- Straighten the bent probe
Switch to UBL
If your BLTouch self-test doesn’t work properly, a potential fix is to switch to UBL.
One user who had a BLTouch installed on their Ender 3 experienced this issue after flashing the Marlin firmware with the current configurations. He managed to fix this problem by switching to UBL.
Another user who had a year of trouble-free 3D printing had a problem with the BLTouch not performing a self test even after purchasing a new cable.
The BLTouch successfully self tests when the probe is manually deployed before turning on the printer, but it randomly stops working while homing or leveling.
To resolve this issue, the user changed the BLTouch pin and tightened the grub screw less tightly than before which solved the issue, similar to the previous fixes in this article.
Ensure Probe Compatibility
A user broke his BLTouch probe by scratching it over a print and ordered a metal replacement probe for it which surprisingly didn’t work due to its incompatibility with a genuine BLTouch.
He ordered a ANTCLABS Genuine BLTouch Replacement Plastic Push-Pin to fix this problem, and got the BLTouch working smoothly after. The genuine BLTouch sensors don’t use metal probes so it can cause failures when doing a self-test.
Straighten the Bent Probe
A bent probe on your 3D printer could also be the cause of your BLTouch failing to self-test. If your BLTouch does not extend twice after restarting, it may have a bent probe.
One user who had an Ender 5 Plus for around a week found that he was experiencing this issue. He checked all his connections and they looked good so he wasn’t sure what the problem was.
After looking at his BLTouch pin and seeing that it was slightly bent, he gently bent it back and that got the self-test working again.
How to Fix CR Touch Not Homing or Home too High
When the CR Touch is not homing, these are provided solutions aimed at solving the problem.
- Install the correct firmware
- Fix the CR Touch connection
- Upgrade the board
Install the Correct Firmware Version
Some users shared that their CR Touch is not homing on the Z axis while displaying a red light which indicates that the wrong firmware version has been installed.
To fix this issue, you’ll need to install the correct version of firmware that matches with your mainboard or most likely switch to the Jyers firmware as recommended by other users.
After fixing this problem, your CR Touch should glow purple instead of red which indicates that it is working correctly.
Fix the CR Touch Connection
Another reason for the CR Touch not homing is due to your connections being incorrectly wired, similar to previous fixes in this article.
One user who installed the CR Touch saw an error code “homing failed” on their 3D printer and it failed to auto home, as well as not allowing him to move the individual axes.
A possible solution could be to fix the wire connections. If you have a 5 pin connector with a 4.2.2 board for example, you could split the wires to a 3 by 2 wire connection.
An easier method would be to change the probe pin in the firmware while using the 5 pin header. The pin would be PB0 (or 1)
Upgrade the Board
You can also fix your CR Touch not homing or homing too high by upgrading the board.
For one user, the Z axis wouldn’t lower after installing the CR Touch sensor on his 3D printer.
According to extensive research, the reason for this issue is that the new Ender 3 Pros with 4.2.2 boards were built with a different chip.
Due to difficulties in locating a specific firmware compatible with the CR Touch, the users resolved the issue by first upgrading the board to version 4.2.7 and then updating the firmware.
Regular 3D printing users experience Auto Leveling sensor problems. But don’t worry, the fixes provided above would help you solve the problems.
Good Luck and Happy Printing!