Closed MarphXL closed 5 years ago
define USE_Z2MIN_PLUG // 20181006
There is no such thing.
We'll look at the dual-Z-endstop homing and see if there's anything obvious going on.
Have you tried bugfix-2.0.x
to see if it exhibits the same issue?
Try this branch and see if it works any better for you: https://github.com/thinkyhead/Marlin/archive/bf1_old_dual_homing.zip
Thanks but the bf1_old_dual_homing.zip doesn't help. I try the bugfix 2.0 in an hour.
Here are my pins from M43, if this helps:
Waaaah...
Same problem with bugfix 2.0. First I have had the problem with missing TMCStepper.h
but I found the solution at Issue #11992.
Could it be the stepper-library that makes this problem?
My last try was deleting alle stepper-libraries from arduino. Install latest tmcstepper-lib and compile again but it doesn't change the problem. Did you have another tip?
Nobody could help?
Patience. The volunteers who occasionally scan these issues have busy lives and sometimes even sleep.
See if enabling ENDSTOP_NOISE_FILTER
makes any difference.
patience. yes, sorry about that. I have tested endstop noise filter but it change nothing. all my endstops are inverted. could this be a problem?
I'm still using dual Z driver and dual z endstop (but v2.0) and it works with no issues. Have you checked with M119 if endstops work correctly?
yes, I tested M119. Did you have inverted endstops?
Yes, inverted, only difference I use _ZMAX_
instead of _YMAX_
as second input and I have interrupts enabled
Inverted (N-O) switches are more likely to have issues if they get shorted together, whereas N-C switches are caught earlier and are also immune to induction. You can use PINS_DEBUGGING
and M43
to check each endstop pin to make sure that when one endstop is triggered, the other one isn’t. (M119
only shows one endstop state per axis, AFAIK.)
thanks. could you paste your m43 and m119 so I can compare.
My M119 with no endstop pressed:
22:33:44.065 : x_min: open
22:33:44.065 : y_min: open
22:33:44.065 : z_min: open
22:33:44.065 : z2_min: open
My M119 with Z1 endstop pressed:
22:35:33.769 : x_min: open
22:35:33.769 : y_min: open
22:35:33.769 : z_min: TRIGGERED
22:35:33.769 : z2_min: open
My M119 with Z2 endstop pressed:
22:36:21.798 : x_min: open
22:36:21.798 : y_min: open
22:36:21.798 : z_min: open
22:36:21.798 : z2_min: TRIGGERED
@thinkyhead
M119 only shows one endstop state per axis, AFAIK.)
mine report both
@MarphXL sorry but M43 is not enabled in my firmware
mine report both
Oh good. That makes it easier for testing.
I checked all twice. My M119 is exact like GMagician. My M43 is above, but the problem is the same. Then I downloaded Marlin 1.1.9 again and make only the minimum changes in Pins and activated dual-Z-Axis. Same problem. I changed the microswitches so i must not invert them: same problem.
If I manually trigger Z-Endstop or Z2-endstop M119 give's correct results.
So I don't know what I can do.
I forget: With the new microswitches I make new cables and I make them VERY short. And as I wrote manually trigger-tests with M119 are all correct.
Don't know if already asked, but are you using bugfix-1.1.x? maybe is better to start with it and not with stable 1.1.9 (bugs have been solved meantime)
The first try was the bugfix 1.1.9, then stable 1.1.9. 5 days ago thinkihead said I should try bugfix 2.0 and I tested it with bugfix 2.0. Same problem. So what could it be? the error must be somewhere in my hardware. I can google, and/but nobody else has that mistake. Is there a possibility to debug that dual-z-homing or could I insert some code?
Today I tested twice other versions of the tmc2208stepper-Lib (0.21, 0.25). but nothing changes
Everything goes OK with Marlin 1.1.7. But 1.1.9 has a bug.
I Try it with 1.1.9 with absolutely same configuration.h
, configuration_adv.h
andpins_RAMPS.h
I only must change
#define X_DRIVER_TYPE TMC2208
#define Y_DRIVER_TYPE TMC2208
#define Z_DRIVER_TYPE TMC2208
#define Z2_DRIVER_TYPE TMC2208
#define E0_DRIVER_TYPE TMC2208
Result: with bf1.1.9 it doesnt work, but with 1.1.7 everything is fine and perfect
Tried with 1.1.8 and this is also OK. So only Marlin 2.0, Marlin 1.1.9 and Marlin bugfix 1.1.9 has the problem with DUAL-ENDSTOPS.
may you try to change Z2 input to _ZMAX_
instead of _YMAX_
?
I have tried this last week, but that changes nothing. Did you read that the problem doesn't exist at 1.1.7 and 1.1.8? It is a bug in 1.1.9 AND 2.0
Did you read that the problem doesn't exist at 1.1.7 and 1.1.8
Yes I read it, in version 1.1.9/2.0.x have been changed a lot of things about endstops logic, but as I told you my printer works correctly then it's not a so visible bug, don't you think so?
Try to enable PINS_DEBUGGING
and post the serial log
Hi GMagician, look above the 4th post.
I didn't mean to see M43 echo, but echo while homing
I've been unable to determine what causes this issue so far. Since endstops underwent an overhaul for 1.1.9, maybe @ejtagle can provide more insight.
I have the same problem. Confirmation: works in 1.1.8 but not in 1.1.9
set
#define ENDSTOP_NOISE_THRESHOLD 2
And try again...
Here're the results with actual 1.1.9bugfix and #define ENDSTOP_NOISE_THRESHOLD 2:
Bug still exists.
First try with right side hits first the endstop:
Second try with left side hits first the endstop:
I didn't see any difference in the loggings, but I see that the 1st try goes good and leveled correctly, but the 2nd try didn't hit the right endstop at any time
Did you read that the problem doesn't exist at 1.1.7 and 1.1.8
Yes I read it, in version 1.1.9/2.0.x have been changed a lot of things about endstops logic, but as I told you my printer works correctly then it's not a so visible bug, don't you think so?
hmm. Did you try to "dis"-level the axis, so you can test the two situations:
If this work for your printer with actual 1.1.9bugfix then I give you a beer.
@MarphXL
If this work for your printer with actual 1.1.9bugfix then I give you a beer.
is this valid for version 2.0? 'cause on my printer it works perfectly ;-)
Please enable PINS_DEBUGGING
, then M43 E1
and then G28
and finally post output. This new output should report also endstop detected changes
i only want to print with dual-endstops and tmc2208. if this works on marlin 2.0 i will send you the beer 😀 i tried in the past with 2.0 but it did not work. I will try with m43 e1 today and post results
did you have tmc2208? perhaps that is the reason?
No I don't have tmc2208 but endstops logic is not stepstick dependent (only sensorless home may change behaviours)
Here are the results with M43 E1 and please recognize that the printer doesn't hit the right endstop in the first try (+++ hit left endstop first):
+++ Hit left side first +++++++++++
+++ Hit right side first +++++++++++
Here is a compare of the relevant passage:
btw: I cannot compile actual bugfix 2.0 : Error "filenames are too long" but I cant change them.
Right case is ok, on left It seems endstop trigger comes at homing end....No idea!
I cannot compile actual bugfix 2.0
To compile 2.0.x on Windows will require Arduino 1.9 beta or PlatformIO.
I think that 'right' is what should be expected, while left... there are missing Z2 triggers that appears just too late... can't explain why?
ops wait a moment...is first bump correct and second not or both are not good? I see here that after first bump it raise but endstop Z2 is not released...
left side both are wrong; right side both are good
I want to know what is the difference between your printer and mine? Did you have all Endstops at interrupt-pins?
Well this is my printer:
Marlin 2.0 + mega2560 + ramps 1.4 + drv8825
Interrupts enabled and Z2 uses _YMAX_
I Have MKS Gen V1.4 with TMC2208 on all stepper. I Use Z-Dual-Axis with two Endstops (Z-MIN and Z2-Min). If I do a Z-homing both Z-axis going down. If it hits the Z2_MIN_ENDSTOP first, the Z2-AXIS stops and the Z-AXIS going down till it hits the Z_MIN_ENDSTOP. Perfect! Both sides are leveled.
But if the Printer hits the Z-Min-Endstop first than he stops homing. The Z2-Min-Endstop wasn't hit.
It's reproducable. Everytime! (config-files in Marlin.zip at end of this text)
Could you help and give me a tip what I have misconfigured or missunderstanded?
configuration_adv.h
configuration.h
pins_RAMPS.h
Marlin.zip