klicky probe setup help
-
I want to see if i can get help properly installing my klicky. i have it installed already on voron 350
its set at X 52 Y350Voron 2.4
Duet3 6hc
duet web control 3.4.5
rrf -
@frnknstn518 i thought i was suppose to set this up as type 5 but its on expansion board and i get an error that says it has to be 8 or 9. i thought the switches were 5
; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X350 Y350 Z350 S0 ; set axis maxima ; endstops M574 X2 S1 P"121.io0.in" ; X min active high endstop switch M574 Y2 S1 P"io5.in" ; Y min active high endstop switch M574 Z1 S1 P"io6.in" ; Z min active low endstop switch ; Z-Probe M558 P5 C"!121.io2.in" I1 A5 H1.45 R0.1 F65 T7000 A5 S0.01 B1
-
@frnknstn518 use type 8 for a switch connected to an expansion board.
-
@dc42 just checking in. I checked my wirng to make sure I was g-g v-v and s-s. froom the 1lc to the euclid probe. I am assuming its my config.
; Z-Probe (Euclid) M558 P8 X0 Y0 Z1 H3F200 T5000 G31 P500 X 11.0 Y0.5 Z1.65
Is this suppose to be K8 and P5 for the NC switch?
-
@frnknstn518 ; Z-Probe (Euclid)
M558 P8 C"!121.io2.in" X0 Y0 Z1 H3F200 T5000 G31 P500 X 11.0 Y0.5 Z1.65
I added the pin back in but i am still wrong somewhere
-
@frnknstn518 So this is where im at. I have Euclid probe and i cant seem to get it to trigger. i checked the wiring, and when connected lights are on. When i press the switch it goes off. How do i set this to work with the probe display in DWC. Probe just stays at zero. Here are some of my g files
; Configuration file for Duet 3 MB 6HC (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.16 on Sat May 13 2023 19:27:15 GMT-0400 (Eastern Daylight Time) ; General preferences M575 P1 S1 B57600 ; enable support for PanelDue G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Duet 3" ; set printer name M669 K1 ; select CoreXY mode G4 S2 ; Wait for expansion boards to start ; Network ;M552 S1 ;Enable network ;M586 P0 S1 ;Enable HTTP ;M586 P1 S0 ;Disable FTP ;M586 P2 S0 ;Disable Telnet ; ----Z Drive Map---- , ------+------ , | 0.2 | 0.3 | , |-----+-----| , | 0.1 | 0.4 | , ------+------ , FRONT ; Looking at the printer from the top ; Drive directions M569 P1.0 S1 ; physical drive 1.1 goes forwards Y DRIVE M569 P1.1 S1 ; physical drive 1.0 goes forwards X DRIVE M569 P0.1 S1 ; physical drive 0.1 goes forwards FL Z DRIVE M569 P0.2 S0 ; physical drive 0.2 goes forwards RL Z DRIVE M569 P0.3 S1 ; physical drive 0.3 goes forwards RR Z DRIVE M569 P0.4 S0 ; physical drive 0.4 goes forwards RF Z DRIVE M569 P0121.0 S0 ; physical drive 0.0 goes forwards EXTRUDER DRIVE ; Motor mapping and steps per mm M584 X1.1 Y1.0 Z0.1:0.2:0.3:0.4 E121.0 ; set drive mapping M84 S3600 ; motor idle timeout M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X160.00 Y160.00 Z400.00 E690.00 ; set steps per mm ; Drive currents and speeds M566 X900.00 Y900.00 Z60.00 E300.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.00 Z180.00 E7200 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z20.00 E3000.00 ; set accelerations (mm/s^2) M906 X1600 Y1600 Z1200 E500 I70 ; set motor currents (mA) and motor idle factor in per cent M84 S120 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X350 Y350 Z350 S0 ; set axis maxima ; endstops M574 X2 S1 P"121.io0.in" ; X min active high endstop switch M574 Y2 S1 P"io5.in" ; Y min active high endstop switch M574 Z1 S1 P"io6.in" ; Z min active low endstop switch ; Z-Probe (Euclid) M558 P8 C"!121.io2.in" X0 Y0 Z1 H3F200 T5000 ; K is probe type, P5 for NC switch, C input pin, H is dive height, F is probing speed, T is travel speed, A is number of probes G31 P500 X 11.0 Y0.5 Z1.65 ; Bed leveling params M671 X-65:-65:365:365 Y0:395:395:0 S20 ; Define Z belts locations (Front_Left, Back_Left, Back_Right, Front_Right) M557 X30:270 Y30:270 P5 ; Define bed mesh grid (inductive probe, positions include the Y offset!) ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B3950 A"BedTemp" ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out1" T0 Q10 ; create bed heater output on out0 and map it to sensor 0 M307 H0 R4.843 K1.017:0.000 D1.55 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"121.temp1" Y"thermistor" T100000 B4725 A"NozzleTemp" ; configure sensor 1 as thermistor on pin temp1 M950 H1 C"121.out0" T1 ; create nozzle heater output on 121.out0 and map it to sensor 1 M307 H1 R5.006 K0.971:0.000 D1.64 E1.35 S1.00 B0 V23.9 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 ; set temperature limit for heater 1 to 280C ; Fans M950 F0 C"121.out1" Q500 ; create fan 0 on pin 121.out1 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"121.out2" Q500 ; create fan 1 on pin 121.out2 and set its frequency M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P0 D0 H1 ; define tool 0 G10 P0 X0 Y0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C T0 ; Custom settings are not defined
; *********************************************************** ; Euclid Probe homez.g Example Macro ; RRF3.X Firmware Example ; saveas system/homez.g ; comments and echo statements throughout are provided for convenience ; *********************************************************** if !move.axes[0].homed || !move.axes[1].homed ; If the printer hasn't been homed, home it M98 P"0:/sys/homexy.g" M561 ; clear any bed transform M290 S0 R0 ; clear baby steps G91 ; relative positioning G1 H2 Z6 F6000 ; lift Z relative to current position to clear any obstructions M400 G90 ; absolute positioning ; echo "Call deployprobe.g macro" M401 P0 ; This runs macro file deployprobe ; echo "Return" G1 X175 Y175 F9000 ; go to center of bed in advance of probe that point M400 ; echo "G30 Command" G30 ; Probe the bed at the current XY position. When the probe is triggered, ; adjust the Z offset of the current tool to make the current position Z=0. G1 Z10 ; raise Z=10 M400 G4 P500 ; echo "Call bed4point.g macro" M98 P"0:/sys/bed4point.g" ; tram bed ; echo "Return" G1 X145 Y162.5 F9000 ; go back to the first probe point and reprobe 0 in case it moved G30 ; echo "Call retractprobe.g macro" M402 P0 ; retract probe ; echo "Return" G1 Z10 F600 ; lift Z relative to current position G90 ; absolute positioning M564 S1 H0 ; reset the bounding limits ; G1 X150 Y0 F9000 ; move carriage to center front
; *********************************************************** ; Euclid Probe Fixed Dock Retract Probe Macro M402 ; RRF3.x Firmware Example ; saveas system/retractprobe.g ; comments and echo statements throughout are provided for convenience ; *********************************************************** echo "running retractprobe.g macro" ; uncomment next line to echo the probe deploy state ; echo "Object Model Deployuser token =" ^sensors.probes[0].deployedByUser ; Dock side position is at X0 Y30 ; Docked probe postion is at X0 Y0 ; Dock entry/exit point is at X65 Y0 Z10 **USER MUST ESTABLISH EXIT HEIGHT Z G90 ; absolute positioning M564 S0 ; allow beyond limit axis to print area if sensors.probes[0].value[0]!= 0 echo "Probe Value =" ^sensors.probes[0].value[0] echo "Object Model Deployuser token =" ^sensors.probes[0].deployedByUser abort "retractprobe: Probe not currently picked up!" ; echo "pass first logic loop" ; uncomment next line to echo the probe value and probe deploy state ; echo "Probe Value =" ^sensors.probes[0].value[0] ; echo "Object Model Deployuser token =" ^sensors.probes[0].deployedByUser G1 X150 Y350 Z10 F3000 ; move to ready position G1 X100 Y350 Z10F 3000 ; move to the entry position for the dock G1 X50 Y350 Z10 F300 ; move into the dock position G4 P250 ; pause 250 usecs G1 X50 Y300 Z10 F6000 ; move to the side adjacent to the dock swiping the probe off M400 ; uncomment next line to echo the probe value and probe deploy state ; echo "Probe Value =" ^sensors.probes[0].value[0] ; echo "Object Model Deployuser token =" ^sensors.probes[0].deployedByUser G1 X175.0 Y175.0 Z10 F6000 ; move to the center of the bed M400 M564 S1 ; limit axis to print area ; echo "complete movement commands" if sensors.probes[0].value[0]!= 1000 ; echo "Probe Value =" ^sensors.probes[0].value[0] ; echo "Object Model Deployuser token =" ^sensors.probes[0].deployedByUser abort "retractprobe.g Probe not correctly dropped off in dock!" M564 H1 S1 ; Restrict movement to within axes boundaries (for normal Y movement) echo "Macro retractprobe.g complete"
; *********************************************************** ; Euclid Probe Moving Z Dock Deploy Probe Macro M401 ; RRF3.X Firmware Example ; saveas system/deployprobe.g ; comments and echo statements throughout are provided for convenience ; *********************************************************** ; echo "Running deployprobe.g" ; if !move.axes[0].homed || !move.axes[1].homed ; If the printer hasn't been homed, home it ; M98 P"0:/sys/homexy.g" ; uncomment next line to echo the probe deploy state ; echo "Object Model Deployuser token =" ^sensors.probes[0].deployedByUser M564 H0 S0 ; Allow movement BEYOND axes boundaries (for Y to reach probe dock) G91 ; relative positioning echo "Lift Z in advance of deploy" G1 H2 Z15 F3000 ; move Z 15 for clearance above dock. ; ; need to figure out some safety check on this G90 ; absolute positioning ; echo "Probe Value =" ^sensors.probes[0].value[0] if sensors.probes[0].value[0]!=1000 ; if sensor is value other than 1000 do this ; uncomment next line to echo the probe deploy state ; echo "deployuser token = " ^sensors.probes[0].deployedByUser ; echo "Probe State = " ^sensors.probes[0].value[0] abort "deployprobe start value Probe already picked up. Manually return probe to the dock" ; if we're here we know it's because the above is true which I assume is because you have an NC switch as a probe. ; echo "Passed first logic test to deploy probe" ; Dock side position is at X0 Y30 ; Docked probe position is at X0 Y0 ; Dock exit point is at X65 Y0 G1 X50 Y300 F6000 ; move adjacent to probe dock location M400 ; wait for moves to finish G91 ; relative coordinates G1 Z-15 ; recover the z clearance ; echo "Probe Pickup while loop running" ; uncomment next line to echo the probe deploy state ; echo "Object Model Deployuser token (before while loop) = " ^sensors.probes[0].deployedByUser G90 ; absolute coordinates G1 X50 Y350 F3000 ; move over dock G4 S1 ; pause for pickup M400 ; wait for moves to finish while sensors.probes[0].value[0]=1000 ; echo "Probe Pickup while loop running" G91 ; relative coordinates G1 Z-0.25 F600 ; jog bed up 0.25mm change to suit user preference M400 ; wait for moves to finish, allow polling interval to trigger and check probe value G90 ; absolute coordinates ; echo sensors.probes[0].value[0] ; echo iterations if iterations=100 ; if probe has moved 100*step increment without pickup detection, exit loop break G4 P250 ; pause 1/4 seconds echo "Probe Value =" ^sensors.probes[0].value[0] G91 G1 Z-0.5 F600 ; move probe down in the dock to clear the roof. adjust as needed G90 G1 X100 Y350 F1200 ; slide probe out of dock - slowly example exit is to the +X direction G1 Z10 ; move bed to clear probe from build surface M400 G4 P250 ; pause 1 seconds echo "Probe Pickup while loop complete" ; uncomment to echo the probe deploy state ; echo "Object Model Deployuser token (after while loop) = " ^sensors.probes[0].deployedByUser G90 ; absolute positioning G1 X175 Y175 F3000 ; move to center of bed for ready position M400 ; wait for moves to finish if sensors.probes[0].value[0]!=0 ; uncomment to echo the probe deploy state echo "Object Model Deployuser token (in abort if section)= " ^sensors.probes[0].deployedByUser abort "Deployprobe endvalue not 0 Probe not picked up! Deploy cancelled." M564 H1 S1 ; Restrict movement to within axes boundaries (for normal Y movement) echo "Macro deployprobe.g complete"
-
@frnknstn518 said in klicky probe setup help:
i checked the wiring, and when connected lights are on. When i press the switch it goes off.
Which lights are on when the probe is connected, and go off when you press the switch?
What Z probe values does DWC report, when the switch is pressed and when it is not pressed?
Please send M558 with no parameters to check whether the configuration you provided was accepted.
@frnknstn518 said in klicky probe setup help:
M558 P8 C"!121.io2.in" X0 Y0 Z1 H3F200 T5000 ; K is probe type, P5 for NC switch, C input pin, H is dive height, F is probing speed, T is travel speed, A is number of probes
The comment says it is a NC switch, however you have used a ! at the start of the pin name, which would be correct for a NO switch.