Need Help For My DuetWiFi's First Test Print
-
You are using G32 to probe the bed in your slicer start code. G32 runs macro file bed.g. What commands do you have in bed.g ?
-
; bed.g
; called to perform automatic bed compensation via G32G28 ;home all
G91 ;relative mode
G1 Z4 F200 ;move Z up 4mm for clearence
G90 ;absolute mode
M401 ;lower probe
G29 S2 ;clear bed compensation
G29 ;run auto bed mesh level
M402 ;retract probe
G1 X10 Y100 F5000 -
I can't see anything obviously wrong. What happens if you manually execute the commands in your slicer start gcode, one at a time?
-
I rams the bed at G1 Z0.0 F1000, even though that's a different position to the place it rammed it on my test print (far right).
I haven't continued with the process for fear of ramming the bed again.
My hotend Z offset is: M307 H1 A250 C140 D5.3 B0 S1
Whereas it was originally 0.9. I found that every time I did the Z0 calibration, the nozzle would always return to 5.4mm above the bed. Even if I set the physical height to 0.1, then told it to recognise it as Z0, then save it, it still would return to Z5.4 as Z0.
Maybe I've done the Z0 calibration wrong and used the wrong setting to get it there…
-
You can reduce the motor current during testing.
It sounds to me that your Z=0 height setting is not quite correct. This probably means that the trigger height of the probe is less than you have set it in config.g (it's the Z parameter in the G31 command). Have you measured the trigger height, as described here https://duet3d.com/wiki/Using_mesh_bed_compensation#Checking_the_trigger_height ?
Why are you moving the head to Z=0 anyway?
-
I rams the bed at G1 Z0.0 F1000, even though that's a different position to the place it rammed it on my test print (far right).
I haven't continued with the process for fear of ramming the bed again.
My hotend Z offset is: M307 H1 A250 C140 D5.3 B0 S1
Whereas it was originally 0.9. I found that every time I did the Z0 calibration, the nozzle would always return to 5.4mm above the bed. Even if I set the physical height to 0.1, then told it to recognise it as Z0, then save it, it still would return to Z5.4 as Z0.
Maybe I've done the Z0 calibration wrong and used the wrong setting to get it there…
M307 doesn't set the z height. What you show is the hotend heater setting.
-
You can reduce the motor current during testing.
It sounds to me that your Z=0 height setting is not quite correct. This probably means that the trigger height of the probe is less than you have set it in config.g (it's the Z parameter in the G31 command). Have you measured the trigger height, as described here https://duet3d.com/wiki/Using_mesh_bed_compensation#Checking_the_trigger_height ?
Why are you moving the head to Z=0 anyway?
I was moving the nozzle down to Z0 because I wanted to make sure Z0 meant the nozzle was no higher than 0.1mm off the bed when printing.
When I follow the Trigger Height steps through and get to Step 8, it rams the bed indefinitely: G30 S-1
Here's what I think is fundamentally wrong with the process: When I move the nozzle down to 0.1mm (paper thickness) in Step 5, it naturally triggers the BLT and it goes into Alarm Mode. Then in Step 6 I command G92 Z0 to set the Z=0. Step 7 moves the nozzle up 5mm with G1 Z5, but doesn't deploy the BLT, or release it from alarm mode. But seeing that I've told the printer what height Z0 is 5 seconds ago, it should remember. In Step 8, it doesn't remember anything about the physical height I just associated with Z0 and indefinitely rams the bed. It could ram it at say Z-5mm, or some other physical measurement, but I'm not will for the printer to cave in to find out exactly where it's going.
So between Step 5 and 8, there's no success in recording the Z height, saving the Z height, and testing it.
I've also done this process with an Auto Home prior to the trigger height calibration, moving the nozzle up to G1 Z15 in Step 7, forcing the BLT to deploy with M280 P3 S10 I1, then running Step 8 to see if the BLT is required to establish the Z0 calibration. What it does this time is trigger the BLT to Alarm Mode again, but gives me a trigger height of 4.409, or 4.41. I then put this into the Endstop setting (as seen below). Then I reset the alarm, do and Auto Home again, then run G1 Z0, it moves down to the paper thickness height I set early.
I'm still not convinced I've done this correctly seeing that I didn't follow the wiki process precisely. I also noticed that it doesn't consider the BLT, so maybe I'm looking at the wrong process for this…
; Endstops
M574 X1 Y1 Z1 S0 ; Define active low and unused microswitches
M558 P5 X0 Y0 Z1 H5 F200 T6000 ; Set Z probe type to modulated, the axes for which it is used and the probe + travel speeds
G31 X-48 Y18 Z4.41 P50 ; Set Z probe trigger value, offset and trigger height; Z-offset. Higher value LOWER nozzle height
; Lower value RAISE nozzle height -
What probe are you using? You have your Z offset set to 4.5mm
G31 X-48 Y18 Z4.5 P50
Is the probe really 4.5mm above the nozzle tip? If not, that's probably why it is crashing.
My BLTouch offset is only 1.5mm. -
I don't use BLT, but from what I have read by people who do, I don't think it should be going into alarm mode, except perhaps if you deploy it when it is too low.
-
What probe are you using? You have your Z offset set to 4.5mm
G31 X-48 Y18 Z4.5 P50
Is the probe really 4.5mm above the nozzle tip? If not, that's probably why it is crashing.
My BLTouch offset is only 1.5mm.BLTouch. I've managed to use the trigger height calibration wiki properly by inserting a higher Z setting and BLT pin release in Step 7. The BLT trigger height has to be set to 4.41, or there about, with the ANTCLABS proprietary BLT mount because it's the lead time required for triggering and nozzle height. Proximity or IR sensors simply don't require this much lead time. Retracting the nozzle by 5mm is enough to disengage these sensors but the BLT requires about 10mm or 15mm to be safe.
Like I said, I got it triggering properly and lowering to 0.1mm, but I had to improvise with the BLT pin release requirements.
I don't use BLT, but from what I have read by people who do, I don't think it should be going into alarm mode, except perhaps if you deploy it when it is too low.
What do people use for the the Z end stop then? Just about everyone who owns a Tevo converts from the standard limit sensors to BLTs, and a number of people are already using them for the Duet.
With the Marlin/MKS set up, when you do an Auto Home it finds X, Y, then Z, but when it finds Z it probes twice, releasing the pin between each of the two probes, then raises the nozzle to G1 Z10 or similar, giving the BLT probe space to trigger next time it nears the board. This separates Marlin/MKS from RepRap/Duet, because it's ready for future commands, and respects the prerequisite of the BLT. The Duet probes Z during the Auto Home, but after the BLT pin is triggered it continues to lower to a random Z height - it's not Z0, only a few millimetres above the bed, but it doesn't move back up to a height that respects the BLT for future commands or movements. I'm not sure where it's getting this measurement from - pin trigger, continue Xmm, stop. Why? This is where step-by-step process in the Duet wiki doesn't work for BLT Z test, because the BLT has to be released and precede the nozzle, unlike proximity sensors that can be set at the nozzle height or slightly above. That's why Step 7 works for these sensors and not the BLT. 1) Because the BLT isn't raised high enough, and 2) the BLT pin isn't released before running Step 8 for a trigger height value. That's the BLT update that should be included in the wiki for BLT users. Step 7 just has to say G1 Z15 for everyone, and BLT users add M280 P3 S10 I1. Then Step 8.
*Once I had established my trigger height was 4.41, there was no instruction on where to put that information as a new user. I derived that I had to go into the config.g, find the EndStop section, and change G31 X-48 Y18 Zx.xx P50 to G31 X-48 Y18 Z4.41 P50, assuming that's what I'm supposed to do. I only figured that out because the creator of the config.g file had created a comment specifying the Z setting in this line was the official Z trigger height setting.
The good thing is if I do an Auto Home directly follow an Auto Home, the RepRap/Duet does move the nozzle and BLT up a little so the BLT has enough height to trigger for the next Auto Home. Otherwise it would Auto Home too low to the bed and not be able to trigger the pin, or run straight into alarm mode, or ram the bed.
-
Ok, so you need to raise the BLT more between probing. The Duet homing files let you define the homing sequence yourself, so this is easily done. To raise it after Z homing, just put a G1 Zxxx command after the G30 commands in homez.g and homeall.g, where xxx is a suitable height.
To ensure that the head moves upwards sufficiently between probing when running G29 or G31, increase the H (dive height) parameter in the M558 command.
-
Ok, so you need to raise the BLT more between probing. The Duet homing files let you define the homing sequence yourself, so this is easily done. To raise it after Z homing, just put a G1 Zxxx command after the G30 commands in homez.g and homeall.g, where xxx is a suitable height.
To ensure that the head moves upwards sufficiently between probing when running G29 or G31, increase the H (dive height) parameter in the M558 command.
Ah, fantastic. Thanks very much for your help!