Ratrig VCore Z_TILT_ADJUST XY position issue

Hi,

TL;DR, The XY coordinates are ok when homing and when moving via console (klipper), but when performing Z_TILT_ADJUST they are not corresponding and way of.

I’m in the process of finishing my Ratrig VCore 3.1 500x500 printer. The XYZ axis work fine when homing and manually setting the toolhead position via Klipper. But when I perform the Z_TILT_ADJUST, the actual X and Y position are not corresponding to the configured z-tilt probe points, they are not even close. The Klipper toolhead interface does say that it is located at the correct positions, though.

I tried using the G90 and G91 gcodes before starting the Z_TILT_ADJUST, no effect. I tried switching the X and Y motors, but then it moves the wrong way.

I tried the following z-tilt probe point configurations:

X-axis only
100, 100
200, 100
300, 100
When starting from X0 Y0, the toolhead moves near the corresponding coordinates, with a difference of a few cm. So after the Z_TILT_ADJUST, it is located on X250-ish in stead of X300. Klipper says it is X300. When I then change the direction to X0 in Klipper, it bumps into the side causing the belt to slip, even though there is an endstop. I’ll guess the endstop only functions for homing. Anyway, the actual position was clearly off from the position that it thought it was at.

When starting from X250 Y250 (normally after homing), it moves relative from that point.

Y-axis only, 40mm increment
100, 100
100, 140
100, 180
With configured increments of 40mm it is making steps of around 35mm along the vertical path (Y), but it also changes the X axis a bit.

Y-axis only, 100mm increment
100, 100
100, 200
100, 300
Now with 100mm increments, it moves only 20mm and also a little on the X axis. Then after the first levelling attempt, it wants to move to negative Y and bumps onto the frame.

It really makes no sense to me. I could provide a video if that helps. Anyone any suggestions?

Thanks.

# Rat Rig V-core 3 Klipper Config
# Documentation: https://os.ratrig.com

# The first thing you'll need to do is go through this file and comment out / uncomment
# the files and/or settings you need.
# You'll be able to print just fine with this config as it is, but it is recommended
# that you follow these steps to properly calibrate your printer:
# 0) Sanity check and PID Tuning: https://www.klipper3d.org/Config_checks.html
# 1) Pressure Advance: https://www.klipper3d.org/Pressure_Advance.html
# 2) Skew Correction: https://www.klipper3d.org/Skew_Correction.html
# 3) Resonance Compensation: https://www.klipper3d.org/Resonance_Compensation.html

# Read more about klipper here: https://www.klipper3d.org/Overview.html

#############################################################################################################
### CONTROL BOARD
### Pick the board you have installed and wired in your printer.
#############################################################################################################
#[include config/boards/btt-skr-pro-12/config.cfg]
#[include config/boards/btt-octopus-11/config.cfg]
#[include config/boards/btt-octopus-11-407/config.cfg]
#[include config/boards/btt-octopus-pro-446/config.cfg]
[include config/boards/btt-octopus-pro-429/config.cfg]
#[include config/boards/btt-manta-m8p/config.cfg]
#[include config/boards/fysetc-spider/config.cfg]

#############################################################################################################
### BASE SETUP
#############################################################################################################
[include config/printers/v-core-3/v-core-3.cfg]
[include config/homing.cfg]
[include config/macros.cfg]
[include config/shell-macros.cfg]
[include config/printers/v-core-3/macros.cfg]

#############################################################################################################
### STEPPER MOTORS, DRIVERS & SPEED LIMITS
### Pick the drivers and stepper motors you're using. See the RatOS documentation for custom combinations.
#############################################################################################################
[include config/printers/v-core-3/steppers.cfg]

# UNCOOLED TMC 2209 + LDO-42STH48-2504AC
# [include config/printers/v-core-3/tmc2209.cfg]
#[include config/printers/v-core-3/speed-limits-basic.cfg]
[include config/steppers/ldo/42sth48-2504ac/5160/24v-1.6a-x.cfg]
[include config/steppers/ldo/42sth48-2504ac/5160/24v-1.6a-y.cfg]
[include config/steppers/ldo/42sth48-2504ac/5160/24v-1.6a-z.cfg]
[include config/steppers/ldo/42sth48-2504ac/5160/24v-1.6a-z1.cfg]
[include config/steppers/ldo/42sth48-2504ac/5160/24v-1.6a-z2.cfg]

# COOLED TMC 2209 + LDO-42STH48-2504AC
# This increases motor torque, positional accuracy and speed limits.
# don't enable this before your printer is fully configured and you have a fan blowing on your stepper drivers.
#[include config/printers/v-core-3/speed-limits-performance.cfg]
#[include config/printers/v-core-3/tmc2209-performance.cfg]
#[include config/steppers/ldo/42sth48-2504ac/2209/24v-1.6a-x.cfg]
#[include config/steppers/ldo/42sth48-2504ac/2209/24v-1.6a-y.cfg]
#[include config/steppers/ldo/42sth48-2504ac/2209/24v-1.6a-z.cfg]
#[include config/steppers/ldo/42sth48-2504ac/2209/24v-1.6a-z1.cfg]
#[include config/steppers/ldo/42sth48-2504ac/2209/24v-1.6a-z2.cfg]

# STEALTH MODE (Enables stealthchop and limits velocity and acceleration)
# NOTE: You still need to include one of the above stepper motor definitions.
# NOTE: This will make your printer quiter but less accurate, it's an inherent side effect of stealthchop.
#[include config/printers/v-core-3/speed-limits-stealth.cfg]
#[include config/printers/v-core-3/tmc2209-stealth.cfg]

#############################################################################################################
### PHYSICAL DIMENSIONS
### Pick your printer size
#############################################################################################################
# Remove the # from your printer size below.
# Similarly add a # in front of [include config/printers/v-core-3/300.cfg] if you have a bigger machine.
#[include config/printers/v-core-3/200.cfg]
#[include config/printers/v-core-3/300.cfg]
#[include config/printers/v-core-3/400.cfg]
[include config/printers/v-core-3/500.cfg]

#############################################################################################################
### HOMING
### Pick your probe and endstops
#############################################################################################################
# BL Touch
#[include config/z-probe/bltouch.cfg]

# Inductive/Capacitive probe
#[include config/z-probe/probe.cfg]

# Euclid probe (please read the RatOS documentation for instructions)
[include config/z-probe/euclid.cfg]

# Klicky probe (please read the RatOS documentation for instructions)
#[include config/z-probe/klicky/klicky.cfg]
#[include config/z-probe/klicky/unklicky.cfg]

# Physical endstop on X
[include config/printers/v-core-3/physical-endstop-x.cfg]
# Physical endstop on Y
[include config/printers/v-core-3/physical-endstop-y.cfg]

# Sensorless homing (Beware: this requires manual tinkering and does not work if your x/y stepper drivers
# have clipped DIAG pins). It is strongly encouraged to use physical endstops if you're a beginner.
# If you still wish to proceed, copy config/templates/sensorless-homing-tmc2209.cfg to the root directory and
# remove the # from the line below, then tune the settings in it, until you have reliable homing.
#[include sensorless-homing-tmc2209.cfg]

# If you want to only run sensorless homing on a single axis, copy the corresponding file from config/templates
# to the root directory and uncomment it below. Then tweak the settings in it until you have reliable homing.
#[include sensorless-x-homing-tmc2209.cfg]
#[include sensorless-y-homing-tmc2209.cfg]

#############################################################################################################
### INPUT SHAPER
### Enable/disable input shaper calibration
#############################################################################################################
# Uncomment this next line if you have an ADXL345 connected to your control board
#[include config/printers/v-core-3/input-shaper.cfg]


#############################################################################################################
### TOOLHEAD
### Pick your extruder and hotend
#############################################################################################################
# Extruder
#[include config/extruders/bmg.cfg]
#[include config/extruders/lgx.cfg]
#[include config/extruders/lgx-lite.cfg]
#[include config/extruders/orbiter.cfg]
#[include config/extruders/orbiter-1004.cfg] # Use this with the LDO-36STH20-1004AHG motor
#[include config/extruders/hemera.cfg]
#[include config/extruders/titan.cfg]

# Hotend
#[include config/hotends/v6.cfg]
#[include config/hotends/revo.cfg]
#[include config/hotends/dragonfly.cfg]
#[include config/hotends/rapido.cfg]
#[include config/hotends/copperhead.cfg]
#[include config/hotends/mosquito.cfg]
[include config/hotends/mosquito-magnum.cfg]
#[include config/hotends/dragon-standard-flow.cfg]
#[include config/hotends/dragon-high-flow.cfg]


