Baffling Issue with CRTouch ABL

I have a baffling issue with the auto bed leveling on the printer I am building. The main board and its firmware are Ender 3 derived. In other words, the board is an SKR Mini E3 V3, and the firmware is identical to the standard firmware, other than the build volume dimensions.

The problem is as follows. If I start the ABL routine, it homes the X and Y axis, then heads to the middle of the bed to do a Z homing( firmware is set to use the probe for Z homing, just like my two Ender 3s which work fine). Once it arrives at the center of the bed, instead of deploying the probe and descending until the probe is triggered, it deploys and stows the probe 4 times, then deploys it a fifth time, leaving it deployed. During all this, it never once tries to go down with the Z stepper.

If instead, the first action I try is simply z homing, which automatically includes the X and Y when using the probe for the Z stop, it performs exactly the same as above.

However, if I first home just the X axis, then the Y axis, and then finally try to home the Z axis,it will go to the center of the bed, and start going up without stopping until I power off the machine. The Z stepper does not need to be reversed; it operates correctly when manually moving it. If I try doing an ABL routine after individually homing X and Y, it behaves like the first two scenarios.

The probe is fine, I tried swapping it with a known good one from another of my printers. The Z stepper is fine too, manually moving all the axis via the screen works just fine. I’ve tried another identical board, also with no change. I’ve tried enabling the 5v bltouch mode, the longer pulse mode, whatever the correct name for it is, as well as both at the same time. None solve the issue. I’ve tried setting the screen (BTT TFT35 V3.0.1) to auto load ABL on startup. After doing that, every time after initial startup it will pop up the pictured error.


If I do the ABL routine using the Marlin mode screen I get this on the home screen.

If I do the ABL routine from the TFT mode, I get this,

followed shortly by this.

And no, it has not actually probed the bed at all.
I also got this error once.

I wondered if the extended harness could be the problem, but the pins are all matched correctly, and all the wires check out as far a resistance goes. I’m really not sure what to do at this point. I suppose it will probably end up being something simple, but it sure isn’t feeling simple to me. Any input would be greatly appreciated.

Have you made sure that the pinout of the bltouch to the board is correct? And are you using a custom install of marlin or is it pre-compiled? Its possible that the pins in the firmware could be mismatched.

Yes, it is as it should be. I tried reversing the wire layout in the connector, but then the CRTouch didn’t function at all. It is a custom install of Marlin, for the bed dimensions, but I did try a standard pre-compiled ender 3 firmware set up for ABL, and the ABL acted the same as otherwise. The firmware I’m trying as far as I know is the same as in my ender 3s, other than bed dimensions anyway, but doesn’t work. My enders work great.

Wow that is a good one! Would you mind sharing the firmware with us and I can take a peek at it?

I could send you the compiled firmware, but unless you’re planning to run it on a machine you have, I don’t suppose that’ll do much good. I can’t send you the code from before compiling, because I used a firmware compiling service. I’ve tried compiling my own firmware multiple times in the past, and it has never worked for me, but that’s a whole other story.

Yes please send over the code before compiling, I would like to review it and see if anything jumps out at me as a potential issue.

See, I can’t, I’d like to, but am unable.

Oops sorry I misread that, my apologies!

What service did you use for sourcing the firmware, it might be useful to get in contact with whomever was responsible for the compilation of the firmware as they may be able to check it for errors.

No problem. This is the service I used. Firmware Builder - Marlin Firmware Service
I’ve used both his custom firmware compiler, and his pre-compiled firmware. One thing I might try that I probably should have done sooner is swap the board I am using in this build into one of my enders. If it works, then I know the problem is somewhere in the harness.

I had time this evening, so I did the test I mentioned. I took one of the two SKR MINI E3 V3 boards I had for this build, and swapped it into one of my ender 3s. I installed custom compiled firmware just like what I installed on the build(other than bed dimensions) on it. It behaved exactly as it should. I then loaded the exact same firmware on the board in the build(the now too small bed dimensions and all), and it did the same weird behavior as it’s been doing all along. So that is telling me it must be something specific to the wiring on the printer.

I checked the wiring to the probe before, and I thought everything checked out, but at this point, I don’t know what else it could be. I guess I’ll redo the harness, and see if anything changes. The length of the cable to the probe is about 1.5 meters. I don’t suppose the length alone could be causing the issue, even if resistance all looks good? Would upping the wire gauge be a good idea? It’s currently the same gauge as the standard CRTouch harness.

Well, went through the harness for the CRTouch, and confirmed with 100% certainty that all the wires are good, and the pin layout is definitely correct. The problem is still there. I’m going to order a new harness, and try that, but I am really scratching my head now. I’ve heard that wire shielding (or the lack thereof) can cause problems for these probes. The wires running to the probe don’t get any closer to the stepper motors than they do on my enders, and the harnesses for the probes are the same for all the printers besides length.

Is it possible that the probe harness being in close proximity to the stepper motor harness for a longer distance could cause issues? On my Enders, the probe harness runs along with the X and E steppers’s wires for about a foot and a half in a cable chain. On this custom build, the E, X and Z steppers’s wires are running in the cable chain alongside the probe harness for about 5 feet. I wonder if that might be the culprit?

Tomorrow if I have time, I’m going to go through the (somewhat tedious) task of removing the CRTouch harness from the cable chain, and just route it loosely, well away from any other wires, and see if that solves the problem. If it does, I’ll buy some shielded cable, and put the necessary connectors on the end of that.

Wow this is a good one,

I have used cables longer than 1.5m for some of my custom builds before and I didn’t have any issues so I doubt it would be something to do with that. Another potential easy test you could try (if you haven’t already) would be to swap the actual bed leveling sensors on the DIY and ender to see if there might be an issue with the one you are using.

I forgot to mention it on this thread, but that was one of the first things I tried. The known good one from one of the enders had the same weird behavior on the build. I haven’t got to pulling out the probe harness and routing it as a test yet, but I will update you with the results once I do.

Hmm ok, it could possibly be interference then. This one has pretty well stumped me, I guess we will just have to keep ruling things out until something works :man_shrugging:

Well, I am even more baffled than before. I removed the probe harness from the cable chain, and routed it well away from the stepper harnesses for the bulk of its length. No difference whatsoever in its behavior. I really don’t know what to try other than an all new harness with a somewhat heavier wire gauge, to help rule out voltage drop as an issue.

I FOUND THE PROBLEM!

It feels like something I really should have tried earlier. This afternoon I had the idea to pull sideways a little on the probe end of the harness as it was doing an ABL routine to see if maybe one of the ends inside that connector wasn’t tight on the pins in the probe plug. And what do you know, it WORKED! When I did that, it started to probe the bed like normal. If I released the side pressure, it would stop working. If I reapplied it soon enough, it would start working again.

I guess I will have to order a new harness unless I can manage to fix those ends so they are tight like they should be, since I am not set up for crimping such tiny connectors. At least I finally know what to do to fix it. It’s been holding up progress for far too long.

Wow, glad you got it figured out!

1 Like