disable "standby current" during print
-
could the daemon.g used for that? with a if statement?
-
@arhi said in disable "standby current" during print:
is there a way to disable motors going to standby current during print other then changing the M906 value in "print_stop" and "print_start" scripts?
Unders what conditions would they be going to standby while printing?
Frederick
-
@fcwilt said in disable "standby current" during print:
Unders what conditions would they be going to standby while printing?
Z - easily, this we had issues with before (solved with 10x2 acme thread), if your layer last long enough and you do not use Z-hop the Z motors will go to idle as they are not moving for a long time.
XY - not that simple but if you are printing slow enough and on big enough table and only one axis the other axis can go to idle (seems to be experiencing that on 50cm bed going from side to side on slow Y axis the X axis motor go to idle current)
I'm not sure what the actual timing data for going to idle is but this is some observed behavior
Frederick
-
@arhi One would like to think that during a print, none of the motors would switch to idle current. But if that is indeed the true behaviour then why would it necessarily be a problem? The idle hold current should be set high enough so that no axis can get out of position by some inadvertent external force and I don't see any difference between the machine just sitting there having been homed, and during a print. Or have I misunderstood something?
-
@deckingman said in disable "standby current" during print:
@arhi One would like to think that during a print, none of the motors would switch to idle current.
That was my initial assumption too but observed behavior ... I might be wrong and the culprit is something else but for Z I think we pretty much proved the case
But if that is kindeed the true behaviour then why would it necessarily be a problem? The idle hold current should be set high enough so that no axis can get out of position by some inadvertent external force and I don't see any difference between the machine just sitting there having been homed, and during a print. Or have I misunderstood something?
In ideal case, yes; but ... it's about debugging now, the machine is behaving "wrong", it's rather easy to just remove the idle with M906 but I was looking for maybe simpler testing solution... ideally something that would notify that driver "would now go to idle but is not"
-
original issue was that printer was losing Z height and 2 motors were going out of sync ... we found out that during long layer print Z motors go to idle and current was "just on the limit" and vibration of the printer would allow X assembly to fall down (differently by left and right motor) ... first patched by removing idle current and then solved by using 10x2 acme so that lower current is enough to hold the X gantry and prevent Z motors from shaking loose ... now it looks there's a similar issue with X, the X position seems to be "tensioned" bit too much over idle current of the motors... but we are not sure so debugging..
-
Oddly the documentation talks of the printer being idle, not individual motors.
It does say the the idle setting should be high enough for the motors to hold position.
Perhaps that is the simple solution.
Frederick
-
@fcwilt said in disable "standby current" during print:
It does say the the idle setting should be high enough for the motors to hold position.
yes but looks like we have some edge situation here... it is "maybe" this, and maybe some completely different reason for the problems we are experiencing... as I said we are still debugging ... the thing is we print a 50x50x10cm cube and in Y it is good and in X we have a step, first 5mm is ok and the we have ~5mm slip "inwards" so the object pulls 5mm from left and from right, like at the end of the travel (where it is "tight" and motor need a bit more torque) motor skips steps ....
-
From DC42
There are two distinct things here: (a) standstill current, which applies only to TMC5160, TMC2209 and TMC2224 drivers (so Duet 3 and Maestro); and (b) idle current.
Standstill current defaults to 70% but can be changed by M917. It cuts in very quickly, in less than a second. At low currents it can be increased to 100% nif necessary. At maximum rated current it is limited to 71%.
Idle current kicks in when all motors have been idle for the idle time (default 30 seconds) and defaults to 30%.
idle current often needs to be increased (e.g. to 60%) on deltas. Standstill current rarely needs to be increased.You don't mention which Duet board/firmware you're using in this instance.
What values are you using for M906, M913, M917, M84 S, etc?
-
@Phaedrux said in disable "standby current" during print:
From DC42
Idle current kicks in when all motors have been idle for the idle time (default 30 seconds) and defaults to 30%.
I think the "all motors" in DC's comment is significant and makes sense. I read that as during a print, every single motor would need to be idle for>30 secs for idle hold to kick in. Not, as @arhi surmised, just (say) the Z motor.
-
This is weird, during the print never happens that "all motors" are sitting still and this is duet2 board so TMC2660 .... this does not follow our observations but since I'm sure dc knows what he's talking about the obvious solution is that our observation is faulty that lead to the wrong conclusion(s).
What I'd guess now is that our "live" current is too low.