#############################################################################################################
### MACRO CONFIGURATION
### Configure the behavior of RatOS macros
#############################################################################################################
[gcode_macro RatOS]
# Use absolute extrusion mode
# Set to True to use relative extrusion mode
variable_relative_extrusion: False
# Wait for extruder to reach 150 so an inductive probe (if present) is at a predictable temp.
# Also allows the bed heat to spread a little, and softens any plastic that might be stuck to the nozzle.
# Set to False to disable
variable_preheat_extruder: True
# Calibrate the bed mesh in the START_PRINT macro.
# Set to false to skip BED_MESH_CALIBRATE, it will still load the BED_MESH
# with the name "ratos", be sure to save your bed_mesh profile with that name.
# or override the _START_PRINT_BED_MESH macro to implement your own mesh handling logic.
variable_calibrate_bed_mesh: True
# Print a prime line or blob at the end of the START_PRINT macro
# set to "primeline" or "primeblob", or False to disable nozzle_priming.
variable_nozzle_priming: "primeblob"
# Park in the back when waiting for the extruder to heat up
# set to "front" to park in the front, or "center" to park in the center.
variable_start_print_park_in: "back"
# Height to park it when waiting for extruder to heat.
variable_start_print_park_z_height: 50
# Skew profile to load before starting the print
# uncomment this to use your calibrated skew correction profile.
#variable_skew_profile: "my_skew_profile"
# Park in the back after the print has ended or was cancelled.
# set to "front" to park in the front, or "center" to park in the center.
variable_end_print_park_in: "back"
# Park in the back when the print is paused.
# set to "front" to park in the front, or "center" to park in the center.
variable_pause_print_park_in: "back"
# Set the speed for travel moves in RatOS Macros in mm/s.
variable_macro_travel_speed: 300


#############################################################################################################
### PRINTER CONFIGURATION
### Customize the defaults to your specific build
#############################################################################################################
[stepper_x]
dir_pin: !x_dir_pin # Add ! in front of pin name to reverse X stepper direction
rotation_distance: 40 # 40 for 20 tooth 2GT pulleys, 32 for 16 tooth 2GT pulleys

[stepper_y]
dir_pin: !y_dir_pin # Add ! in front of pin name to reverse Y stepper direction
rotation_distance: 40 # 40 for 20 tooth 2GT pulleys, 32 for 16 tooth 2GT pulleys

[stepper_z]
dir_pin: z0_dir_pin # Add ! in front of pin name to reverse Z stepper direction
rotation_distance: 4 # 4 for TR8*4 lead screws

[stepper_z1]
dir_pin: z1_dir_pin # Add ! in front of pin name to reverse Z1 direction
rotation_distance: 4 # 4 for TR8*4 lead screws

[stepper_z2]
dir_pin: z2_dir_pin # Add ! in front of pin name to reverse Z2 direction
rotation_distance: 4 # 4 for TR8*4 lead screws

# BLTouch configuration
#[bltouch]
#z_offset: 0.0 # Adjust this to fit your setup

# Inductive probe configuration
#[probe]
#z_offset: 0.0 # Adjust this to fit your setup
#pin: ^probe_pin # For NPN NC probes such as the Super Pinda / Vinda / SupCR / Decoprobe probes.
[probe]
pin: ^probe_pin
z_offset: 1.0
x_offset: -27.942
y_offset: -16.75
speed: 15
lift_speed: 15
samples: 1                   ; number of probes to perform per sample
sample_retract_dist: 1.0




#pin: ^!probe_pin # NPN NO (refer to the specs on your probe)
#pin: probe_pin # PNP NO (refer to the specs on your probe)
#pin: !probe_pin # PNP NC (refer to the specs on your probe)

[extruder]
# Check https://www.klipper3d.org/Pressure_Advance.html for pressure advance tuning.
#pressure_advance: 0.05
nozzle_diameter: 0.4 # Remember to change this if you change nozzle diameter.
dir_pin: !e_dir_pin # Remove ! in front of pin name to reverse extruder direction
control: pid
pid_kp: 28.413
pid_ki: 1.334
pid_kd: 151.300

[heater_bed]
control: pid
pid_Kp: 22.2
pid_Ki: 1.08
pid_Kd: 114

# ADXL345 resonance testing configuration
#[resonance_tester]
#probe_points:
#    100,100,20 # 200mm printer
#    150,150,20 # 300mm printer
#    200,200,20 # 400mm printer
#    250,250,20 # 500mm printer

#############################################################################################################
### TOOLBOARD
### If you have a toolboard installed, select it here
#############################################################################################################
#[include config/boards/mellow-fly-sht-42/toolboard-config.cfg]
#[include config/boards/mellow-fly-sht-36/toolboard-config.cfg]
#[include config/boards/btt-ebb42-10/toolboard-config.cfg]
#[include config/boards/btt-ebb36-10/toolboard-config.cfg]
#[include config/boards/btt-ebb42-11/toolboard-config.cfg]
#[include config/boards/btt-ebb36-11/toolboard-config.cfg]
#[include config/boards/btt-ebb42-12/toolboard-config.cfg]
#[include config/boards/btt-ebb36-12/toolboard-config.cfg]

# If you have a toolboard installed, uncomment the following
#[include config/boards/toolboard.cfg]

# Bltouch
#[include config/toolboard/bltouch.cfg]

# Probe
#[probe]
#pin: ^toolboard:probe_pin # For NPN NC probes such as the SuperPinda / Vinda / SupCR / Decoprobe probes.
#pin: ^!toolboard:probe_pin # NPN NO (refer to the specs on your probe)
#pin: toolboard:probe_pin # PNP NO (refer to the specs on your probe)
#pin: !toolboard:probe_pin # PNP NC (refer to the specs on your probe)

# If you need to change the direction of your extruder, you can do it here.
#[extruder]
#dir_pin: !toolboard:e_dir_pin

# If you have your x endstop connected to your toolboard, uncomment these next two lines.
#[stepper_x]
#endstop_pin: toolboard:x_endstop_pin

# To use the toolboard's ADXL345 for resonance testing (input shaper calibration) uncomment the following
#[include config/toolboard/input-shaper.cfg]

#############################################################################################################
### USER OVERRIDES
### Anything custom you want to add, or RatOS configuration you want to override, do it here.
#############################################################################################################

[static_digital_output disable_max31865] 
pins: !PF8

[fan]
pin: !fan_part_cooling_pin
cycle_time: 0.00004

[extruder]
rotation_distance: 4.63
full_steps_per_rotation: 200
filament_diameter: 1.750
max_extrude_only_velocity: 60

[firmware_retraction]
retract_speed: 60
unretract_extra_length: 0
unretract_speed: 60

[tmc5160 extruder]
cs_pin: e_uart_pin
spi_software_mosi_pin: stepper_spi_mosi_pin
spi_software_miso_pin: stepper_spi_miso_pin
spi_software_sclk_pin: stepper_spi_sclk_pin
run_current: 0.707
stealthchop_threshold: 0
interpolate: False
driver_TBL: 1
driver_TOFF: 3
driver_HEND: 9
driver_HSTRT: 7

[tmc5160 stepper_x]
stealthchop_threshold: 0
interpolate: False

[tmc5160 stepper_y]
stealthchop_threshold: 0
interpolate: False

[tmc5160 stepper_z]
interpolate: False
stealthchop_threshold: 0

[tmc5160 stepper_z1]
interpolate: False
stealthchop_threshold: 0

[tmc5160 stepper_z2]
interpolate: False
stealthchop_threshold: 0

[bed_mesh]
speed: 1000

[printer]
max_velocity: 1000
max_accel: 20000
max_accel_to_decel: 10000
max_z_velocity: 30
max_z_accel: 1000
square_corner_velocity: 5

[gcode_macro RatOS]
variable_stowable_probe_position_preflight: [ 40, 60 ]
variable_stowable_probe_position_side:      [ 40, 2 ]
variable_stowable_probe_position_dock:      [ 10, 2 ]
variable_stowable_probe_position_exit:      [ 10, 60 ]

# [probe]
# x_offset: -27.942
# y_offset: -16.75
# z_offset: 1

[probe]
pin: ^probe_pin
x_offset: -27.942
y_offset: -16.75
z_offset: 1
# speed: 15
# lift_speed: 15
# samples: 1
# sample_retract_dist: 1.0

[z_tilt]
speed: 1000

z_positions:
	# 0,0
	# 250,500
	# 500,0
    -56,-17
    250,522
    -56,517

points:
	100,100
	100,140
	100,180

klipper v0.11.0-41-g9b60daf6
KlipperScreen v0.3.1-9-gb96adf5
LinearMovementAnalysis v0.9.1-5-gc4bb1d8
RatOS v2.x: v2.0.0-alpha1-82-g42a2138
RatOSTheme v2.x: v2.0.0-alpha1-0-gecb547c
crowsnest v3.0.6-16-ge214673
moonraker v0.7.1-791-ge3bcfb5
ratos-configurator v2.x-deployment: v2.0.0-alpha1-26-g450990f
timelapse v0.0.1-124-g35e3104
mainsail v2.4.1

I finally figured it out, it was because I had overwritten the [printer] configuration section without including the kinematics variable. I thought it would combine the unconfigured variables with the pre-configured variables.

Hi,

I have the same problem. After searching all the include files I commented out I still could not figure out which kinematics variable I forgot. I would appreciate if you could mention which one it is.

Thanks