Duet Maestro Freefall
-
@wilriker The bed crash is caused when the z is driven into an immovable object like the hot end and stalls out. This is, presumably, triggering a fault of some sort and the user theory on the M3D discord is that a mosfet disconnects the motor connection and lets it freewheel.
I'm not electrically savvy enough to know if this is what's going on. I'm pretty good with config files but when we get into esoteric electrical properties I get lost!
-
@leonmf said in Duet Maestro Freefall:
@wilriker The bed crash is caused when the z is driven into an immovable object like the hot end and stalls out. This is, presumably, triggering a fault of some sort and the user theory on the M3D discord is that a mosfet disconnects the motor connection and lets it freewheel.
I'm not electrically savvy enough to know if this is what's going on. I'm pretty good with config files but when we get into esoteric electrical properties I get lost!
That might be the intent, but the behaviour on the videos isn't free-wheeling - that's being driven fast away from the hot end. Free wheeling would be like you get when switching the power off. As I said earlier, somewhere there is a command to drive Z at high speed away from the hot end. Maybe it's trying to home to Z max but the Z max stop isn't triggering.
-
I am just wondering if it maybe caused by those deploy retract files Remember when lots of people had strange CoreXY Movement behaviour at the time of a particular change and the release notes at that time did say to delete them.
IMHO you have nothing to lose by deleting them and trying again.
Doug
PS I have to agree with Ian and David that bed is being driven at high speed in the Positive Z Direction.
-
@dougal1957 said in Duet Maestro Freefall:
I am just wondering if it maybe caused by those deploy retract files Remember when lots of people had strange CoreXY Movement behaviour at the time of a particular change and the release notes at that time did say to delete them.
IMHO you have nothing to lose by deleting them and trying again.
Doug
Good call Doug.
-
I'm at work and can't test right now but I'm 99% positive that the bed isn't being driven down in the crash situation. I'll try to do some testing tonight.
-
@leonmf said in Duet Maestro Freefall:
I'm at work and can't test right now but I'm 99% positive that the bed isn't being driven down in the crash situation. I'll try to do some testing tonight.
Well whatever. How do you explain that it drops faster in the second two videos with power applied, than it does with no power to the steppers as in the first video?
-
@leonmf said in Duet Maestro Freefall:
@wilriker The bed crash is caused when the z is driven into an immovable object like the hot end and stalls out.
I'm sorry, I was not clear enough: I wanted to know which action you had to take that led to your third video. What did you command to printer to do? Home Z? Bed leveling? Start a print? You must have done something so that the printer started moving and eventually this led to the crash. I want to know what was the last thing you did. This information is required to narrow down where to search for the problem.
Re being driven: At least in the third video you linked I can hear the motors and as Ian already pointed out (and you also said somewhere above) it is much too fast to be only due to gravity.
-
@wilriker I'll do a test to confirm free-fall vs driven tonight.
To make this happen, I stalled the motor by jogging the bed up into the nozzle slowly until it stalled and exhibited the crash behavior.
-
Slow motion video with object on bed showing that we're not moving faster than unassisted freefall:
https://youtu.be/c3VssMlqBgU -
I learned that the free fall is temporary and that the steppers stay enabled on the bed crash scenario.
-
@leonmf That is a really strange behavior...
Meanwhile I "inlined" your
config.g
for better overview of everything that is defined in there and I will append it below. Next up is looking if there is anything strange in there.; CONFIGURATION FILE for Duet Maestro ; K'Tana Nozzle ; Executed by the firmware on start-up ; Headers within parenthesis are headings in Duet3D documentation=https://duet3d.com/wiki/Configuring_RepRapFirmware_for_a_Cartesian_printer ; Visit https://reprap.org/wiki/G-code for an explanation of G-code commands ; --- SECTION: GENERAL PREFERENCES ( ) --- M564 S1 H1 ; Enables Homing Requirement For Motor Activation and set axes limits ; --- SECTION: Z-PROBE & MESH COMPENSATION --- M558 P4 I1 X0 Y0 Z1 H5 F100 T5000 ; Set Z probe type -- Enable LIMIT SWITCH G31 P999 X-52 Y30 Z3.38 ; Set Z probe (limit switch) trigger value, offset M557 X0:325 Y30:380 S30 ; Define heightmap mesh M376 H25 ; Define height(mm) over which to taper off heightmap compensation G29 S1 ; Load heightmap after power cycle ; --- SECTION: DRIVES (MOVEMENT SECTION) & ENDSTOPS --- M667 S1 ; Enable coreXY mode M569 P0 S0 ; Drive 0 goes forwards, CoreXY_1 M569 P1 S1 ; Drive 1 goes forwards, CoreXY_2 M569 P2 S1 ; Drive 2 goes forwards, Z Motor M569 P3 S0 ; Drive 3 goes forwards, Left Extruder M569 P4 S1 ; Drive 4 goes forwards, Right Extruder M574 X2 Y2 Z2 S0 ; Set xy end-stops types (S0 is active low, applied to XY) M906 X680 Y680 Z600 E400:400 I60 ; Set motor currents (mA) and idle current percentage M201 X2000 Y2000 Z75 E150:150 ; accleration M203 X9000 Y9000 Z2300 E5000:5000 ; velocity M566 X350 Y350 Z50 E60:60 ; jerk M208 X0 Y0 Z-0.5 S1 ; Set axis minima M208 X383 Y388 Z377 S0 ; Set axis maxima M92 X79.8 Y79.8 Z282.6961 ; Set axis steps/mm M350 X32 Y32 Z32 ; Setting microstepping to 1/32. M92 E180.4:180.4 ; Extruder Steps/mm M350 E128:128 ; Setting microstepping to 1/128. G21 ; Work in millimetres G90 ; Set to absolute coordinates... M84 S1 ; Set idle timeout ; --- SECTION: HEATERS, BED & THERMISTOR --- ; H0 is bed ; H1 is left heater ; H2 is right heater M570 H0 P25 T30 ; Allow heater to be off by as much as 30C for 25 seconds M570 H1 P15 T30 ; Allow heater to be off by as much as 30C for 15 seconds M570 H2 P15 T30 ; Allow heater to be off by as much as 30C for 15 seconds M305 P0 T100000 B4138 C0 R2200 ; Set thermistor + ADC parameters for heater 0, For heated Bed thermistor M305 P1 X501 R2200 ; Define left side extruder PT1000 M305 P2 X502 R2200 ; Define right side extruder PT1000 M307 H0 A78.9 C265.2 D9.5 S1.00 V24.0 B0 ; Forcing heated bed PID control after power-cycle. Basic bed heating auto-tune M307 H1 A309 C96 D5.2 S0.75 V24.1 B0 ; Set PID values use M303 auto-tune calibration settings M307 H2 A309 C96 D5.2 S0.75 V24.1 B0 ; Set PID values use M303 auto-tune calibration settings M302 P1 ; Allow Cold extrudes M143 H0 S120 ; Set maximum bed temperature to 120 C M143 H1 S320 ; Set maximum heater temperature to 320C for hot end 1 M143 H2 S320 ; Set maximum heater temperature to 320C for hot end 2 ; --- SECTION: FANS ( ) --- M106 P0 S0 I0 F4 H-1 L0.3 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off, Minimum fan value 0.3, Speed 100% ; M106 P1 S0 I0 F4 H-1 L0.3 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off, Minimum fan value 0.3, Speed 100% M106 P1 H1:2 ; LEG - Enable thermostatic mode for fan 1 using heaters 1 and 2 M106 P2 S0 I0 F4 H-1 L0.3 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off, Minimum fan value 0.3, Speed 100% ; --- SECTION: TOOLS ( ) --- ; Comment: Remember! H0 is the heated bed! ; Comment: D0 is the first driver after movement (X, Y and Z) drives, which is left extruder ; D1 is right extruder ; K'tana Tools ; Left Nozzle T0 M563 P0 D0 H1 F2 S"Ktana Single Left" ; Define tool 0, left side tool (single extruder) G10 P0 X0.0 Y0 Z0 ; Tool 0, set axis offsets G10 P0 S0 R0 ; Tool 0, set active (S0) and standy temp (R) of 0 ; Right Nozzle T1 M563 P1 D1 H2 F2 S"Ktana Single Right" ; Define tool 0, right side tool (single extruder) G10 P1 X12 Y0 Z0 ; Tool 0, set axis offsets G10 P1 S0 R0 ; Tool 0, set active (S0) & standy temp (R) of 0. T0 ; Automatic tool select ; --- SECTION: NETWORKS (PROLOGUE & COMMUNCATIONS SECTION) --- M111 S0 ; Debugging off M550 PPromega ; Set machine name, type promega/ in your browser! M586 P0 S1 ; Enable HTTP M586 P1 S0 ; Disable FTP M586 P2 S0 ; Disable Telnet ; --- SECTION: MISCELLANEOUS --- M572 D0:1 S0.07 ; Extruder Pressure Advance
-
Please can you try changing the Z driver mode from stealthchop2 to spread cycle. Assuming the Z motors are wired to the Z driver output(s), you can do this by sending the following commands:
- Send M569 P2. It should report that the driver mode is stealthChop.
- Send M569 P2 D2.
- Send M569 P2 again. It should report that the driver mode is spreadCycle.
Then test whether the problem still occurs.
We've had some issues reported recently when stealthchop mode is used at high speeds, and I am wondering whether this is another one.
-
@dc42 That did it. It sounds like a printer full of angry snakes at idle now but the bed no longer crashes.
-
@leonmf You can get these snakes under control by following the guide to Reducing Stand-still Noise.
-
@dc42 said in Duet Maestro Freefall:
M569 P2 D2
Also, thank you everyone for the help. You've helped a whole community of users who were struggling with this issue!
-
@wilriker Thank you! I will try that as soon as I can!
-
Or you can wait to get old. My printer is almost quiet, I just need few more years
-
I'm glad that worked. I am preparing a new release that switches from stealthchop to spread cycle at higher speeds, which may be part of a better solution.
-
PS - one way of reducing idle motor noise on the Maestro in spread cycle mode may be to use the M917 command to reduce the motor standstill current from its default of 75%, e.g. M917 Z40.
-
@sigxcpu said in Duet Maestro Freefall:
Or you can wait to get old. My printer is almost quiet, I just need few more years
Like it (and I know the feeling).