Must calibrate probe_eddy_current first

Basic Information:

Printer Model: Custom but like voron trident
MCU / Printerboard: Btt octopus pro
Host / SBC Raspberry Pi
klippy.log

Fill out above information and in all cases attach your klippy.log file (use zip to compress it, if too big). Pasting your printer.cfg is not needed
Be sure to check our “Knowledge Base” Category first. Most relevant items, e.g. error messages, are covered there

Describe your issue:

No matter how many times I calibrate my current for my BTT eddy probe and save the config, It will still not work when homing. It seems like its not able to read the run current that Is set by the save_config or when I manually set it myself. I have added my printer.cfg and my klippy log for all to see.

printer (14).cfg (25.8 KB)

klippy (4).log (1.5 MB)

Generally order is:

  1. LDC_CALIBRATE_DRIVE_CURRENT
  2. PROBE_EDDY_CURRENT_CALIBRATE

The error above, means, the second one is not calibrated.
So, klipper can’t convert frequency data to the distance and vise versa.

Speaking other way, there should be data like following in the config:

#*# [probe_eddy_current ldc1612]
#*# calibrate =
#*# 	0.050:3272424.724,0.090:3266225.284,0.130:3260142.349,
#*# 	0.170:3254249.496,0.210:3248521.528,0.250:3242903.591,

Hope that helps.

1 Like

Now Im getting a different issue

So I have changed the z offset of my eddy probe, changed it in real life, recalibrated everything over and over again but I still get this error every time I try to home z. What is strange is that when I calibrate via PROBE_EDDY_CURRENT_CALIBRATE, I am able to home z(although it gives some frequency error) but then it will give the same error once i put SAVE_CONFIG.

The other approaches I have taken is making horizontal_move_z the same number or something that covers my min and max range to no avail either(Chat-GPT’s solution). I have also tried messing with the macros to no avail either

I left my CFG file and my klipper log if you want to take a gander. Maybe it would be better to make this a post instead.

klippy (5).log (2.7 MB)

printer (15).cfg (25.6 KB)

About Invalid probe_eddy_current height

[probe_eddy_current btt_eddy]
sensor_type = ldc1612
z_offset = -2
i2c_mcu = eddy
i2c_bus = i2c0f
x_offset = 0
y_offset = 30
reg_drive_current = 15
calibrate = 
	0.050000:3249392.363,0.090000:3248967.068,0.130000:3248306.919,
	0.170000:3247740.643,0.210000:3247192.390,0.250000:3246654.146,
	0.290000:3245982.760,0.330000:3245506.318,0.370000:3244977.799,
	0.410000:3244513.123,0.450000:3243956.501,0.490000:3243466.267,
	0.530000:3242971.154,0.570000:3242521.582,0.610000:3242007.556,
	0.650000:3241555.872,0.690000:3241103.189,0.730000:3240670.499,
	0.770000:3240166.077,0.810000:3239768.847,0.850000:3239354.711,
	0.890000:3238957.581,0.930000:3238510.015,0.970000:3238118.740,
	1.010000:3237723.412,1.050000:3237349.125,1.090000:3236939.442,
	1.130000:3236564.348,1.170000:3236201.729,1.210000:3235871.100,
	1.250000:3235451.456,1.290000:3235140.719,1.330000:3234819.712,
	1.370000:3234495.243,1.410000:3234138.247,1.450000:3233792.016,
	1.490000:3233510.583,1.530000:3233201.689,1.570000:3232895.295,
	1.610000:3232610.605,1.650000:3232306.125,1.690000:3232049.904,
	1.730000:3231704.434,1.770000:3231458.423,1.810000:3231151.428,
	1.850000:3230899.077,1.890000:3230601.498

This is your config.

Your eddy is pretty far from the bed/nozzle horizontal plane.
Your calibrated values are only within 0.05 <= z_offset <= 1.89

