Merry Christmas Together,
Ive got around installing a SZP to my idex, since ive got a probe already on the primary toolhead ive got it installed on the Secondary Toolhead.
Got it all configured the probe works too.
My issue is that the Scanning and resulting Mesh is Rotated by 90° i suspect its because the probe is mounted on the U Axis instead X Axis, the mesh is also configured to use the U Axis instead the X Axis.
Running a Duet 3 Mini 5+ with 2 1LC Toolboards and the SZP Sensor
Firmware version for the boards is 3.5.3
M122 output:
=== Diagnostics ===
RepRapFirmware for Duet 3 Mini 5+ version 3.5.3 (2024-09-18 11:25:48) running on Duet 3 Mini5plus WiFi (standalone mode)
Board ID: YQ6KF-K096U-D65J0-40KMG-4G03Z-H28XK
Used output buffers: 12 of 40 (38 max)
=== RTOS ===
Static ram: 103368
Dynamic ram: 125268 of which 328 recycled
Never used RAM 9596, free system stack 132 words
Tasks: NETWORK(2,nWait 7,15.1%,227) LASER(5,nWait 7,0.0%,167) HEAT(3,nWait 6,0.0%,325) Move(4,nWait 6,0.1%,256) CanReceiv(6,nWait 1,0.1%,773) CanSender(5,nWait 7,0.0%,336) CanClock(7,delaying,0.0%,348) TMC(4,nWait 6,0.8%,101) MAIN(1,running,82.8%,665) IDLE(0,ready,0.2%,29) AIN(4,delaying,0.8%,259), total 100.0%
Owned mutexes:
=== Platform ===
Last reset 00:25:13 ago, cause: software
Last software reset at 2024-12-24 16:59, reason: User, Gcodes spinning, available RAM 9596, slot 1
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x00
Aux0 errors 0,0,0
MCU revision 3, ADC conversions started 1134884, completed 1134884, timed out 0, errs 0
MCU temperature: min 22.3, current 23.8, max 26.1
Supply voltage: min 24.1, current 24.1, max 24.2, under voltage events: 0, over voltage events: 0, power good: yes
Heap OK, handles allocated/used 99/2, heap memory allocated/used/recyclable 2048/224/176, gc cycles 0
Events: 0 queued, 0 completed
Driver 0: standstill, SG min 0, read errors 0, write errors 1, ifcnt 77, reads 14030, writes 45, timeouts 0, DMA errors 0, CC errors 0
Driver 1: standstill, SG min 0, read errors 0, write errors 1, ifcnt 83, reads 14024, writes 51, timeouts 0, DMA errors 0, CC errors 0
Driver 2: standstill, SG min 0, read errors 0, write errors 1, ifcnt 83, reads 14023, writes 51, timeouts 0, DMA errors 0, CC errors 0
Driver 3: standstill, SG min 0, read errors 0, write errors 1, ifcnt 83, reads 14023, writes 51, timeouts 0, DMA errors 0, CC errors 0
Driver 4: standstill, SG min 0, read errors 0, write errors 1, ifcnt 83, reads 14024, writes 51, timeouts 0, DMA errors 0, CC errors 0
Driver 5: not present
Driver 6: not present
Date/time: 2024-12-24 17:25:06
Cache data hit count 2834372371
Slowest loop: 26.54ms; fastest: 0.15ms
=== Storage ===
Free file entries: 20
SD card 0 detected, interface speed: 22.5MBytes/sec
SD card longest read time 5.4ms, write time 3.7ms, max retries 0
=== Move ===
DMs created 83, segments created 14, maxWait 196473ms, bed compensation in use: mesh, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00
no step interrupt scheduled
Moves shaped first try 194, on retry 1, too short 0, wrong shape 574, maybepossible 0
=== DDARing 0 ===
Scheduled moves 1250, completed 1250, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 18], CDDA state -1
=== DDARing 1 ===
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
Heater 1 is on, I-accum = 0.0
=== GCodes ===
Movement locks held by null, null
HTTP is idle 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
File2 is idle in state(s) 0
Queue2 is idle in state(s) 0
Q0 segments left 0, axes/extruders owned 0x0000803
Code queue 0 is empty
Q1 segments left 0, axes/extruders owned 0x0000000
Code queue 1 is empty
=== Filament sensors ===
check 0 clear 0
Extruder 0: no data received, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0
Extruder 1: no data received, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0
=== CAN ===
Messages queued 15372, received 77225, lost 0, errs 0, boc 0
Longest wait 6ms for reply type 6061, peak Tx sync delay 378, free buffers 26 (min 24), ts 7566/7565/0
Tx timeouts 0,0,0,0,0,0
=== Network ===
Slowest loop: 26.95ms; fastest: 0.00ms
Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)
HTTP sessions: 1 of 8
=== WiFi ===
Interface state: active
Module is connected to access point
Failed messages: pending 0, notrdy 0, noresp 0
Firmware version 2.1.0
MAC address f0:08:d1:02:e5:fa
Module reset reason: Power up, Vcc 3.42, flash size 2097152, free heap 42944
WiFi IP address 192.168.178.47
Signal strength -35dBm, channel 11, mode 802.11n, reconnections 0
Clock register 00002001
Socket states: 0 0 0 0 0 0 0 0
Mesh.g file:
if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed || !move.axes[3].homed
G28
M290 R0 S0 ; cancel baby stepping
G29 S2 ; cancel mesh bed compensation
T1 ; Switch to Tool with the SZP
G90 ; Absolute Positioning
G1 Z6 ; to avoid backlash
G1 X125 Y169 F99999 ; move to center of bed
M558.1 K1 S1.7
G1 Z6 ; Move up at end of calibration
G29 S0 K1 ; create height map
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.2 on Thu Sep 23 2021 20:24:16 GMT+0200 (Mitteleuropäische Sommerzeit)
G4 S1 ;wait for expansion boards to start
; General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
;M552 S0
; 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 V1500 ; physical drive 0.0 goes backwards
M569 P0.1 S0 D3 V1500 ; physical drive 0.1 goes backwards
M569 P0.2 S1 D3 V1500 ; physical drive 0.2 goes forwards
M569 P20.0 S0 D3 V1500 ; Toolboard 1 physical drive forwards
M569 P21.0 S0 D3 V1500 ; Toolboard 2 physical drive forwards
M569 P0.3 S1 D3 V1500 ; physical drive 0.3 goes forwards
M569 P0.4 S1 D3 V1500 ; physical drive 0.4 goes forwards
M584 X0.0 Y0.1 U0.3 Z0.2:0.4 E20.0:21.0 ; set drive mapping
M350 X16 Y16 U16 Z16:16 E16:16 I1 ; configure microstepping with interpolation
M92 X80.685 Y80.791 U80.685 Z1600:1600 E415.81386:415.81386 ; set steps per mm
M566 X300.00 Y300.00 U300.00 Z300.00:300.00 E3600.00:3600.00 ; set maximum instantaneous speed changes (mm/min)
M203 X15000.00 Y15000.00 U15000.0 Z500.00:500.00 E3600.00:3600.00 ; set maximum speeds (mm/min)
M201 X5000.00 Y5000.00 U5000.00 Z500.00:500.00 E3000.00:3000.00 ; set accelerations (mm/s^2)
M906 X700 Y1200 U800 Z900:900 E600:1190 I40 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout
; Stall detection
;M915 X Y U F0 S20 R2 H200 ; Detect stall and Rehome
; Axis Limits
M671 X260:260:50:50 Y260:50:50:260 P0.8 ; adjusting screws at rear left (-15,190), front middle (100,-10) and rear right (215,190), thread pitch 0.5mm
M208 X-42.8 Y-19 Z-0.54 U0 S1 ; set axis minima
M208 X305 Y291 Z360 U348 S0 ; set axis maxima
; Endstops
M574 X1 S1 P"io5.in" ; configure active-high endstop for low end on X via pin io6.in
M574 Y1 S1 P"!io3.in" ; configure active-high endstop for low end on Y via pin io3.in
M574 Z1 S1 P"io4.in+io2.in" ; configure active-high endstop for low end on Z via pin io2.in and io4.in
;M574 Z1 S2 ; configure active-high endstop for low end on Z via Z Probe
M574 U2 S1 P"io6.in" ; configure active-high endstop for high end on U via pin io5.in
; Z-Probe
M558 K0 P8 C"20.io2.in" H5 F600:70 T10000 A5 S0.01 ; ABL Probe
G31 P50 X-38 Y-3.8 Z2.95 ; set the trigger height and Offset ABl probe
; SZP
M558 K1 P11 C"100.i2c.ldc1612" F36000 T36000 ; Scanning Probe
M308 A"SZP coil" S10 Y"thermistor" P"100.temp0" ; thermistor on coil of Scanning probe
G31 K1 Z2 Y-14.6 X38.7 ; define probe 1 offsets and trigger height
M558.2 K1 S15 R136381 ; set drive current and reading offset
; Mesh
M557 Y10:230 U0:250 P10 ; define mesh grid
M376 H10 ; Taper height of 10mm (fade)
; Heaters
M308 S0 P"temp0" Y"thermistor" T100000 B4138 A"Bed" ; configure sensor 0 as thermistor on pin temp1
M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0
M307 H0 R0.288 K0.129:0.000 D21.01 E1.35 S1.00 B0 ; 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"20.temp1" Y"pt1000" A"Hotend 0" ; configure sensor 1 as PT1000 on pin temp1
M308 S2 P"21.temp0" Y"pt1000" A"Hotend 1" ; configure sensor 2 as PT1000 on pin temp1
M950 H1 C"20.out0" T1 ; create nozzle heater output on out1 and map it to sensor 0
M950 H2 C"21.out0" T2 ; create nozzle heater output on out1 and map it to sensor 0
M307 H1 R2.848 K0.444:0.079 D6.17 E1.35 S1.00 B0 V24.0 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S500 ; set temperature limit for heater 1 to 500C
M307 H2 R2.573 K0.496:0.076 D5.73 E1.35 S1.00 B0 V23.8 ; disable bang-bang mode for heater and set PWM limit
M143 H2 S500 ; set temperature limit for heater 1 to 500C
; Fans
M950 F0 C"20.out1" Q110 ; create fan 0 on pin out5 and set its frequency
M106 P0 S0 H-1 L0.15 C"TOOL 0 FAN" ; set fan 0 value. Controlled by Gcode
M950 F2 C"21.out1" Q110 ; create fan 0 on pin out5 and set its frequency
M106 P2 S0 H-1 L0.15 C"TOOL 1 FAN" ; set fan 0 value. Controlled by Gcode
M950 F1 C"20.out2" Q250 ; create fan 1 on pin out6 and set its frequency
M106 P1 X1 H1 T60 ; set fan 1 value. Thermostatic control is turned on
M950 F3 C"21.out2" Q250 ; create fan 1 on pin out6 and set its frequency
M106 P3 X1 H2 T60 ; 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
M563 P1 D1 H2 X3 F2 ; define tool 1
G10 P1 U0.3 Y-0.15 Z0 ; set tool 1 axis offsets
G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C
;Copy mode Tool
M563 P2 D0:1 H1:2 X0:3 F0:2 ; tool 2 uses both extruders and hot end heaters, maps X to both X and U, and uses both print cooling fans
G10 P2 X0 Y0 U-152.5 Z0 S0 R0 ; Offsets for Tool 2
M567 P2 E1:1 ; set mix ratio 100% on both extruders
M568 P2 S1 ; turn on mixing for tool 2
T0 ; enable Tool0 -> Homing
global filament_loaded_t0 ="" ; set global parameter if not present
global filament_loaded_t1 ="" ; set global parameter if not present
; Custom settings
M591 D1 C"21.io1.in" P3 S1 L25 R70:126 ; Rotating Magnet filament runout sensor
M591 D0 C"20.io1.in" P3 S1 L25 R70:126
M575 P1 S1 B57600 ; Panel Due
; Miscellaneous
M501 ; load saved parameters from non-volatile memory
;M911 S10 R11 P"M913 X0 Y0 U0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
M950 E0 C"led" U15 ; set Neopixels
;M150 R255 U255 B255 P255 F0 ; Set Neopixel initial Color
;M572 D0 S0.040 ; Pressure Advance
M955 P20.0 I05 ; Acclerometer
M593 P"ZVD" F57 ; Input Shaping
; Toolboard Macros
M950 J1 C"20.button0"
M581 P1 T1 S1
M950 J2 C"20.button1"
M581 P2 T2 S1
M950 J3 C"21.button0"
M581 P3 T3 S1
M950 J4 C"21.button1"
M581 P4 T4 S1
Ive noticed that the mesh is off when ive started configuring the probe offsets and mesh size
in the Image Below ive set the Mesh to be larger than the Bed is in the X+ Direction, the Mesh shows its dropping in the Y+ Direction
The Scanning also happens towards the Y Direction instead of X Direction
When running the Mesh Misconfigured with the X axis instead of Y axis the Primary toolhead "Scans" in the X Direction