Solved Problems getting sensorless homing to work
-
Update: Never mind, I made a stupid mistake in the drive mappings and I had the V value for the X-axis assigned to the wrong driver.
Updated the config so people can have a look at something which works. Sorry for the fuss.
The config is for a TATARA/Anet A8 with a Bondtech MK3 toolhead and a Revo6 and a clone MK52 bed. The extruder is on the driver0 connection because the cable is too short to run it from driver4 and with the Z-axis motors each having their own driver.
Here are my (relevant) config files and diagnostic outputs:
config.g:
; 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.16 on Fri Jul 07 2023 17:37:13 GMT+0200 (Central European Summer Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Oak" ; set printer name ; Drives M569 P0.1 S0 D3 V97 ; physical drive 0.1 (X) goes backwards M569 P0.2 S1 D3 V97 ; physical drive 0.2 (Y) goes forwards M569 P0.3 S0 ; physical drive 0.3 (Z-left) goes backwards M569 P0.4 S0 ; physical drive 0.4 (Z-right) goes backwards M569 P0.0 S0 ; physical drive 0.0 (E1) goes backwards M584 X0.1 Y0.2 Z0.3:0.4 E0.0 ; set drive mapping M671 X-63:321 Y0:0 S3 ; leadscrews at left (connected to 0.3) and right (connected to 0.4) of X axis M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X100.00 Y100.00 Z400.00 E415.00 ; set steps per mm M566 X900.00 Y900.00 Z60.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X9000.00 Y9000.00 Z3000.00 E1200.00 ; set maximum speeds (mm/min) M201 X2000.00 Y2000.00 Z20.00 E500.00 ; set accelerations (mm/s^2) M201.1 X500 Y500 ; set accelerations when homing (mm/s^2) M906 X1100 Y1100 Z800 E500 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S300 ; Set idle timeout M915 X Y S4 R0 F0 ; Set stall detection for X and Y-axis ; Axis Limits M208 X-15 Y-12 Z0 S1 ; set axis minima M208 X258 Y208 Z250 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 M574 Z1 S2 ; configure Z-probe endstop for low end on Z ; Z-Probe M558 P5 C"^io3.in" H5 F3000:120 T6000 ; set Z probe type to switch and the dive height + speeds G31 P500 X23 Y7 Z1.25 ; set Z probe trigger value, offset and trigger height M557 X15:215 Y15:195 S40 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B4092 ; configure sensor 0 as thermistor on pin temp2 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 B4725 C7.06e-8 ; 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 S300 ; set temperature limit for heater 1 to 300C ; Fans M950 F0 C"out5" Q500 ; create fan 0 on pin out5 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off 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 ; Tools M563 P0 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
homex.g:
; homex.g ; called to home the X axis ; ; generated by RepRapFirmware Configuration Tool v3.3.16 on Fri Jul 07 2023 17:37:13 GMT+0200 (Central European Summer Time) M400 ; Wait for current moves to finish M913 X40 ; Set current to 25% M400 ; Wait for current moves to finish G91 ; relative positioning G1 H1 X-278 F4000 ; move quickly to X axis endstop and stop there (first pass) M201 X2000.00 ; restore accel to normal value G90 ; absolute positioning M400 ; Wait for current moves to finish M913 X100 ; Set current to 100% M400 ; Wait for current moves to finish
M122:
M122 === Diagnostics === RepRapFirmware for Duet 3 Mini 5+ version 3.4.5 (2022-11-30 19:41:16) running on Duet 3 Mini5plus WiFi (SBC mode) Board ID: P74P5-L096U-D65J0-40KM8-LD03Z-RJR7J Used output buffers: 1 of 40 (12 max) === RTOS === Static ram: 103652 Dynamic ram: 98304 of which 0 recycled Never used RAM 39756, free system stack 206 words Tasks: SBC(ready,1.2%,446) HEAT(notifyWait,0.0%,358) Move(notifyWait,0.0%,363) CanReceiv(notifyWait,0.0%,942) CanSender(notifyWait,0.0%,336) CanClock(delaying,0.0%,341) TMC(notifyWait,0.7%,115) MAIN(running,97.2%,557) IDLE(ready,0.1%,30) AIN(delaying,0.8%,273), total 100.0% Owned mutexes: HTTP(MAIN) === Platform === Last reset 00:13:48 ago, cause: software Last software reset at 2023-07-10 20:33, reason: User, GCodes spinning, available RAM 39684, slot 2 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task SBC Freestk 0 n/a Error status: 0x00 MCU revision 3, ADC conversions started 828436, completed 828436, timed out 0, errs 0 Step timer max interval 1490 MCU temperature: min 38.0, current 38.2, max 39.3 Supply voltage: min 24.0, current 24.0, max 24.1, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0 Events: 0 queued, 0 completed Driver 0: standstill, SG min 0, read errors 0, write errors 1, ifcnt 247, reads 43573, writes 13, timeouts 0, DMA errors 0, CC errors 0 Driver 1: standstill, SG min 2, read errors 0, write errors 1, ifcnt 206, reads 43570, writes 15, timeouts 0, DMA errors 0, CC errors 0 Driver 2: standstill, SG min 2, read errors 0, write errors 1, ifcnt 162, reads 43566, writes 19, timeouts 0, DMA errors 0, CC errors 0 Driver 3: standstill, SG min 2, read errors 0, write errors 1, ifcnt 154, reads 43568, writes 17, timeouts 0, DMA errors 0, CC errors 0 Driver 4: standstill, SG min 2, read errors 0, write errors 1, ifcnt 87, reads 43573, writes 13, timeouts 0, DMA errors 0, CC errors 0 Driver 5: not present Driver 6: not present Date/time: 2023-07-10 20:47:20 Cache data hit count 1870235868 Slowest loop: 31.27ms; fastest: 0.08ms === Storage === Free file entries: 10 SD card 0 not detected, interface speed: 0.0MBytes/sec SD card longest read time 0.0ms, write time 0.0ms, max retries 0 === Move === DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === AuxDDARing === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 === GCodes === Segments left: 0 Movement lock held by null HTTP* is doing "M122" in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger* is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 SBC is idle in state(s) 0 Daemon is idle in state(s) 0 Aux2 is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty === CAN === Messages queued 7446, received 0, lost 0, boc 0 Longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 18 (min 18), ts 4142/0/0 Tx timeouts 0,0,4141,0,0,3303 last cancelled message type 30 dest 127 === SBC interface === Transfer state: 5, failed transfers: 0, checksum errors: 0 RX/TX seq numbers: 32436/32436 SPI underruns 0, overruns 0 State: 5, disconnects: 0, timeouts: 0 total, 0 by SBC, IAP RAM available 0x0f1bc Buffer RX/TX: 0/0-0, open files: 0 === Duet Control Server === Duet Control Server v3.4.5 Code buffer space: 4096 Configured SPI speed: 8000000Hz, TfrRdy pin glitches: 0 Full transfers per second: 39.20, max time between full transfers: 99.4ms, max pin wait times: 49.6ms/14.0ms Codes per second: 0.14 Maximum length of RX/TX data transfers: 3228/816
M915:
M915 Driver 0.0: stall threshold 1, steps/sec 200, coolstep 0, action on stall: none Driver 0.1: stall threshold -64, steps/sec 200, coolstep 0, action on stall: none Driver 0.2: stall threshold -64, steps/sec 200, coolstep 0, action on stall: none Driver 0.3: stall threshold 1, steps/sec 200, coolstep 0, action on stall: none Driver 0.4: stall threshold 1, steps/sec 200, coolstep 0, action on stall: none Driver 0.5: stall threshold 1, steps/sec 200, coolstep 0, action on stall: none Driver 0.6: stall threshold 1, steps/sec 200, coolstep 0, action on stall: none
M569 for X axis:
M569 P0.2 Drive 2 runs forwards, active low enable, timing fast, mode stealthChop, ccr 0x00053, toff 3, tblank 0, tpwmthrs 100 (75.0 mm/sec), pwmScaleSum 12, pwmScaleAuto 0, pwmOfsAuto 36, pwmGradAuto 14, pos 1000
-
-
-
-