Frequency too noisy at step 1.890 -> 1.930
Frequency diff: 253.134, MAD_Hz: 81.173 -> MAD_Hz: 84.236
probe_eddy_current: noise 0.005237mm, MAD_Hz=50.606 in 1175 queries
Total frequency range: 18790.864 Hz
z_offset: 0.290 # noise 0.000741mm, MAD_Hz=12.436
z_offset: 0.530 # noise 0.003679mm, MAD_Hz=45.540
z_offset: 1.010 # noise 0.004947mm, MAD_Hz=48.893

Documentation suggests using 0.5 as z_offset.

Hope that helps a little.

-Timofey.


Ah, I reread the log again:

[probe_eddy_current btt_eddy]
sensor_type = ldc1612
z_offset = 2.5
i2c_mcu = eddy
i2c_bus = i2c0f
x_offset = 0
y_offset = 30
reg_drive_current = 15
calibrate = 
	0.050000:3233292.671,0.090000:3233018.183,0.130000:3232670.762,
	0.170000:3232391.698,0.210000:3232082.020,0.250000:3231825.598,
	0.290000:3231504.587,0.330000:3231234.139,0.370000:3230966.202

Your probe is simply too far to be usable at all.

Just my pure curiosity, what is the distance between the bottom of the Eddy and the nozzle/bed plane?

I would say that the optimal nozzle-to-sensor distance for BTT eddy is <2.5mm.
But it should work with 3.5 or something about that.
AFAIK, the total working range for BTT Eddy is about 10mm, so with your data above, I can guess it is about 8 mm - 1.2 mm above the nozzle, where 1.2 is the case thickness.

Also, you may consider to enable stealth on Z to make it smoother and/or increase microsteppig a little 16 → 32

40 / (80 / 16) / 200 / 16 = 0.0025 mm per step
40 / (80 / 16) / 200 / 32 = 0.00125 mm per step
1 Like

Just a small notice on the fields.
I got something similar from another Eddy.

I guess 2mm is what you can get with your current distance and noise level.

And short one calibration:

Frequency too noisy at step 0.050 -> 0.090
Frequency diff: 154.109, MAD_Hz: 62.901 -> MAD_Hz: 19.963
probe_eddy_current: noise 0.000000mm, MAD_Hz=62.901 in 25 queries
Total frequency range: 0.000 Hz
Failed calibration - No usable data

My hypothesis is,
When the toolhead moved after the paper test, the nozzle touched the bed at the new point, and tilted the toolhead.
That way, the first step, 0.05 → 0.09, got a lower frequency difference.
Because upon first movement, the movement of the sensor was not along the Z axis.
So, instead of 3249392.363 - 3248967.068 = 425.294 Hz, you got 154 Hz for the first 2 points.

Probably, this can be solved by moving the calibration anywhere where the bed a little bit flatter.

Hope that helps a little.

1 Like

Good News:

I can finally home z and probe for z-tilt which is nice

When I do a bed mesh though, it will do the entire bed mesh but on the last point it will give a warning of:

probe_eddy_current sensor not in valid range

I tried to make the bed closer to the nozzle during probing and I also tried changing the range of my bed mesh to see if my probe was going out of its set distance but nothing worked.

I wanted to know if you could see any issues in my cfg

printer (16).cfg (25.6 KB)

klippy (7).log (2.0 MB)

[probe_eddy_current btt_eddy]
z_offset = 0.29
calibrate = 
	0.050000:3233292.671,0.090000:3233018.183,0.130000:3232670.762,
	0.170000:3232391.698,0.210000:3232082.020,0.250000:3231825.598,
	0.290000:3231504.587,0.330000:3231234.139,0.370000:3230966.202

I don’t think it can be really useful with that config.
If your bed happens to be outside of 0.05 … 0.37mm range, BTT Eddy and so klipper will not be able to measure or interpret anything.

At least this is what I see in the logs.
And this is why you probably get errors with scan/rapid scan.
It may work with normal probing.

-Timofey

so I find a way to make it work with a z offset of more than 1 or 2 then it will work?

1 Like