Skip to content

Instantly share code, notes, and snippets.

@utlandr
Last active September 4, 2025 23:13
Show Gist options
  • Select an option

  • Save utlandr/c3dab6bbcca1fc19dfc402d81cfd75e4 to your computer and use it in GitHub Desktop.

Select an option

Save utlandr/c3dab6bbcca1fc19dfc402d81cfd75e4 to your computer and use it in GitHub Desktop.
Klipper probe config for the BIQU Microprobe (V1/V2)
## --- BIQU Microprobe Klipper configuration ---
# Not much different from a standard probe config. The
# main difference compared to most probes is to disable
# deactivating the probe (PROBE_UP) after each sample
#
# You can either copy pasta this directly or import
# into your config.yml using [include microprobe.cfg]
#
# Note: if you are changing from a bltouch or one of its
# clones, remove/comment out the [bltouch] config!
# That also includes any auto generated config stored
# at the bottom by the PROBE_CALIBRATE command
#
# Note: the current control and sensor pin values are
# configured for the 'BTT SKR E3 mini V2' controller
# board. You may need to update these values depending
# on your controller board model.
#
# Update (2023-10-17): This config is configured for
# the V1 microprobe. V2 users must update the
# polarity of the sensor pin in the config to be
# pull-down (^!) not pull up (^)
[gcode_macro PROBE_DOWN]
gcode:
SET_PIN PIN=probe_enable VALUE=1
[gcode_macro PROBE_UP]
gcode:
SET_PIN PIN=probe_enable VALUE=0
[output_pin probe_enable]
pin: PA1 # Set to the control pin on your board
value: 0
[probe]
pin: ^PC14 # NOTE FOR V2 users: Set this to ^!PC14 to set the low level trigger
deactivate_on_each_sample: False
x_offset: -40
y_offset: -35
z_offset: 0 # Will be overridden when you do a PROBE_CALIBRATE
samples: 2
samples_tolerance: 0.05
samples_tolerance_retries: 3
activate_gcode:
PROBE_DOWN
G4 P500
deactivate_gcode:
PROBE_UP
@utlandr
Copy link
Author

utlandr commented Mar 4, 2024

@cylon1975 I found the manual for V2 probe :) . It has a section for the Manta 8P. The configuration is quite different depending on whether you have the M8P v1.1 or the M8P v2.0.

https://github.com/bigtreetech/MicroProbe/blob/master/MicroProbe%20V2%20User%20Manual_20240304.pdf

^!PB2 Is what you want for your sensor pin (pull down configuration since you are using a Microprobe V2)
PB1 Is you control pin

@cylon1975
Copy link

@cylon1975J'ai trouvé le manuel de la sonde V2 :) . Il dispose d'une section pour le Manta 8P. La configuration est assez différente selon que vous possédez le M8P v1.1 ou le M8P v2.0.

https://github.com/bigtreetech/MicroProbe/blob/master/MicroProbe%20V2%20User%20Manual_20240304.pdf

^!PB2Est-ce que vous voulez pour la broche de votre capteur (configuration déroulante puisque vous utilisez une Microprobe V2) PB1Est-ce que vous contrôlez la broche

Hello and thank you for your quick response !! I finally succeeded by copying the script list by creating a fileMicroProbe.cfgand report this file inprinter.cfg!! Thanks again for the help !!                                                                                                                                                                 

@SlinkySlonkyOlivia
Copy link

@PaulStep61 You need to tab all the gcodes that you call.

gcode:
SET_PIN PIN=probe_enable VALUE=1

This does not work, it should rather be:

gcode:
    SET_PIN PIN=probe_enable VALUE=1

Otherwise klipper will see it as its own variable inside the config, rather than the gcode belonging to a variable.

@ma3oun
Copy link

ma3oun commented Jun 3, 2024

Important note for V2 users, especially those coming from the world of Marlin. The BTT SK3 Mini E3 V3 + Marlin usually requires the use of the Z_STOP connector on the board to be connected to the probe (thus removing the need for the physical Z endstop). However, this means that the probe pin would need to be set to ^!PC2 (and not ^!PC14) for the probe not to smash on the printbed.
In brief, here are the important parts of the configuration file:

[stepper_z]
step_pin: PB0
dir_pin: PC5
enable_pin: !PB1
microsteps: 16
rotation_distance: 8
endstop_pin: probe:z_virtual_endstop
position_min: -2
#position_endstop: 0
position_max: 250

#...

# required for any probe, bltouch...Adjust the X,Y values to your printer. I use an Ender3-pro
[safe_z_home]
home_xy_position: 135,135
z_hop: 5

[gcode_macro PROBE_DOWN]
gcode:
    SET_PIN PIN=probe_enable VALUE=1

[gcode_macro PROBE_UP]
gcode:
    SET_PIN PIN=probe_enable VALUE=0

[output_pin probe_enable]
pin: PA1  # Set to the control pin on your board
value: 0

[probe]
pin: ^!PC2
deactivate_on_each_sample: False
#adjust offsets to fit your configuration
x_offset: 38
y_offset: -29.5
z_offset: 0
samples: 2
samples_tolerance: 0.05
samples_tolerance_retries: 3
activate_gcode:
    PROBE_DOWN
    G4 P500
deactivate_gcode:
    PROBE_UP

@Edikxp
Copy link

Edikxp commented Jan 27, 2025

Hi. When trying again, the probe does not lower

@Edikxp
Copy link

Edikxp commented Jan 27, 2025

[gcode_macro PROBE_DOWN]
gcode:
    SET_PIN PIN=probe_enable VALUE=1

[gcode_macro PROBE_UP]
gcode:
    SET_PIN PIN=probe_enable VALUE=0

[output_pin probe_enable]
pin: PB0  # Set to the control pin on your board
value: 0

[probe]
pin: ^!PA7  # NOTE FOR V2 users: Set this to ^!PC14 to set the low level trigger 
deactivate_on_each_sample: False
x_offset: -40
y_offset: -35
z_offset: 1.5  # Will be overridden when you do a PROBE_CALIBRATE

samples: 2
sample_retract_dist: 3.0
samples_tolerance: 0.1
samples_tolerance_retries: 3
speed: 5.0

activate_gcode:
    G4 P500
    PROBE_DOWN
  
deactivate_gcode:
    
    PROBE_UP
    G4 P500


[safe_z_home]
home_xy_position: 117,117
z_hop_speed: 5

[bed_mesh]
speed: 120
horizontal_move_z: 5
mesh_min: 15, 15
mesh_max: 205, 205
probe_count: 5,3
algorithm: bicubic
fade_start: 1
fade_end: 10
fade_target: 0

@utlandr
Copy link
Author

utlandr commented Feb 4, 2025

@Edikxp What control board is your printer using?

@jakehiggs0
Copy link

jakehiggs0 commented Feb 18, 2025

I also cannot seem to get my probe to lower. It will work fine to do a bed mesh however it does does not stow the probe once down. the macro to deploy the probe works, only if it has not been deployed yet, but the one to retract does not. on start up it does complete the 3 movements up and down. I am using a BTT Pico.

Edit: it does seem to time out and stow after several minutes of it being up

Microprobe

[output_pin probe_enable]
pin: gpio29 # The control IO pin
value: 0 # Probe default retracted

[probe]
pin: ^!gpio22
deactivate_on_each_sample: False
x_offset: 25
y_offset: 23
#z_offset: -0.8
speed: 10
samples: 2
sample_retract_dist: 3.7
samples_tolerance: 0.05
samples_tolerance_retries: 3
samples_result: median
activate_gcode:
PROBE_DEPLOY
G4 P200
deactivate_gcode:
PROBE_RETRACT

@utlandr
Copy link
Author

utlandr commented Feb 18, 2025

Your config doesn't include the PROBE_DEPLOY and PROBE_RETRACT macros, so maybe check those are are equivalent to the PROBE_DOWN and PROBE_UP macros.

@Edikxp
Copy link

Edikxp commented Feb 18, 2025

@utlandr
I got it, I increased the delay

activate_gcode:

    PROBE_DOWN
    G4 P900

@utlandr
Copy link
Author

utlandr commented Feb 18, 2025

Nice!

@jakehiggs0
Copy link

sorry, my macros are in a separate config file. I was able to get it to work by putting a 10k pulldown resistor on the servo line, Gpio 29 for the pico.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment