-
Notifications
You must be signed in to change notification settings - Fork 734
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hardware endstop don't work #1075
Comments
You are using the end stops wrong. You have added them as motor end stop here: You already defined them as axis end stop here: The motor end stops defined in drivers are for mirrored motors with multiple end stops. but with the pushing nature of the hardware end stops I wonder if that caused some different logic. |
Probably forgot to remove it because I was trying to figure out why it's not working. The X doesn't trigger if the carriage comes from a distant from the endstop. if the X is sitting on the endstop and does a home it is ok. I really wanted to use the interrupt driven endstop but it's not working. I even tried to recreate the template code for endstop to check if I can attach an interrupt using the lambda method and it does work I can toggle a LED when I manually trigger the endstops.
It seems when the motor are in motion for a period of time that it doesn't recognize the endstops anymore. I have this on my configuration.h #define NO_MOTOR_ENDSTOPS so the motor endstops are ignored. |
I tested it on my printer and the hardware end stops worked. But during normal moves they are only checked if ALWAYS_CHECK_ENDSTOPS is enabled. Otherwise they will be ignored. Were you testing only with homing or also regular moves? Distance should not matter for homing - it is only one move with 150% of size. |
When the X is at home, it retest and works but the y and z doesn't. What I mean by distance is if the X is far from home and home axes is issued it fails 100%. I'll investigate it some more why it fails next week. It seems the interrupt somehow don't get attached or detached when moving or noisy wires not sure yet but the software endstop is working 100% so the lines are probably clean. |
Software end stops are only tested every x stepper steps while hardware end stops are tested continuously. So if you suffer cross talk the hardware end stop will much more likely trigger than the software end stop. Debug value 64 can be used to debug end stops. So send M111 S70 and you will see in log when and if end stop triggers. In case of cross talk it will do the back move not at the end but then it will do it. With SAFE_HOMING 1 it should then fail since it will not trigger again fast enough. With SAFE_HOMING 0 it will just stop at wrong position. |
Board: Due board.
Configuration.h
Configuration_io.h
I tested the pins if they do fire interrupts by including this on the main.cpp and blinking an LED and it does blink an LED.
Before commit b578234 only the X get triggered and it just crash on the Y.
Software endstop works ok.
The text was updated successfully, but these errors were encountered: