BLTouch Not Working After Firmware Update to 3.4
-
@alecsanchez said in BLTouch Not Working After Firmware Update to 3.4:
It is only when the y endstop is triggered that something seems to short out
Thank you. How do you power the Duet: over USB?
-
@infiniteloop it is powered by a 24v mean well power supply. The raspberry pi 3b is connected via ribbon cable, and that has its own 5v power supply
-
@infiniteloop I have performed these additional steps to give more insight:
- switched the x and y endstop pins in the config.g file (so now hardware-wise, the x endstop acts as the y endstop.)
- activating the x endstop displayed the same behavior - the bltouch no longer deployed
- activating the y endstop did not affect the bltouch
This shows that it is not an issue with the wires shorting. Whichever endstop is allocated as the y endstop in the config.g file seems to mess with the bltouch.
-
Would you be able to test in standalone mode?
-
@alecsanchez Sorry for the many questions - I just try to exclude some variables from the list. At this point, it looks like an electrical (or wiring) problem to me. However, I'm a bit puzzled:
You told @Phaedrux:
But if I home the z axis in a location thats not at y-min, it wont deploy since the y endstop isn't triggered. However if I manually trigger the y endstop while in the process of homing z, the probe will deploy.
… and told me:
It is only when the y endstop is triggered that something seems to short out
Could you please clarify whether the BLTouch works only with activated endstop - or is it just the other way round?
-
@infiniteloop Yea I can see how that can be confusing, let me see if i can clarify:
- If I home x and y, and then home z, the bltouch does not deploy. BUT, while the bed is moving up to home z, if I press the y endstop manually with my hand, the bltouch will deploy.
- the bltouch will deploy at any point along the build area UNTIL I manually activate the y endstop. once i press the y endstop, I am no longer able to use m401/402.
- If i switch the pinouts in config.g to use the physical x endstop as the y endstop, and activate the x endstop, the bltouch no longer deploys
-
Also to confirm, the bltouch works regularly WHILE activated.
-
@alecsanchez said in BLTouch Not Working After Firmware Update to 3.4:
let me see if i can clarify:
That is, if the Y endstop was once pressed (and released), the BLTouch will no longer work, except of when you press and hold the endstop again?
How is the Y endstop wired: two lines from the Duet to the switch, GND and signal?
-
@infiniteloop Those are all correct
-
@Phaedrux If I can avoid converting to standalone mode that would be great... but if that is a better move forward to test, I can do that. This just very much feels like a possible bug since it occurred immediately after updating
-
@alecsanchez OK. I have no idea how the BLTouch is wired, but I think there must be a signal to control the deploy mechanism - and another line needs to be grounded in order for this to work. Maybe the Y endstop is needed to deliver GND? Can you check the voltages on the pins of the BLTouch-connector (on your Duet, BLTouch unplugged): Once with open Y-switch, once when it's closed? Do you get different readings? And please be careful not to shorten anything, this could damage your Duet
-
@infiniteloop I would find this plausible, except for the fact that the bltouch deploys properly before activating the Y endstop. This suggests it is wired correctly, right?
I think it is odd that this phenomenon occurs with any switch that is directed to the Y endstop in config.g. It seems that is the more likely issue
-
@alecsanchez said in BLTouch Not Working After Firmware Update to 3.4:
@Phaedrux If I can avoid converting to standalone mode that would be great... but if that is a better move forward to test, I can do that. This just very much feels like a possible bug since it occurred immediately after updating
Well testing standalone mode would at least cut down one variable and is pretty easy to do.
If you have a spare SD card you can set it up with the DWC files in the /www folder, and backup your current config files through DWC and place them in a /sys folder. Then put the SD card into the Duet itself and disconnect the ribbon cable. Move the network connection over to the Duet. May need to add network details to the new config.g file.
-
@alecsanchez said in BLTouch Not Working After Firmware Update to 3.4:
It seems that is the more likely issue
You are right. What I'm curious about is which signal is affected by the Y endstop - if at all… Perhaps, we get a hint at what's going on. It's a faint hope…
Maybe it's better to follow @Phaedrux' path first - with an experimental setup in standalone mode, you can try modifications or even a fresh config from the online-configurator tool.
-
@alecsanchez Just an idea: could you please try to change this line in your config
M574 Y2 S1 P"io1.in"
to this:
M574 Y2 S1 P"^io1.in"
I assume this is your port for the Y endstop … The caret (^) activates a pull-up, which might stabilise the signal of the NO switch. Don't know if that helps though.
-
@infiniteloop This appeared to pull the signal high when the endstop wasn't activated. So no luck
-
@infiniteloop @Phaedrux Are there any other io pins I can use for endstops on the board that aren't the 8 IO_X pins?
-
This appeared to pull the signal high when the endstop wasn't activated. So no luck
Right, I intended to pull the inactive signal high. In a previous post, you confirmed on request that the active signal is low. I asked:
How is the Y endstop wired: two lines from the Duet to the switch, GND and signal?
Your answer:
Those are all correct
From the result of the pull-up test, I think it must be the other way round, I.e. the signal of the Y switch is active high.
Please investigate this: measure the voltage on the signal pin against GND. Is it high when the switch is active? And: what voltage do you get when the switch is inactive?
Counter check: Which pins of the I/O port are connected to the switch? Please refer to this wiring diagram of your board. Best would be an additional photo of the wires and the connector to illustrate the situation.
What puzzles me is that just the Y switch somehow interferes with the BLTouch, regardless of the port you use, but that the X switch works apparently fine (if assigned to X).
-
@infiniteloop Sorry I made a mistake yesterday regarding the caret (^)
M574 Y2 S1 P"io1.in"
is reading 0v while inactive, 3.3v while active
M574 Y2 S1 P"^io1.in"
is reading 0v while inactive, 2.97v while active
The switch is connected by two wires to GND and io.1in as shown in this picture:
-
@alecsanchez said in BLTouch Not Working After Firmware Update to 3.4:
M574 Y2 S1 P"^io1.in"
is reading 0v while inactive, 2.97v while active
That's weird. As a NO switch, it should read something near 3V if open and 0V if closed. Instead, this one works in NC mode. Is this the same with your X endstop?