-
-
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] IDEX Tool Change - T1 Crash into T0 #26915
Comments
For some additional context, if anyone happens to see this. Here is the debug output with these additional options. From what I can tell, theres nothing setitng wise telling X2 to park in X1. I let it crash into X1 and after a few skips, it zoomed (very fast) to X2 home, then running into the endstop and skipping some more (assuming due to it thinking its position was different)
|
Ill have to go through the config here to see what the trigger is. Ive got IDEX machines running a snapshot from 08-04-23 that does not exhibit this, so at a minimum its not a generic problem that far back. I will probably rebase one of these machines to current bugfix and test there before I dig into youre config tho. |
I appreciate it. If you need me to test something Im happy too. Ive been working on this issue for a few weeks and cant pin it down yet. Ive seen this behavior for awhile, including the stock sovol SV04 which they last updated 2021-09-03. However I just did everything stock and wasn't sure the cause because it was random. |
Hey, just wanted to check and see if you had a chance to take a look at it at all. |
Making my way down the list. Opened a few other PR's today for other items, some of them safety related so they jumped the queue. I got my branch rebased locally but didnt flash it yet. Machine was occupied with parts we need. My most accessible IDEX is also one of my largest machines at 600mm. |
No problem, just wanted to check in. I will also note I noticed today this behavior happens as well when done from the Marlin LCD, move axis menu and switching from E2 back to E1 |
Good thing is the Tenlog is running the same DWIN LCD, and I just finished porting the same landscape code to a portrait setup... Is the SV04 screen 480x272 or 800x480? |
I actually did an overhaul and run a BTT Octopus 1.1 and a BTT TFT 70. But with the TFT 70 it was in Marlin Mode, I haven't tried the BTT TFT firmware yet |
Is youre toolhead actually hitting and crashing? Or just moving to that corner unexpectedly? The video cuts out before it fully stops going to T1 before trying to return to T0 where the report is a crash. It does not show the subsequent call to T0 that should park T1. I tried on my machine without success to reproduce this issue. I tried both with and without TOOLCHANGE_NO_RETURN and could not make the heads crash together. Reading through youre config, I see something odd. #define X1_MAX_POS X_MAX_POS (X_MAX_POS is 288) I believe these are backwards and may be what is causing youre crash. You are telling X1 it is allowed to go beyond where X2 parks. If you want to compare to my config, can review here - |
Closing since this was a misconfiguration issue & not a bug. |
Im looking at it again, but that doesn't make sense to me yet.
"You are telling X1 it is allowed to go beyond where X2 parks" - The X1_Max is 288, anything past that to 365 it would run into X2 carriage, but currently it won’t go past 288. Your settings seem similar to mine from what I can tell, I have a print going right now, but I can record the full length tomorrow. But the behavior is, if the printer is set in T1, and the command is sent to switch to the T0 head, even if parked, T1 X2 carriage move to the left where the T0 X1 carriage is parked, make contact with the X1 Carriage, continues to try and move past it (grinds the belt), then very rapidly goes to the right, assuming trying to park at the X2 max, but because of the belt grinding, thinks its in a different position so it crashes and makes contact with the X2 max pos (365) and tries to move past that. Maybe Im missing something fundamentally, but Ive stared at this for a few hours and haven’t been able to wrap my head around how they would be backwards. |
I don't think this is closed yet unless there's something im not understanding. Apologies if it is |
Ill reopen till we dig don to the bottom of it. I do not have a sovol sv04 to directly compare, I tested on a Tenlog D3 and D6. Ill probably get a Formbot Trex 3 updated this week to check as well. Is there a reason youre using Instead of setting X/Y_MIN? I dont see a reason to use these instead in this configuration. I tweaked the motion limits to be in line with what ive got here. One issue is likely that the overall X_MAX_POS as clamped to the X1 pos which could cause some inconsistent behavior. I adjusted to where you should get the same numbers with the X_MAX_POS equal to the X2_MAX_POS as the settings default to. |
Thank you for your help! Ive replaced both carriages, extruders, and mainboard so its more custom now than it is a sv04. Heres an updated video, it shows everything i mentioned in my last comment For the config, I was having trouble getting a consistent home/probe at the center of the bed. I watched a few tutorial videos and this was the method to use the manual home. If I recall, i commented it out and tried it again but it still behaved the same. Ill recompile and load your adjust config and re try it. Thanks again for looking at it. |
I just flashed the firmware with the adjustments you made, M502 M500, then re-ran the same test in the video, but the result was identical as in the video |
Ok, youre selecting from the menu, I was sending gcode to the terminal. Ill see if the menu does anything different selecting heads and try to reproduce that way next. |
It actually happens from the screen on the terminal with just sending T1. I was just showing it from the screen. Also I don’t see anywhere where the acceleration is set that high for the x2 carriage |
Hey there, Just checking in to see if you where able to find anything? Is there a way to override the default tool change behavior that could just say t1 to x365 etc or something of the sorts as a workaround |
I could not get my machine to reproduce the behavior at all. Chris Pepper was getting the simulator to support IDEX machines, then we should be able to apply youre config directly in the simulator and see what we can get. |
@InsanityAutomation The Simulation of IDEX works, And while Chris was implementing it he did trigger this issue |
I knew he got it working but didnt see he triggered this issue. Ill get his config that triggered it this weekend. Machine runoff today, ships Wed so hopefully light at the end of the tunnel here... |
No worries, let me know if theirs anything I can test |
This was only vaguely reproduced (T1 crashing into T0 when switching) due to a problem with the X_MAX endstop, the problem being that I didn't plug one into the virtual printer.., I've only ran the sim with a mostly default IDEX config, but currently it seems to be working properly. |
Ill check again and post the output but the XMAX was being triggered according to the debug pins. Posting my current configs if needed |
Just checking in to see if we where able to make any progress on this |
Hey all just wanted to provide an update. I looked through some version of SV04 builds to see what bugfix branch I attached a link to the old bugfix files and pasted the prior and current debug output bellow of when the crash occurred `Old Debug Output - Crash Send: T1 D
Send: T0 D
New Debug Output - No Crash Send: T1
Send: T0
|
Did you test the latest
bugfix-2.1.x
code?Yes, and the problem still exists.
Bug Description
On an IDEX set up, after switching active extruder from T0 to T1, T0 parks to the endstop, but mumps out a few mm from the max, taking some space away from T1. If the tool is changed back to T0 while set as T1, it causes T1 to try and park (presumably) at the T0 position, causing T1 to crash into T0. I
Bug Timeline
Year +, Noticed it on stock SV04 firmware, coudnt pin it down
Expected behavior
T1 park at the X2 Max position, When T0 or T1 parks, it parks at the max and doesnt bump out a few mm
Actual behavior
T1 crashes into T0
Steps to Reproduce
Home T0
Set T1
Set tool to T0
Version of Marlin Firmware
bugfix-2.1.x 2024-03-25
Printer model
SV04 Modified
Electronics
BTT Octopus V1.1
LCD/Controller
BTT
Other add-ons
No response
Bed Leveling
ABL Bilinear mesh
Your Slicer
Cura
Host Software
OctoPrint
Don't forget to include
Configuration.h
andConfiguration_adv.h
.Additional information & file uploads
Debug output during movements/collision bellow, video of the movements on the google drive link. In the video, the steps are G28, T1 (T0 parks and bumps out), set tool back to T0
Archive.zip
https://drive.google.com/file/d/1s2DzKM3vYhYLTyX_1aTZmSLBmtcjejQs/view?usp=sharing
The text was updated successfully, but these errors were encountered: