-
-
Notifications
You must be signed in to change notification settings - Fork 19.3k
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
[BUG] SKR Pro and BLTouch not working properly with bugfixes since about 5/9/2020 #18372
Comments
So this worked for you with bugfix from May 9th, but fails with current bugfix? I assumed this was going to be a deploy issue that I could debug on my desk. Unfortunately I don't have my Pro in a printer I can try actual printing with. |
It worked for me with YOUR branch as of 5/9/20 as the bugfix from that timeframe was boot looping. :) I have been running your branch from your PR that is on hold up until the last 2 days when I tried the most recent bugfix (which doesn't boot loop and seems to use the EEPROM just fine). Unfortunately it has some weird issue with BLTouch. William |
what is the weird issue with BL touch? |
@boelle :) As written in the description: With the recent versions of Bugfix (my last version was from 5/9/2020) the BLTouch probe on my SKR Pro randomly deploys during prints despite the G29 probing working without a hitch. With the most recent BugFix versions (and also recent platformIO STM32 6.1.1 updates) the G29 completes, then Octoprint either throws an error that something on the printer has failed requiring an M999 to reset followed by the printer cooling down and just sitting there waiting for another attempt to print or it doesn't throw the visible error in OctoPrint and instead the printer simply stops moving immediately after the G29 and OctoPrint acts like its printing yet no movement happens. This requires me to reset the printer and try again (which never works as the cycle continues). |
@viper93458 does this happen on every print or only sometimes? |
Every print as of the date of opening this issue. I reverted back to your PR version from here: #17970 to resolve for the time being. |
Maybe tagging this as needing help will draw some attention to it from other users with similar configurations. |
I have homing problem for now, but I will test SKR PRO with BLTOUCH if needed once my printer is back :-) |
I have not got these BLtouch issues on my SKR Pro, but I'm also using UBL @sjasonsmith |
I used to have similar issues on my SKR Pro with BLTouch whenever In your config I see you are using #if ANY(BLINKM, RGB_LED, RGBW_LED, PCA9632, PCA9533, NEOPIXEL_LED)
#define PRINTER_EVENT_LEDS
#endif Could you please test if you still see the same issues with your |
That's the same recommendation that was made in another thread about bltouch issues a while back which I tried without success. I will give it another go along with the latest bugfix to see if there is any change and report back. Thanks! |
@viper93458 Try disabling/ commenting out I also had failures if I enabled As far as I can tell the outright failure with |
@Dracrius Thanks. I will compile and test it now! |
Adaptive step smoothing is causing issues migrating to the new STM32 libs as well maybe once this pr #18496 comes to fruition it will solve this as well. |
Disabling the adaptive smoothing and using the latest bugfix 2.0 from the last couple hours seems to work OK. My BLTouch isn't causing the printer to hang or crash at the start of a print and I haven't heard any random deployments where the pin hits the glass yet. :) As there are other BLTouch related tickets open, perhaps this one is no longer needed and can be closed in favor of some of the others where deeeper troubleshooting is going on? |
@viper93458 happy to hear it solved your issues! |
@viper93458 let's leave it open for a bit. Keep using it like this for a while to be sure the problems really seem gone. Right now it looks like multiple issues may all be related to ADAPTIVE_STEP_SMOOTHING causing too many high-priority step interrupts. We've only just started to solidify around this idea, so continuing to collect some more data will be helpful. It is worth noting that on all STM32 devices servo control is done through software, not directly through a timer output. That interrupt is almost certainly lower priority than the step interrupt. If it is starved out by step interrupts the PWM output signal would be corrupted and could cause undefined behavior. |
Sounds like a plan. Thanks to all for helping and working to hopefully find the root cause and squash the troubles. William |
At least for the SKR PROs a hardware PWMd servo output on PA1 would be possible. Up to now i could not find any board with a suitable pin for a hardware_tone() - but i scanned only that i own. |
To add to this: After turning off ADAPTIVE_STEP_SMOOTHING, this also helped on my printer.
Was having at least one probe failure on most mesh passes. Would occasionally get one clean, but usually I'd have passes with at least one if not two near-crashes into the bed. To help with this, these settings seemed to fix so much (along with turning off step smoothing after the recommendations above): Configuration.h: Configuration_Adv.h:
I do not have MULTIPLE_PROBING turned on, but I've seen it nearly error (flashes), but then it slowly raises Z, reprobes, gets a good sensor reading and moves on. I have now had about six passes in a row, seriously dialing in the leveling, and haven't a full on "Kill Stop" error hit. Also of note: VSCode/PlatformIO just pushed updates to STM32 builds. Not sure if that also might have aided or not. |
@DoughyInTheMiddle a fix was merged about a week ago for boards such as your SKR Mini, which use As for this issue, I'd like to keep it open to track the same BLTouch reliability issues on boards using |
These problems aren't as easy to observe as they are on the STM32F1 controllers, probably because there is just more available CPU time on these boards. You would probably have probe accuracy issues if probing with just the right feed rate, but I haven't tried to find something to reproduce this. Instead, I am watching the Servo PWM output while performing arc movements. Arcs are an easy way to generate a gradient of step frequencies with a single line of gcode. I'm triggering on probes that are outside of range for the the 1473µs "Stow" command. 1453-1493µs should be acceptable, but I am seeing all the way to 1420-1520µs in my simple tests. It looks like the STEP ISR is saturating the CPU for periods of time, completely blocking TEMP and SERVO ISRs from running. Under the right conditions it could be feasible to block the SERVO ISR for a very long time, enough to happen upon another command causing BLTouch misbehaviors. |
@viper93458 can you make your system fail reliably enough to test the pull request linked above? |
The PR I posted should resolve these issues with random BLTouch behaviors for all boards using HAL/STM32, which includes the SKR Pro, GTR, FYSETC S6, etc. These problems were mostly exposed by If you have |
@sjasonsmith I have adaptive_step_smoothing turned off with current bugfix code. Am I to turn it back on and use current code with the PR or go back to a random broken version with adaptive_step_smoothing on and test? I will have to determine how to go back to an older version if I need to roll back first. |
@viper93458 if you want to test it needs to be from my branch on the PR #18702. If your only problems with ADAPTIVE_STEP_SMOOTHING were BLTouch problems then it would be good to test with it enabled. Right now I would generally not recommend step smoothing due to it consuming all available CPU time. In this case it is helpful because it helps reproduce the BLTouch problems. |
@viper93458 any update on this? If not I'm going to assume this is resolved. |
@sjasonsmith I am using current bugfix code and it works fine at this point. I do have adaptive step smoothing off still and haven't retested with it on. So as far as I am concerned this can be closed at this time. I know there was discussion going on here regarding other things to check so I left it be, but we may as well close it and see what happens when you new PR for STM32 8 is merged. :) |
@viper93458 as far as I know that PR is working fine on SKR Pro right now. Feel free to try it and report back if you encounter issues. |
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Bug Description
With the recent versions of Bugfix (my last version was from 5/9/2020) the BLTouch probe on my SKR Pro randomly deploys during prints despite the G29 probing working without a hitch.
With the most recent BugFix versions (and also recent platformIO STM32 6.1.1 updates) the G29 completes, then Octoprint either throws an error that something on the printer has failed requiring an M999 to reset followed by the printer cooling down and just sitting there waiting for another attempt to print or it doesn't throw the visible error in OctoPrint and instead the printer simply stops moving immediately after the G29 and OctoPrint acts like its printing yet no movement happens. This requires me to reset the printer and try again (which never works as the cycle continues).
My Configurations
Configs.zip
Steps to Reproduce
Expected behavior: [What you expect to happen]
Naturally I expect it to print. :)
Actual behavior: [What actually happens]
G29 completes and printer either throws error and cools down or simply stops moving.
Additional Information
Thanks for all the hard work on this wonderful firmware!
The text was updated successfully, but these errors were encountered: