Duet homing changes!
-
Hi all,
After turning the Anycubic Kossel + with Duet controller on, and pressing 'Home' on the display, all is as it should be, with the head moving down 2mm off the switches.
Pressing 'Home' again and it goes through the same homing routine but moves down about 7mm. Repeating homing does the same thing.
After power on, only the first time homing is always as it should be (2mm down from the limit switches).
This screws up the bed height when starting a print because it wants to dive into the bed!
Any ideas why it is doing this please? -
Are you mixing absolute and relative moves? Please share the home config file(s)
-
Can you post your config.g and homedelta.g so we can see what it's doing? Maybe homedelta.g is loading mesh compensation or other delta compensation after homing, or endstop offsets.
Ian
-
homedelta.g
; called to home all towers on a delta printer
;
; generated by RepRapFirmware Configuration Tool on Mon Nov 05 2018 17:21:40 GMT+0000 (Greenwich Mean Time)
G91 ; relative positioning
;*** Slow homing has been configured. Change F240 to F2400 below when your configuration is working
G1 X340 Y340 Z340 F2400 S1 ; move all towers to the high end stopping at the endstops (first pass)
G1 X-3 Y-3 Z-3 F1000 S2 ; go down a few mm was -3, -3, -3 and F2400
G1 X10 Y10 Z10 F140 S1 ; reduced from 240
; move all towers up once more (second pass)G1 X-2 Y-2 Z-2 F2400 ; move down a few mm so that the nozzle can be centred
G90 ; absolute positioning
G1 X0 Y0 F2400 ; move X+Y to the centre
G29 S1 ; load previously saved bed calibration file
; Configuration file for Duet Ethernet (firmware version 1.21)
; executed by the firmware on start-up;
; generated by RepRapFirmware Configuration Tool on Mon Nov 05 2018 17:21:40 GMT+0000 (Greenwich Mean Time)
; General preferences
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder moves
;*** The homed height is deliberately set too high in the following - you will adjust it during calibration.
M665 R134.311 L266.6 B120 H298 ; Set delta radius, diagonal rod length, printable radius and homed height - rod was 267
M666 X-0.15 Y0.21 Z-0.06 ; Put your endstop adjustments here, or let auto calibration find them
; Network
M550 PAnycubic KL-plus ; Set machine name
M540 PBE:EF:DE:AD:FE:ED ; Set custom MAC address
M552 P192.168.2.77 S1 ; Enable network and set IP address
M553 P255.255.255.0 ; Set netmask
M554 P192.168.1.254 ; Set gateway
M586 P0 S1 ; Enable HTTP
M586 P1 S0 ; Disable FTP
M586 P2 S0 ; Disable Telnet
; Drives
M569 P0 S1 ; Drive 0 goes forwards
M569 P1 S1 ; Drive 1 goes forwards
M569 P2 S1 ; Drive 2 goes forwards
M569 P3 S1 ; Drive 3 goes forwards
M350 X16 Y16 Z16 E16 I0 ; Configure microstepping without interpolation
M92 X160 Y160 Z160 E110 ; Set steps per mm (was 160 on 02/04/19) 156=whole steps for 0.3-0.15-0.075 layer heights
M566 X700 Y700 Z700 E700 ; Set maximum instantaneous speed changes (mm/min)- (Was 1200)
M203 X20000 Y20000 Z20000 E15000 ; Set maximum speeds (mm/min)
M201 X1500 Y1500 Z1500 E1000 ; Set accelerations (mm/s^2) - (was 2000)
M906 X1500 Y1500 Z1500 E1000 I30 ; Set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout
; Axis Limits
M208 Z-0.2 S1 ; Set minimum Z
; Endstops
M574 X2 Y2 Z2 S1 ; Set active high endstops
; Z-Probe
M558 P4 H5 F120 I1 T2400 ; Set Z probe type to switch and the dive height + speeds
G31 P500 X0 Y0 Z15.03 ; Set Z probe trigger value, offset and trigger height
M557 R85 S20 ; Define mesh grid
; Heaters
M305 P0 T100000 B3950 C0 R4700 ; Set thermistor + ADC parameters for heater 0
M143 H0 S130 ; Set temperature limit for heater 0 to 120C
M305 P1 T100000 B4388 C0 R4700 ; Set thermistor + ADC parameters for heater 1
M143 H1 S320 ; Set temperature limit for heater 1 to 280C
; Fans
M106 P0 S1 I0 F500 H1 T60 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
M106 P2 S1 I0 F500 H1 T60 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on
; Tools
M563 P0 D0 H1 ; Define tool 0
G10 P0 X0 Y0 Z0.03 ; Set tool 0 axis offsets
G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
; Automatic power saving
M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss
; Custom settings are not configured
; Miscellaneous
M501 ; Load saved parameters from non-volatile memory
T0 ; Select first tool
Thanks for looking.
-
config-overide.g and bed.g?
-
just checking. you swapped the motors for 0.9 degree motors?
-
Yes, changed motors and some mechanical parts too to reduce noise etc.
-
Deleted Config-overid.g as I am trying to produce an accurate calibration. All this started with a scaling problem where the accuracy was out by as much as 4% on the Y axis compared to X depending where on the bed the print was done!
-
@ctr said in Duet homing changes!:
G29 S1 ; load previously saved bed calibration file
It's got to be your bed calibration as this is the last line of the homedelta.g. Perhaps it was done when probe height was set incorrectly, so it's offset from where Z is homing to. Try commenting this line out of your homedelta.g, and run homing a couple of times, then see if it moves down the 7mm. Then redo your bed calibration.
Ian
-
Cheers Ian, that cured it.
Can you please elaborate on the bed calibration file? Where is it and what is it called?What is the precise procedure for auto Delta calibration? I'm not having much luck with it as the scaling is not correct after running it.
I enter M500 after calib' which I understand writes the results so each time the Duet boots up, it reads the corrections. Is this correct?Thanks again for those who replied.
-
BTW. The mechanics and geometry of the machine are very accurate. I'm good at mechanics, but lacking in software/ firmware skills!
-
What firmware version are you using? If it's 2.03, you need to update to 2.04RC1 as:
Bug fixes:
When auto delta calibration adjusted the delta radius and/or the diagonal rod length, it made an incorrect adjustment to the homed height
https://github.com/dc42/RepRapFirmware/blob/dev/WHATS_NEW.mdProbably best to follow the guide: https://duet3d.dozuki.com/Wiki/Calibrating_a_delta_printer and come back with any questions. This covers delta calibration and bed mesh compensation, the latter of which is activated by G29 S1. You should be able to see the bed map by clicking on the 'Machine Control > Height Map' option in the Duet Web Control. The file should be heightmap.csv in your sys folder on the SD card.
There's a couple of things to check in your config.g. Usually, if either delta radius or diagonal rod length incorrect, you get rounded movement of the nozzle, and parts are either concave or convex.
M665 R134.311 L266.6 B120 H298 ; Set delta radius, diagonal rod length, printable radius and homed height - rod was 267
Generally, you should be able to accurately measure rod length (joint centre to joint centre) so it's unlikely this needs adjusting. It's harder to measure the delta radius accurately, so unless you know it is correct (from CAD drawing) using the 6- or 8-factor delta calibration works best, usually; see https://duet3d.dozuki.com/Wiki/Calibrating_a_delta_printer#Section_Setting_up_the_bed_g_file
However, it's also possible that your steps per mm on the belts is incorrect - there's a note in there, which doesn't make much sense to me! This might cause the scaling issue.
M92 X160 Y160 Z160 E110 ; Set steps per mm (was 160 on 02/04/19) 156=whole steps for 0.3-0.15-0.075 layer heights
What type of belt and pulley size are you using? You can use the 'Steps per millimeter - belt driven systems' calculator here to check: https://blog.prusaprinters.org/calculator/
Ian
-
Hi Ian,
Appreciate the reply.
The note was for my interest only! it related to thoughts on layer height relative to whole stepper steps (only relevant on Cartesian machines) .
Firmware is 2.0(RTOS) (2018-06-05b3) - always worried about updating firmware in case something gets screwed up! Should I upgrade? Is it foolproof?
Thanks for the thought about belt and pulley steps/mm etc. I'm well versed in this area and written a very thorough Excel file for calculations for belt motion systems including ratios, belt lengths, pulley centres etc. Excluding belt stretch, I can confirm that the values are correct.
Neil -
@ctr said in Duet homing changes!:
always worried about updating firmware in case something gets screwed up! Should I upgrade? Is it foolproof?
you can go back to a previous version.
chris riley just did a video about updating. its step by step.
https://www.youtube.com/watch?v=gYxAxz7AwfE -
Hi Veti
Thanks for the link. Looks super easy until you look at the revision Ian mentioned; this doesn't have a zip file, so which files do I need to upload? Is it all the files and do each one individually?As I said: I'm lacking in firmware/software confidence.
-
here is a more detailed guide.
https://duet3d.dozuki.com/Wiki/Installing_and_Updating_Firmwareuse the Duet2CombinedFirmware.bin in that case.