Anycubic Kossel PID calibration

| |

1. What is it good for?

PID regulation is necessary for consistent 3D printing.
Bad PID values can cause thermal runaway problems or at least inconstintent flow.
If you have upgraded extruder fan, extruder head, heater or hot end, you defininitely should perform PID calibration.

This guide will onstruct you how to perform a extuder PID calibration.

2. Connect printer to computer via USB

Connect the printer and turn it on.
Check if it is connected and drivers are installed – go to device manager, COM ports and check for SiliconLabs COM port

3. Download Printrun

Printrun is a program for controlling your 3D printer via USB.
I have choosen this one because it offers all I need and is very user-friendly.

After downloading the program, extract the zip and navigate to the main folder.

Double click on pronterface.exe.

Choose your printer’s COM port and click on Connect.

You should see Printer is now online in the right part of the program.

4. Perform PID calibration

Turn the motors off.
Move the head close to the bed.

Now use a Pronterface.
PID calibration starts by sending command M303 to the printer.

Turn on the cooling fan – you can do that on the printer’s LCD or by sending a command – turn on the cooling fan at 100%:
M106 S255

Start PID Calibration
The first step is to determine the targeted nozzle temperature.
In this case we are calibrating it for a PETG – 100% cooling fan, printing temperature 245°.

In this case we are using a command: M303 E0 S245 C8 which means:
M303 – Start PID calibration
E0 – Extruder 0 calibration
S245 – Target temperature 245°C
C8 – Cycles – 8 cycles of heating and cooling

More about PID autotune

Copy M303 E0 S245 C8 into Pronterface and click on Send.

After calibration you will see PID Autotune finished!

5. Saving PID values

Now is time to safe our Kp, Ki, Kd values.
You can copy them from Pronterface output.
Each value is stored like: #define DEFAULT_Kx Value
You have two options how to do that:

5.2. Updating PID values via USB and Pronterface

1) Read the new values from Pronterface
2) Fill in the values in X positions and send command: M301 PXX.XX IXX.XX DXX.XX
2) Send M500 command to save new PID values
2) Check new values by sending a M503 command

5.1. Updating PID values manually

Updating PID values for extruder is quite easy:
1) Go to menu
2) Advanced settings
3) Temperature
4) Set each P, I, D value
5) Store settings

Similar Posts


  1. It seems that Printrun is to old to run on my computer. Do you know of any alternatives that can be used the same way as in your guide? Thanks!

  2. Dobrý den,
    dnes jsem kalibroval PID pomoci Vašeho návodu. Vše bylo úspěšné až na závěr. V pronterface jsem klikl omylem na tlačítko středu a tiskárna začala narážet do krajních poloh. Rychle jsem ji vypnul a od té doby ji nejsem schopen k pronterface připojit. K počítači se připojí, ale pronterface ji nenajde.

    Nevíte prosím co s tím?

    Mockrát děkuji

    1. Čau,
      odpoj tiskárnu od PC, restartuj ji.

      Připoj k PC, zkontroluj si ve správci zařízení COM port, otevři Pronterface, zvol správný port a připoj se.

  3. Trying to do the PID calibration but it won’t connect to my computer. I have double checked the baudrate, the port and the connection but nothing. Help

    1. This happens to me from time to time.
      Assuming you have the right baudrate and COM port #, I usually find it’s because I forgot to close Cura. You can only have one related application open at a time. Even though you may not have tried to access your printer directly from your slicer it still interferes.
      Even if Cura is closed sometimes Proterface will still not connect. First do a power off/on of the printer, and try again. If it still doesn’t work then I’ve found a restart of the computer and the printer works.

  4. ciao lukas ho fatto come hai detto te del PID fatto tutto ma viene fuori ancora errore E1 puo essere che ho problemi di sonda e non legge bene i valori?

    grazie mille in anticipo

    1. I found a tip somewhere that you need to reset the connection 2 or 3 times and suddenly it connects…

  5. I have taken PID autotune with 8 cycles, three with the fan off and three with the fan on, should I take the average of these to put into the PID values?

    1. It depends on how you use it.
      If you use the printer with a fan on, use those PID values.

      If not, use those without the fan on.

      I personally print only PLA and PETG because the printer is in the same room as I live in ant it lacks any enclosure.
      So the fan is always on.

  6. Hej i Hope you can’t help.

    I try to change my PID after your guide and it works just fine until I start a new print. Then my printer is changing it by it self. I looked in cura if there is some code related to PID but can’t find any.

    Do you now what I’m doing wrong?

    I’m using Marlin firmware

Leave a Reply

Your email address will not be published. Required fields are marked *