No description
Find a file
Vladimir Vukicevic 19d1d0e2f1 kalico compat fix
2025-12-15 08:37:49 -08:00
.github Create FUNDING.yml 2025-03-23 04:27:26 -07:00
eddy-ng Fix typo in PRODUCT_LDC1612_INTERNAL_CLK case (#93) 2025-09-01 16:16:50 -07:00
.gitignore Initial standalone eddy-ng repository 2025-02-01 09:29:27 -08:00
.ruff.toml ruff back to 140 line length 2025-03-01 21:23:19 -08:00
__init__.py Update install.py and setup 2025-04-03 21:04:27 -07:00
install.py Update install.py to properly uninstall old installation from Kalico 2025-04-12 10:29:20 -07:00
install.sh Update install.py and setup 2025-04-03 21:04:27 -07:00
klipper.patch Don't patch bed_mesh; also symlink instead of copying files 2025-02-27 12:05:18 -08:00
ldc1612_ng.py Add a new sensor type 'ldc1612_internal_clk' that uses the ldc1612 chip's internal oscillator (#87) 2025-08-31 12:42:33 -07:00
LICENSE Initial standalone eddy-ng repository 2025-02-01 09:29:27 -08:00
probe_eddy_ng.py kalico compat fix 2025-12-15 08:37:49 -08:00
pyrightconfig.json Speed up probing calculations; speed up graphs; clean up sampler data gathering; add experimental bed mesh 2025-04-06 13:43:52 -07:00
README.md Update README.md 2025-10-07 21:56:16 -07:00

eddy-ng

Note: October 2025 -- life has gotten quite busy lately, so I've been much slower to respond to issues and make updates. Apologies, will get back to it soon!

eddy-ng improves the Eddy current probe support in Klipper to add accurate Z-offset setting by physically making contact with the build surface. These probes are very accurate, but suffer from drifts due to changes in conductivity in the target surface as well as changes in coil parameters as temperatures change. Instead of doing temperature compensation (which is guesswork at best), eddy-ng takes a more physical approach:

  1. Calibration is performed at any temperature (cold).
  2. Z-homing via the sensor happens using this calibration, regardless of current temperatures. This is a "coarse" Z-home -- it is not accurate enough for printing, but is sufficient for homing, gantry leveling, and other preparation.
  3. A precise Z-offset is taken with a "tap" just before printing, with the bed at print temps and the nozzle warm (but not hot -- you don't want filament drooling or damage to your build plate).
  4. At the same time as the tap, the difference between the actual height (now known after the tap) and what the sensor reads at that height is saved. This offset then gets taken into account when doing a bed mesh, because it indicates the delta (due to temperatures) between what height the sensor thinks it is vs. where it actually is.

This is a standalone eddy-ng repository, intended to be integrated into your own Klipper installation.

Support

Questions? Come ask on the Sovol 3D Printers Discord at https://discord.gg/Zg45rA52G7 in the eddy-ng forum. (Nothing Sovol-specific in eddy-ng, just where all this work started! You can also find the server via the Discover tab in Discord, then Sovol 3D Printers)

You can also file issues in this eddy-ng github repo.

Installation

  1. Clone this repository:
cd ~
git clone https://github.com/vvuk/eddy-ng
  1. Run the install script:
cd ~/eddy-ng
./install.sh

(If your klipper isn't installed in ~/klipper, provide the path as the first argument, i.e. ./install.sh ~/my-klipper.)

  1. Follow the rest of the full eddy-ng setup instructions that are available in the wiki.

Updating

Run a git pull and then run ./install.sh again:

cd ~/eddy-ng
git pull
./install.sh