Skip to content

Z Tramming for 3d printers running Klipper, that do not have separate drivers for the z axis.

License

Notifications You must be signed in to change notification settings

Jomik/klipper-z-tramming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Z Tramming for Klipper

Z Tramming for 3d printers running Klipper, that do not have separate drivers for the z axis.

Why should you use this?

If the printer is not perfectly square, the z axis will not move in level. This means your nozzle could be at different heights at different sides of the bed.

Some 3d printers, like the Sovol SV06, do not have separate drivers for the z axis. Thus automatic calibration of the axis is not possible, as the motors are not independent.

This is a solution to this problem. But it requires some manual adjustments of the z axis motors.

How does it work?

The macro probes each side of the bed, then calculates the amount you need to rotate one of the motor screws. If we have to rotate clockwise by 1 hour and 20 minutes, it means that we need to rotate the motor 1 full rotation for the hour, then another third of a rotation for the 20 minutes. Calculation is done using the lead of your lead screw. This is the only input you need to provide.

As more people use this and contribute, I will strive to keep a list so that it becomes easy.

How to use it?

Simply run the Z_TRAMMING in your console. Your printer will probe and then use Mainsail's prompt to inform you what to do next. Continue till you are happy.

⚠️ WARNING: This macro will disable your z stepper without informing Klipper. Ensure you run G28 Z if you abort without using the prompt. See this for the reason.

How to install it?

To ease installation, there is a script you can simply curl and execute.

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Jomik/klipper-z-tramming/main/install.sh)"

Then you only need to configure your lead screw lead. See How to configure it?.

Manual installation

  • Clone this repository to your printer's Klipper host.
git clone https://github.com/Jomik/klipper-z-tramming.git ~/z_tramming
  • Symlink it to your config folder.
ln -s ~/klipper-z-tramming/macros/z_tramming.cfg ~/printer_data/config/z_tramming
  • Copy the z_tramming_settings.cfg to your config folder.
cp ~/klipper-z-tramming/macros/z_tramming_settings.cfg ~/printer_data/config/z_tramming_settings.cfg
  • Include the macros in your printer.cfg by adding these lines:
[include z_tramming_settings.cfg]
[include ./z_tramming/z_tramming.cfg]
  • Add the repo to moonraker
cat >>$HOME/printer_data/config/moonraker.conf <<EOF
[update_manager Z_Tramming]
type: git_repo
channel: dev
path: ~/z_tramming
origin: $origin
managed_services: klipper
primary_branch: main
EOF

How to configure it?

Open z_tramming_settings.cfg and uncomment the line with variable_screw_lead, set the number to your lead. The lead is the distance the screw moves in one rotation. It is calculated by multiplying the pitch with the number of starts of the screw. So a 2mm pitch, 4 start screw has a lead of 8mm. You can look at the examples in the file for some known values.

Alternatives

About

Z Tramming for 3d printers running Klipper, that do not have separate drivers for the z axis.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages