jlas1 / klicky-probe Goto Github PK
View Code? Open in Web Editor NEWMicroswitch probe with magnetic attachement, primarily aimed at CoreXY 3d printers
License: GNU General Public License v3.0
Microswitch probe with magnetic attachement, primarily aimed at CoreXY 3d printers
License: GNU General Public License v3.0
In the instructions for the V-Core 3 version of the probe kit, you say:
"Then take your self tapping screws and screw the microswitch in place, you should also now solder the wires to the outside pins of the switch, that way making this a Normally Connected probe."
These instructions are similar for the other probes, where the probe pins are somewhat distant from the magnets and wire is needed to connect.
But, in this version, the outside pins of the probe are already snug against the magnets, right? There are no wires to solder here, unless very short wires to ensure better connection?
This could use an additional save_gcode_state original_nozzle_location in the probe_calibrate macro. Specifically between the _probe_calibrate and dock_probe lines. I was getting an error from klipper because the nozzle wasn't in the expected location after starting the calibrate command.
Good day. Thank you very much for this amazing project. I am encountering a problem where the first reading I get from the probe is always significantly off.
Sample output (top is most recent)
10:03:04
// Probe samples exceed tolerance. Retrying...
10:03:04
// probe at 50.000,275.000 is z=6.970000
10:03:03
// probe at 50.000,275.000 is z=6.966250
10:03:01
// probe at 50.000,275.000 is z=6.963750
10:03:00
// Probe samples exceed tolerance. Retrying...
10:03:00
// probe at 50.000,275.000 is z=6.960000
10:02:58
// probe at 50.000,275.000 is z=6.937500
10:02:51
// probe at 50.000,25.000 is z=10.201250
10:02:49
// probe at 50.000,25.000 is z=10.201250
10:02:48
// probe at 50.000,25.000 is z=10.200000
10:02:46
// probe at 50.000,25.000 is z=10.200000
10:02:45
// probe at 50.000,25.000 is z=10.198750
10:02:43
// Probe samples exceed tolerance. Retrying...
10:02:43
// probe at 50.000,25.000 is z=10.196250
10:02:42
// probe at 50.000,25.000 is z=10.178750
10:02:36
// probe: open
10:02:34
// Attaching Probe
10:02:34
// probe: TRIGGERED
10:02:33
// QG Level
10:02:33
$ quad_gantry_level
10:09:56
// probe accuracy results: maximum 7.805629, minimum 7.781879, range 0.023750, average 7.800629, median 7.803129, standard deviation 0.006869
10:09:56
// probe at 83.000,297.000 is z=7.805629
10:09:55
// probe at 83.000,297.000 is z=7.805629
10:09:53
// probe at 83.000,297.000 is z=7.805629
10:09:52
// probe at 83.000,297.000 is z=7.804379
10:09:50
// probe at 83.000,297.000 is z=7.804379
10:09:49
// probe at 83.000,297.000 is z=7.801879
10:09:47
// probe at 83.000,297.000 is z=7.800629
10:09:46
// probe at 83.000,297.000 is z=7.799379
10:09:44
// probe at 83.000,297.000 is z=7.796879
10:09:43
// probe at 83.000,297.000 is z=7.781879
10:09:39
// PROBE_ACCURACY at X:83.000 Y:297.000 Z:25.000 (samples=10 retract=3.000 speed=5.0 lift_speed=5.0)
10:09:39
// probe: open
10:09:37
// Attaching Probe
10:09:37
// probe: TRIGGERED
10:09:36
$ probe_accuracy
This effect is always present/very reproducible. I've done similar tests at least 50-60 times. I rebuilt my hotend assembly to try and eliminate any slop. I also rebuilt the klicky probe 3 times (each time with new switch and assembled a little more exact) with no change. I tested at 6 points around the bed to confirm it was not the bed. The linear rail is an LDO MGN12...as far as I can tell that is the only place where any slop is present...however is is extremely small and I can only feel it with a rocking motion/not a upwards pressure motion.
I'm 100% stuck at this point. I would really appreciate your help. Thanks.
I'm running Voron2.4/afterburner with Dragon-Hotend.
When the toolhead travels over the probe, the heatblock/nozzle gets magnetized, so that the nozzle pulls the endstop rod out.
I've solved it by keeping the retract low and adding an additional "horizontal retract" afterwards.
The link at the end of the main page under " Klicky automatic Z calibration configuration" leads to a github 404 page not found error.
Whenever I run a PROBE_ACCURACY or PROBE_CALIBRATE I get the following error: Must perform … with the probe above the BED!
… Even though my probe is definitely over the bed. My probe doesn't have any wild offset values in my config:
[probe]
pin: PG11
x_offset: 0
y_offset: 21
So not sure what's going on.
Hi,
while assembling the Klicky probe, I noticed that the probe press fit helper only seems to work for the KlickyProbe_v2.stl, but not for the long and longer versions.
The 2 long / longer version wont fit into the helper
needs to be created an update guide to go from the single macro (old) to the split ones (new).
hello,
is it possible to add a script or edit the klipper code for attachable probes ?
for example the most common error is for when it doesn't detect the probe is attached or not.
what would be nice is instead of "Probe triggered prior to movement" it does the docking movements and then trys to re attach.
or after it attaches the probe it just checks if it is in the open state and if not it will try again?
thanks.
Hi,
I found the problem at #8. But as I understand it should be fixed with the new klicky-probe.cfg script which changed 7 days ago. But in my case if I try to do the Probe Calibration and want to accept I get the same error: Manual probe failed! Use TESTZ commands to position the nozzle prior to running ACCEPT.
Any suggestions? What else can I try?
I’ve assembled the Klicky probe today and I have some questions/remarks that might help improve the already excellent instructions even further.
I had planned to use the automatic Z calibration and it wasn’t too obvious that this isn’t possible with the V0.1 besides clearly stating that it needs the nozzle to trigger the endstop. I was hoping the Klicky probing would do the job. It’s probably not really necessary with such a small bed but it sounded too good.
What’s the benefit of having the Klicky as the Z endstop?
If I use it that way, what are the next steps before I start my first print? Do I have to adjust my Z offset?
Is the z_offset value of the probe affected by printed parts tolerances and should be individually measured? What are the measuring points?
What does “probe_accuracy” and “probe_calibrate” do?
The instructions end with the “first test” section. What are the next steps? I have a working Klicky probe but I’m kind of lost what I can actually do with it.
Thank you for the work done and the work that will be done!
Hi,
I have a corexy printer with moving bed (tiny-M) and I am using the macros from Klicky probe. I found a problem that during the homing override procedure, the bed is moved to the safe distance even if this is not needed. This is not good if the bed is at its lowest when the printer tries to move it.
While investigating this, I found the following in the klipper docs (https://www.klipper3d.org/Command_Templates.html): Important! Macros are first evaluated in entirety and only then are the resulting commands executed. If a macro issues a command that alters the state of the printer, the results of that state change will not be visible during the evaluation of the macro. This can also result in subtle behavior when a macro generates commands that call other macros, as the called macro is evaluated when it is invoked (which is after the entire evaluation of the calling macro).
The problem here is that when the AttachProbe macro is called on its own, the checks to move or not the bed work because checking if Z is homed will give the real answer. If the AttachProbe macro is called from anothe macro (like HomingOverrirde) the check if Z is homed will no longer give the real status, but will give it as if the calling macro was already executed (so it will always say Z is homed).
I guess this could be avoided by using some global variables instead of the home axis check in the macros themselves. I will have a go to this and see if I can make it work. But I thought to let you know in case this is something you were not aware of. This thing might affect all the checks done to the printer status from within macros if they are called nested, so probably the safest is to always check global variables in macros...
Best regards,
Daniel
using klipper with klicky probe. when trying to connect i get this message. Need help!
I was finding the magnet in the dock was too strong, and thus the probe was not being pulled out. So I've made a pull request with a modified dock that has the magnet slightly further away in the dock from the one on Klicky and found it to work better. I put a video below showing the issue.
getting this error when i include the klicky config files
homing_override and safe_z_homing cannot be used simultaneously
I want to retain the stock z endstop and use it to automatically set the z offset to the nozzle so i included the klinky-config and z calibration.cfg
There should be a documented offset on each probe for each printer.
I could use some ideas what look for on this. The v2.4 was printing fine and all worked. I updated all my file moonraker, klipper and z_calobration. So after that looks like now when tried to dock probe is drops down to far. Did something change I need to look for? https://share.icloud.com/photos/0c63r2jqQNJtYrYf1V1DQnlfg
iCloud.com
Hello,
maybe i am too dumb, but i got a problem setting this up. In klicky-variables.cfg there is this section
#Check the documentation
#Dock move
Variable_dockmove_x: 1000 # Final toolhead movement to release
Variable_dockmove_y: 0 # the probe on the dock
Variable_dockmove_z: 0 # (can be negative)
#Attach move
Variable_attachmove_x: 1000 # Final toolhead movement to Dock
Variable_attachmove_y: 0 # the probe on the dock
Variable_attachmove_z: 0 # (can be negative)
I am lost here. Nether does i know, what these parameter mean (whats is exactly "final movement to release"?), nor can i find a documentation to "Check the documentation".
What do i need to put in here?
Currently i got a Move out of range: -848.000 [...]
with the attach macro and i think these parameters are the root cause. Correct?
please.
Hello,
my QGL works normal and without problems.
But if I run a Bed_Mesh_Calibration, it probes 3-4 points and then says "Probe triggered prior to movement"
Any ideas what can cause this?
best regards
GN1G
When I'm using mesh bed leveling, my Z-offset is alsways about 0.1mm to close in the front, and 0.1mm to far in the back, with a perfect linear gradient back to front. No matter how scewed the bed actually is. I think this is because the froce needed to actuate the probe makes the bed bend more in the front than in the back.
I already upgraded to the kirigami bed, and used an switch with the lowest actuation force I could find (0.7N). Didin't anybody else have this problem?
Adding a lever to the switch brought it down to about 0.05mm difference front t o back, wich works, but still isn't pretty. And the lever is horrible for the overall accuracy.
In the coming week, Klipper will drop a range of deprecated features, including default_parameter_*
macro parameters which are still used in the Klicky macros.
was working just fine but now will act like its going to pick it up but will not and then i get the probe attach failed
Hi all,
I am trying to setup a klicky probe on an ender 3 style printer.
When I try to use the macros I'm getting this error:
Error evaluating 'gcode_macro Attach_Probe:gcode': UndefinedError: 'dict object' has no attribute 'safe_z'
Any tips on what I'm missing here??
Thanks in advance.
There should be a better documentation on each macro function
I purchased D2F-01F
Cold test deviation 0.02
But thermal test
04:16:29 Too many retries
04:16:29 Retries: 5/5 Probed points range: 0.025000 tolerance: 0.010000
04:16:29 Making the following Z adjustments:
stepper_z = -0.020592
stepper_z1 = -0.008719
stepper_z2 = -0.003670
stepper_z3 = 0.032981
04:15:56 Retries: 4/5 Probed points range: 0.047500 tolerance: 0.010000
04:15:56 Making the following Z adjustments:
stepper_z = -0.036870
stepper_z1 = 0.003566
stepper_z2 = 0.049001
stepper_z3 = -0.015697
04:15:33 Retries: 3/5 Probed points range: 0.050000 tolerance: 0.010000
04:15:33 Making the following Z adjustments:
stepper_z = -0.003463
stepper_z1 = 0.065622
stepper_z2 = -0.077409
stepper_z3 = 0.015250
04:15:06 Retries: 2/5 Probed points range: 0.075000 tolerance: 0.010000
04:15:06 Making the following Z adjustments:
stepper_z = 0.040161
stepper_z1 = -0.121584
stepper_z2 = 0.109453
stepper_z3 = -0.028030
04:14:43 Retries: 1/5 Probed points range: 0.067500 tolerance: 0.010000
04:14:43 Making the following Z adjustments:
stepper_z = -0.007756
stepper_z1 = 0.103486
stepper_z2 = -0.073116
stepper_z3 = -0.022614
Should I replace the switch?
Or change the settings?
The connector mentioned to plug into is pin 1.27 not 1.28 for SKR 1.3.
It is also possible to just leave the wiring for the inductive probe and plug in the klicky at the tool head to use the existing pin set and connector.
Hi,
when doing a G28 after reboot, Z do not move for a save XY homing procedure.
it seems there is an issue, where homing_override section check if it is necessary to move z for that.
Thanks for any help :-)
Hi,
The automatic z_calibration has a new version v0.8.1-1. Is it ok to upgrade to the lastest version while still use the macros included in this repo without any changes?
Thanks,
Kaiyuan
Hello! i want combine your klicky mod with sensor mod for ERCF on my voron V0.1
Can y have .f3d or .step file of Dragonfly_BMO_Cowling_wKlicky.stl for add a small space for cables of hall sensor.
The small space is near screw of BMO hotend.
A link of filement sensor mod https://github.com/diego589/Mini-AB-Filament-Sensor
Need to verify the possibility of detecting the bed size, using Z tilt, gantry level, mesh or screws position
In the homing_override, the y homing section that triggers if attachmove_y ==0 doesn't use the same branching as further down the code. As a result, for y oriented docks it will never call a _HOME_Y macro if one is defined, only ever calling a G28 Y0. Confused the hell out of me while I was setting up my sensorless homing :) Will submit a PR.
Will there be a Voron 0.1 Revo Cowling with integrated klicky-mount?
You write, that I need 6x3 magnets, and they should b "below the plstic" - but when I look into the CAD files, the holes are 2.8mm deep.
Using klicky as z-endstop.
I do a probe_calibrate, set the z_offset = 7.300, when it should start to print i get a "horizontal_move_z can't be less than probe's z_offset" 😭 any suggestions?
....
## [probe]
## z_offset = 7.300
Hello, I want to build a probe as part of an update of av 2.4 voron. However I’m having problems locating the mentioned microswitches on AliExpress. There are a multitude of them, just not the ones mentioned. Can anyone provide a link/name of the switches I can order?
Also, is this setup ready/being made ready for the new stealtburner toolhead?
First time I homed z and it picked up the probe, undocked, but then stopped and gave me this: !! Error evaluating 'gcode_macro SetProbeState:gcode': CommandError: Probe attach failed! But the probe is attached.
Is this possibly a signal issue? Because when testing the probe signal (query_probe) I could not get it to work properly. I have an octopus board and for prior induction probe, I split power to probe port (PB7) and signal to diag7 port (PG15) with diode. Klicky did not work on PG15, so I switched it back to the probe port PB7, but it also did not work. Both ports I used with and without the pull up (^) with no difference. It was either always triggered or always open.
EDIT: It was signal issue. I had continuity issues from the magnets not quite contacting each other, fixed by trimming wiring insulation where it bends.
create a klipper installation debug page
The mod from oc_geek is listed twice at https://github.com/jlas1/Klicky-Probe/tree/423d163e100aeaca21a1016b25b7a2b2cb087075/Printers/Voron/v1.8_v2.4_Legacy_Trident/Usermods with only a case change. I only noticed this because a case-insensitive filesystem threw a fit when I cloned the repo.
When will the Klicky probe be released for EVA toolheads?
Can you add an LGX Lite mount to the V0.1 mix? Preferably one that works wit the existing carriage mount so we can use the metal ones and/or avoid having to re-belt the the printer?
Thank you.
In line 199 in klicky-macros.cfg:
G0 X{docklocation_x|int - attachmove2_x|int} Y{docklocation_y|int - attachmove2_y} F{travel_feedrate}
The toolhead is currently traveling to the dock location at full travel speed if variable_attachmove2_x/y
is 0 (default klicky-variable.cfg). variable_dock_speed
and variable_release_speed
have no effect. The following change will prevent that from happening.
G0 X{docklocation_x|int - attachmove2_x|int} Y{docklocation_y|int - attachmove2_y} F{dock_feedrate}
I am guessing that this is unintended behavior because line 200 is travel to the dock at dock_feedrate. Also, DOCK_PROBE
doesn't slam the toolhead towards the dock at travel_speed.
What mount is used for the doublet mod? Like the mount where the switch rests on when its not used.
Hi,
I know they aren't very popular, but there are still some of us out there who like our Mosquito's and want to keep using them :)
Is there any chance for a miniAB cowling version for the Mosquito with the embedded holder? I see you have one for the Dragon and BMO Dragonfly.
The voron repo still hosts the Mosquito one.
Thanks!
Hi All,
Printer been working ok for some mnonths and I Updated Klipper and klipper_z_calibration in last days and since then my Voron 2.4 350 has been a very big paperweight.
I have updated config files like the new examples in Klicky probe Github.
I can do home and my printer moves perfectly in every axes.
When I do a QUAD_GANTRY_LEVEL print head starts to rattling very loud more or less in the same position and it fails.
If I use klipper_z_calibration config examples I can do all home and QGL procedures but when it starts to print imidieatly starts to loose steps in XY axes.
What can it be?
Hello,
When running probe_calibrate with the Klicky probe, I get an error when I try to accept the results.
Error:
Manual probe failed! Use TESTZ commands to position the nozzle prior to running ACCEPT.
If I modify Probe_Calibrate in the klicky-probe.cfg, and comment out a few lines (Dock_Probe and Restore GCODE), I am able to manually remove the probe and finish the probe calibration with a successful accepting of the results.
This is my first time creating an issue on GitHub, so if you need anything further from me, just ask.
Thanks,
Dave
I have done z offset calibration it is 7.7 and i have the horizontal z move set at 10 and when i do g32 it picks up the klicky probe then stops with the above message. need help. thanks
[mcu]
##--------------------------------------------------------------------
serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_14002A000650534E4E313020-if00
restart_method: command
##--------------------------------------------------------------------
[printer]
kinematics: corexy
max_velocity: 300
max_accel: 4000 #Max 4000
max_z_velocity: 15 #Max 15 for 12V TMC Drivers, can increase for 24V
max_z_accel: 350
square_corner_velocity: 5.0
#####################################################################
#####################################################################
[stepper_x]
step_pin: PF13
dir_pin: PF12
enable_pin: !PF14
rotation_distance: 40
microsteps: 32
full_steps_per_rotation:200 #set to 400 for 0.9 degree stepper
endstop_pin: PG6
position_min: 0
##--------------------------------------------------------------------
#position_endstop: 250
#position_max: 250
#position_endstop: 300
#position_max: 300
position_endstop: 350
position_max: 350
##--------------------------------------------------------------------
homing_speed: 25 #Max 100
homing_retract_dist: 5
homing_positive_dir: true
[tmc2209 stepper_x]
uart_pin: PC4
interpolate: false
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0
[stepper_y]
step_pin: PG0
dir_pin: PG1
enable_pin: !PF15
rotation_distance: 40
microsteps: 32
full_steps_per_rotation:200 #set to 400 for 0.9 degree stepper
endstop_pin: PG9
position_min: 0
##--------------------------------------------------------------------
#position_endstop: 250
#position_max: 250
#position_endstop: 300
#position_max: 300
position_endstop: 350
position_max: 350
##--------------------------------------------------------------------
homing_speed: 25 #Max 100
homing_retract_dist: 5
homing_positive_dir: true
[tmc2209 stepper_y]
uart_pin: PD11
interpolate: false
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0
#####################################################################
#####################################################################
[stepper_z]
step_pin: PF11
dir_pin: PG3
enable_pin: !PG5
rotation_distance: 40
gear_ratio: 80:16
microsteps: 32
endstop_pin: PG10
position_endstop: .46
##--------------------------------------------------------------------
#position_max: 230
#position_max: 280
position_max: 330
##--------------------------------------------------------------------
position_min: -5
homing_speed: 8
second_homing_speed: 3
homing_retract_dist: 3
[tmc2209 stepper_z]
uart_pin: PC6
interpolate: false
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0
[stepper_z1]
step_pin: PG4
dir_pin: PC1
enable_pin: !PA0
rotation_distance: 40
gear_ratio: 80:16
microsteps: 32
[tmc2209 stepper_z1]
uart_pin: PC7
interpolate: false
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0
[stepper_z2]
step_pin: PF9
dir_pin: PF10
enable_pin: !PG2
rotation_distance: 40
gear_ratio: 80:16
microsteps: 32
[tmc2209 stepper_z2]
uart_pin: PF2
interpolate: false
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0
[stepper_z3]
step_pin: PC13
dir_pin: !PF0
enable_pin: !PF1
rotation_distance: 40
gear_ratio: 80:16
microsteps: 32
[tmc2209 stepper_z3]
uart_pin: PE4
interpolate: false
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0
#####################################################################
#####################################################################
[extruder]
step_pin: PE2
dir_pin: PE3
enable_pin: !PD4
rotation_distance: 22.225372 #Bondtech 5mm Drive Gears
gear_ratio: 50:17 #BMG Gear Ratio
microsteps: 16
full_steps_per_rotation: 200 #200 for 1.8 degree, 400 for 0.9 degree
nozzle_diameter: 0.400
filament_diameter: 1.75
heater_pin: PA2
sensor_type: PT1000
sensor_pin: PF4
min_temp: 10
max_temp: 270
max_power: 1.0
min_extrude_temp: 170
control = pid
pid_kp = 26.213
pid_ki = 1.304
pid_kd = 131.721
pressure_advance: 0.05
pressure_advance_smooth_time: 0.040
[tmc2209 extruder]
uart_pin: PE1
interpolate: false
run_current: 0.5
sense_resistor: 0.110
stealthchop_threshold: 0
#####################################################################
#####################################################################
[heater_bed]
heater_pin: PA1
sensor_type: NTC 100K MGB18-104F39050L32
sensor_pin: PF3
max_power: 0.6
min_temp: 0
max_temp: 120
control: pid
pid_kp: 58.437
pid_ki: 2.347
pid_kd: 363.769
#####################################################################
#####################################################################
[probe]
pin:PG15
x_offset: 19.75
y_offset: 0
#z_offset: 7.5
speed: 10.0
samples: 3
samples_result: median
sample_retract_dist: 3.0
samples_tolerance: 0.01
samples_tolerance_retries: 3
#####################################################################
#####################################################################
[fan]
pin: PA8
kick_start_time: 0.5
off_below: 0.10
[heater_fan hotend_fan]
pin: PE5
max_power: 1.0
kick_start_time: 0.5
heater: extruder
heater_temp: 50.0
fan_speed: 1.0
[heater_fan my_controller_fan]
##Controller_Fan - FAN2
pin: PD12
max_power: 1.00
kick_start_time: 0.200
heater: heater_bed
[heater_fan my_controller_fan]
##Controller_Fan - FAN3
pin: P13
max_power: 1.00
kick_start_time: 0.200
heater: heater_bed
[heater_fan heater_fan]
pin: PD14
max_power: 1.0
shutdown_speed: 0.0
kick_start_time: 5.0
heater: heater_bed
heater_temp: 60
fan_speed: 1.0
#####################################################################
#####################################################################
#[output_pin caselight]
#pin: PB10
#pwm:true
#shutdown_value: 0
#value:1
#cycle_time: 0.01
#####################################################################
#####################################################################
[idle_timeout]
timeout: 1800
##[safe_z_home]
#home_xy_position:120,350
#speed:100
#z_hop:10
[quad_gantry_level]
#--------------------------------------------------------------------
#gantry_corners:
#points:
#gantry_corners:
#points:
gantry_corners:
-60,-10
410,420
points:
50,25
50,275
300,275
300,25
#--------------------------------------------------------------------
[bed_mesh]
speed: 300
horizontal_move_z:10
mesh_min: 40, 40
mesh_max: 310,310
fade_start: 0.6
fade_end: 10.0
split_delta_z: .01
move_check_distance: 3
probe_count: 5,5
algorithm: bicubic
relative_reference_index: 12
########################################
########################################
[board_pins]
aliases:
# EXP1 header
EXP1_1=PE8, EXP1_2=PE7,
EXP1_3=PE9, EXP1_4=PE10,
EXP1_5=PE12, EXP1_6=PE13, # Slot in the socket on this side
EXP1_7=PE14, EXP1_8=PE15,
EXP1_9=, EXP1_10=<5V>,
# EXP2 header
EXP2_1=PA6, EXP2_2=PA5,
EXP2_3=PB1, EXP2_4=PA4,
EXP2_5=PB2, EXP2_6=PA7, # Slot in the socket on this side
EXP2_7=PC15, EXP2_8=<RST>,
EXP2_9=<GND>, EXP2_10=<5V>
#--------------------------------------------------------------------
#####################################################################
#####################################################################
[include klicky-probe.cfg]
[gcode_macro G32]
gcode:
BED_MESH_CLEAR
G28
QUAD_GANTRY_LEVEL
G28
## Uncomment for for your size printer:
#--------------------------------------------------------------------
## Uncomment for 250mm build
#G0 X125 Y125 Z30 F3600
## Uncomment for 300 build
#G0 X150 Y150 Z30 F3600
## Uncomment for 350mm build
G0 X175 Y175 Z30 F3600
#--------------------------------------------------------------------
[gcode_macro PRINT_START]
gcode:
G32 ; home all axes
G1 Z20 F3000 ; move nozzle away from bed
[gcode_macro PRINT_END]
gcode:
# safe anti-stringing move coords
{% set th = printer.toolhead %}
{% set x_safe = th.position.x + 20 * (1 if th.axis_maximum.x - th.position.x > 20 else -1) %}
{% set y_safe = th.position.y + 20 * (1 if th.axis_maximum.y - th.position.y > 20 else -1) %}
{% set z_safe = [th.position.z + 2, th.axis_maximum.z]|min %}
SAVE_GCODE_STATE NAME=STATE_PRINT_END
M400 ; wait for buffer to clear
G92 E0 ; zero the extruder
G1 E-2.0 F3600 ; retract filament
TURN_OFF_HEATERS
G90 ; absolute positioning
G0 X{x_safe} Y{y_safe} Z{z_safe} F20000 ; move nozzle to remove stringing
G0 X{th.axis_maximum.x//2} Y{th.axis_maximum.y - 2} F3600 ; park nozzle at rear
M107 ; turn off fan
BED_MESH_CLEAR
RESTORE_GCODE_STATE NAME=STATE_PRINT_END
##---------------------------------------------------------------------------------------------------
## <---------------------- SAVE_CONFIG ---------------------->
## DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
##
## [probe]
#*# z_offset = 7.700
Hey. In Voron 2.4 sourcing there's listed Omron D2F-01L switch vs suggested Omron D2F-5. Is it possible to use same switch with this mod? I can prepare a small PR with docs update if that's possible.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.