Duet 3 mini 5+ Wifi sensorless homing help
-
@casperen which firmware version are you using? There was a bug with sensorless homing on the Duet 3 Mini, which was fixed in release 3.3.
-
@dc42 I am using the stable version of 3.3. I even redownloaded it this morning and tried to reapply it from the web browser.
-
@casperen For sensorless homing to work with a TMC2209 you need to have it running in stealthchop mode. At the moment your M569 configuration will have it switching out of stealthchop and into spreadcycle at a relatively low speed. You can find out what speed it will switch by sending M569 P# (replace # with the driver id). You can adjust this switch over point using the V parameter. If you use something like V40 it will stay in stealthchop mode pretty much all of the time. I'd also suggest adding D3 to the M569 lines just to make it clear that you are using stealthchop. So something like:
M569 P0.0 S1 D2 V40
If you don't want to leave the drivers in stealthchop mode all of the time you can add further M569 commands after you have completed the home operations. -
@gloomyandy said in Duet 3 mini 5+ Wifi sensorless homing help:
D2 V40
I tried adding the D2 V40 to the M569 for the X and Y drivers. I did not help, the problem persists.
I did notice that the motors are now making noise while the printer is idle. I'm assuming this is a side affect of the stealthchop mode?
-
@casperen Sorry that was a typo it should be D3 not D2 (I got it right the first time!).
-
@gloomyandy The tip to add D3 V40 has made thing somewhat better. Going to work thru the other settings again.
I will post the config file once I have things working.
-
@casperen Did you get things working?
I'm now stuggling with the same issue on my CoreXY.; Drives M569 P0.0 S1 D3 V40 ; physical drive 0.0 goes forwards M569 P0.1 S1 D3 V40 ; physical drive 0.1 goes forwards M569 P0.2 S1 ; physical drive 0.2 goes forwards M569 P0.3 S0 ; physical drive 0.3 goes backwards M584 X0.0 Y0.1 Z0.2 E0.3 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z3200.00 E420.00 ; set steps per mm M566 X900.00 Y900.00 Z60.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.00 Z60.00 E1200.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z600 E800 I20 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X310 Y310 Z280 S0 ; set axis maxima ; Endstops M574 X1 S3 ; configure sensorless endstop for low end on X M574 Y1 S3 ; configure sensorless endstop for low end on Y M915 X Y S-30 H200 R0 ; sensitivity of sensorless homing
This does nothing for me. Is the sensitivity too low? Tried it all over the place, from -50 to +50. Same with H (50 - 700) values and V (0 - 2000) values on M569
I'm on firmware, 3.4.1
@Phaedrux @dc42I cannot for the life of me get this to work. Whole point of getting this board was sensorless homing on XY
Changing the parameters seems completely random. Sometimes it will give false positives at same parameters as when it didn't and vice versa.23rd edit: I'm getting closer. X now homes, reponds to stall, moves back 5mm, but then starts crashing becuase the second pass is too slow(?)
So it seems they need more speed than F1800 which was generated by the RRF firmware generator. I seem to be closing in on it working now. What a ride.
I got X and Y working with this:
; Drives M569 P0.0 S1 D3 V40 ; physical drive 0.0 goes forwards M569 P0.1 S1 D3 V40 ; physical drive 0.1 goes forwards M569 P0.2 S1 ; physical drive 0.2 goes forwards M569 P0.3 S1 ; physical drive 0.3 goes forwards M584 X0.0 Y0.1 Z0.2 E0.3 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z3200.00 E420.00 ; set steps per mm M566 X900.00 Y900.00 Z60.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.00 Z450.00 E1200.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2) M906 X900 Y900 Z600 E800 I20 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X310 Y310 Z320 S0 ; set axis maxima ; Endstops M574 X1 S3 ; configure sensorless endstop for low end on X M574 Y1 S3 ; configure sensorless endstop for low end on Y M915 X S30 H140 R0 ; sensitivity of X and Y sensorless homing, R2 = pause print M915 Y S30 H140 R0 ; sensitivity of X and Y sensorless homing, R2 = pause print
homex
; homex.g ; called to home the X axis ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Sat Jul 16 2022 00:07:15 GMT+0200 (Central European Summer Time) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X-350 F3000 ; move quickly to X axis endstop and stop there (first pass) G1 X5 F6000 ; go back a few mm G1 H1 X-15 F1800 ; move slowly to X axis endstop once more (second pass) G1 H2 Z-5 F6000 ; lower Z again G90 ; absolute positioning
homey
; homey.g ; called to home the Y axis ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Sat Jul 16 2022 00:07:16 GMT+0200 (Central European Summer Time) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 Y-350 F3000 ; move quickly to Y axis endstop and stop there (first pass) G1 H1 Y10 F6000 ; go back a few mm G1 H1 Y-15 F1800 ; move slowly to Y axis endstop once more (second pass) G1 H2 Z-5 F6000 ; lower Z again G90 ; absolute positioning
still working on homez and homeall, cannot get my prusa clone probe to work. It won't recognize it as a z-stop. The red light is always on, but does respond to metal below it. It does not show up in my DWC either. M119 says:
M119 Endstops - X: not stopped, Y: not stopped, Z: no endstop, Z probe: at min stop
config file:
; Configuration file for Duet 3 Mini 5+ (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Sat Jul 16 2022 00:07:15 GMT+0200 (Central European Summer Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"SK-Go2" ; set printer name M669 K1 ; select CoreXY mode M918 P1 E4 F2000000 ; configure direct-connect display ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0.0 S1 D3 V40 ; physical drive 0.0 goes forwards M569 P0.1 S1 D3 V40 ; physical drive 0.1 goes forwards M569 P0.2 S1 ; physical drive 0.2 goes forwards M569 P0.3 S1 ; physical drive 0.3 goes forwards M584 X0.0 Y0.1 Z0.2 E0.3 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z3200.00 E420.00 ; set steps per mm M566 X900.00 Y900.00 Z60.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.00 Z450.00 E1200.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2) M906 X900 Y900 Z600 E800 I10 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X310 Y310 Z320 S0 ; set axis maxima ; Endstops M574 X1 S3 ; configure sensorless endstop for low end on X M574 Y1 S3 ; configure sensorless endstop for low end on Y M915 X S30 H140 R0 ; sensitivity of X and Y sensorless homing, R2 = pause print M915 Y S30 H140 R0 ; sensitivity of X and Y sensorless homing, R2 = pause print ; Z-Probe M574 Z1 S2 P"io3.in" ; configure Z-probe endstop for low end on Z M558 P5 C"zstop" I1 H30 F600 T12000 A1 ; set Z probe type as filtered digital (P5), dive height to 30. G31 P500 X-23 Y14 Z0.9 ; set Z probe trigger value, offset and trigger height M557 X20:285 Y20:290 S44.16:45 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B3950 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"temp1" Y"thermistor" T100000 B3950 ; configure sensor 1 as thermistor on pin temp1 M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 ; set temperature limit for heater 1 to 280C ; Fans M950 F1 C"out6" Q500 ; create fan 1 on pin out6 and set its frequency M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on M308 S10 Y"mcu-temp" A"MCU" ; MCU temp on temp sensor 10 M950 F0 C"out5" ; create fan 1 on pin out6 and set its frequency M106 P0 S100 H10 T30 ; set fan 1 value. Virtual thermostatic control is turned on, turn on and off M912 P0 S-1.2 ; MCU temperature calibration ; Tools M563 P0 S"Volcano" D0 H1 F0 ; define tool 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C ; Custom settings are not defined ; Miscellaneous M501 ; load saved parameters from non-volatile memory M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss T0 ; select first tool
I tried switching the +5v and GND cables. Didn't work, so switched it back. Now it's suddenly working. What an adventure it is to build 3d printers.
-
@velvia Unfortunately I went a different direction and abandoned the sensor less homing.
-
@casperen I got it working eventually.
-
@velvia said in Duet 3 mini 5+ Wifi sensorless homing help:
@casperen I got it working eventually.
What did you end up changing?