Printer Model: Hbot
MCU / Printerboard:MKS Eagle
klippy (2).log (1.4 MB)
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:
When printer idle temperature become stable.
After print start it become very unstable.
If i set up small smooth time (1 second or less) it will turn off with min_extrude_temp.
And it seems it take wrong readings without any smoothing
I find similar problem Temperature not remaining stable for a few seconds · Issue #842 · Klipper3d/klipper · GitHub but i dont know how use it with my mcu
First i think that sensor is bad and setup marlin - temperature is stable with it.
Hello @pterodaktil !
What happened to the klippy.log?
The printer.cfg is missing.
Did you delete it?
I am newable here so it was my mistake - log was very big. let me take new one
klippy (3).log (176.4 KB)
In this log i just set temperature and after it a just move had.
When priner is idle PID works exelent, but when head begin move - all become very ugly.
If i turn off smoothing it can fall temperature for more then 100C
What kind of temperature sensors are you using? (Thermistor: NTC/PTC or Thermocouple)
If you’re getting results like that when the printer is motion, I would suggest you start with looking at the output of your power supply followed by wiring.
You may also check all connectors that go to the hotend.
It may be a broken cable too.
I plug termistor directly to mcu - problem still here.
If i turn off smoothing it can fall for 100 Degrees with termistor Trianglelab T-D500
If i plug PT1000 - temperature sensor can set for few thousends degrees
If i turn off smoothing it seems like this.
temperature fall for one report and next is ok
But pid controller recive wrong data and make it unstable
The drop you are showing in the screenshot directly above is indicative of a defect in the temperature measurement.
According to the laws in our part of the universe, no temperature can drop or rise in such a split second.
I understand it
in logs without smoothing it seems like this
Stats 9141.3: gcodein=0 mcu: mcu_awake=0.001 mcu_task_avg=0.000005 mcu_task_stddev=0.000004 bytes_write=15283 bytes_read=27888 bytes_retransmit=9 bytes_invalid=0 send_seq=907 receive_seq=907 retransmit_seq=2 srtt=0.000 rttvar=0.000 rto=0.025 ready_bytes=0 upcoming_bytes=0 freq=168004107 heater_bed: target=0 temp=47.4 pwm=0.000 Host: temp=49.0 Mainboard: temp=36.3 sysload=0.64 cputime=387.481 memavail=5882796 print_time=82.282 buffer_time=0.000 print_stall=0 extruder: target=200 temp=200.9 pwm=0.188
Stats 9142.3: gcodein=0 mcu: mcu_awake=0.003 mcu_task_avg=0.000008 mcu_task_stddev=0.000009 bytes_write=16983 bytes_read=28273 bytes_retransmit=9 bytes_invalid=0 send_seq=938 receive_seq=938 retransmit_seq=2 srtt=0.000 rttvar=0.000 rto=0.025 ready_bytes=0 upcoming_bytes=0 freq=168004118 heater_bed: target=0 temp=46.8 pwm=0.000 Host: temp=49.0 Mainboard: temp=36.6 sysload=0.64 cputime=387.563 memavail=5881036 print_time=86.706 buffer_time=0.939 print_stall=0 extruder: target=200 temp=98.7 pwm=1.000
Stats 9143.3: gcodein=0 mcu: mcu_awake=0.003 mcu_task_avg=0.000008 mcu_task_stddev=0.000009 bytes_write=17350 bytes_read=28587 bytes_retransmit=9 bytes_invalid=0 send_seq=949 receive_seq=949 retransmit_seq=2 srtt=0.000 rttvar=0.000 rto=0.025 ready_bytes=0 upcoming_bytes=0 freq=168004119 heater_bed: target=0 temp=47.1 pwm=0.000 Host: temp=49.0 Mainboard: temp=36.4 sysload=0.75 cputime=387.583 memavail=5894468 print_time=86.706 buffer_time=0.000 print_stall=0 extruder: target=200 temp=200.9 pwm=0.179
200,9- 98.7 - 200.9
I think good solution is - outlier or median filter. when it take readings
A proper solution is to use good quality temperature sensors that a FREE of defects.
Again, such sharp drops usually mean that you have a HARDWARE defect.
As i see in /klipper/klippy/extras/adc_temperature.py
it take 8 samples with 0.001 second interval and take average
I think that it show something like this
And in this case it become 150
But if we will take median it will be 200
This is probably the reason why dinosaurs are extinct…
Fixing hardware issues by software never was/is/will be a good idea
I observe a relationship between speed and bursts.
If you set the speed to 100 instead of 200, the splashes disappear.
What do I need to change?
Can we softly limit the power on engines?
Here it seems to me that the problem is the derivative of power with respect to time. The iron cannot cope with the increasing load and a drawdown occurs at the reference voltage of the thermocouple.
You have a hardware problem, most likely your wires have started breaking due to mechanical fatigue.
I checked the wiring. I don’t see any problems.
With the motors turned off and the head moving manually
Only at high speeds when the engines are moving.
It’s most likely internal and not visible.
Try flexing the wires as much as possible.
I checked using the following method: with the motors turned off, I moved my head as sharply as possible with my hands. There are no drawdowns.
When moving the head at low speeds with motors (100mm/s), there are also no drawdowns. Drawdowns occur when moving with motors at speeds above 150 mm/s
What @mykepredko meant is:
- Grab the wire harness at the point where it enters the hotend assembly and bend it.
- The same at the other end of the wire harness.
I tried connecting the thermocouple with a separate wire. The result is the same.
I tried moving my head with my hands when the hotend was hot - no splashes.
Splashes occur only with rapid movements of the motors.
And one more strange thing - installed Marlin (native firmware
for the printer).
I set the PID parameters, selected manually and everything was according to the textbook on automatic control theory.
And head movements do not affect temperature readings