How to Calculate the Optimal Ender 3 (Pro/V2) Acceleration and Jerk Values?

When configuring your 3D printer before moving forward with the printing process, the parameters that stick out the most are the ones that require frequent re-tuning based on factors such as the filament you’re using and the model you’re printing, such as the print temperature, the bed temperature, and the cooling fan speed.

On the other hand, in reality, a 3D printer firmware comes with many other, more advanced parameters that, while usually will work just fine with the default values, are up for further configuration and fine-tuning that can take the quality of your prints to the next level if you can find the more optimized values.

In today’s article, we will be diving into some of these advanced parameters of an Ender 3’s configuration, which are acceleration, the parameter responsible for determining how quickly the printhead speeds up to max speed, and jerk, the parameter responsible for determining the minimum speed that the printhead can drop to when slowing down.

So, how to calculate the optimal acceleration and jerk values for the Ender 3?

The process of calculating the optimal acceleration and jerk values for your Ender 3 is all about running a series of test prints by increasing or decreasing the values each time based on the observations you have made until you find the figures that produce the highest-quality prints.

Moving forward, we will further examine the process of calculating optimal acceleration and jerk values for the Ender 3, go through the configuration process in detail, and finally, find out how to set them specifically in the Cura slicer interface to make things easier.

How to Calculate the Optimal Ender 3 (Pro/V2) Acceleration Value?

Since how quickly the printhead speeds up depends on the acceleration value you set, how your 3D printer performs in scenarios where the printhead has to slow down and speed up again, such as turning a corner, is highly affected by how optimal the acceleration value is.

Below, you can find a step-by-step guide that you can follow to calculate the optimal acceleration value for your Ender 3:

  1. Pick two arbitrary acceleration values, with one being extremely low and the other being extremely high. Add these values together and divide the result by two.
  2. Set the value you have found in step 1 to be print acceleration (Control -> Motion -> Acceleration -> Accel) value. If the Amax X and the Amax Y values are below this figure, increase them to be equal to the Accel value.
  3. Print a test object, and observe the object for any quality issues related to using too much acceleration, such as layer shifts and missed layer lines.
  4. If you notice any issues that signify the acceleration value is too high, replace the high value you have picked in step 1 with your current acceleration value and apply the same formula again. On the other hand, if there are no issues, replace the current value with the low value instead.
  5. Set the print acceleration and XY max acceleration values to the value you have found in step 4.
  6. Repeat steps 3 to 6 until you end up on a value that reduces the print time as much as possible while not creating any quality-related issues on your model.

To understand the process better, let’s go through an example, assuming that we have picked the value of 500 for the low value, and 10000 for the high value.

Step 1 -> (500 + 10000) / 2 = 5250

Step 2 -> Accel, Amax X, Amax Y set to 5250 mm/s^2

Now, let’s assume that we have noticed some print quality issues related to the acceleration value being too high and replace the high value with what we have found in step 1.

Step 4 -> (500 + 5250) / 2 = 2875

Step 5 -> Accel, Amax X, Amax Y set to 2875 mm/s^2

Now, let’s assume there were no print quality issues after this step, meaning that we can try to fine-tune for speed now by replacing the low value.

Step 4 -> (2875 + 5250) / 2 = 4062.5

Step 5 -> Accel, Amax X, Amax Y set to 4062.5 mm/s^2

Finally, let’s assume that we are accepting the value we have found to be the optimal acceleration value, which concludes the calculation process.

How to Calculate the Optimal Ender 3 (Pro/V2) Jerk Value?

The jerk value determines the minimum speed the printhead will maintain in scenarios where it has to slow down, with turning a corner being the best example yet again, making it another vital parameter that requires optimal configuration to create high-quality prints.

Here is a step-by-step guide for calculating the optimal jerk value for your Ender 3:

  1. Pick two jerk values, one being excessively low and the other excessively high. Add these values together and divide the result by two.
  2. Set the value you have found in step 1 as the X and Y jerk values (Control -> Motion -> Jerk -> Vx-Jerk / Vy-Jerk).
  3. Print a test object, and specifically observe the corners of the object for any quality issues. While the appearance of ringing would mean the jerk values are too high, rounded and bulging corners signify the opposite.
  4. If you notice the issues that signify the jerk values are too high, swap the high value you have picked in step 1 with the current jerk value and apply the same formula again. On the other hand, for issues that point towards the jerk values being too low, swap the low value with the current jerk value instead.
  5. Set the X and Y jerk values to the value you have found in step 4.
  6. Repeat steps 3 to 6 until you end up on a value where neither ringing nor rounded corners appear.

To understand the process better, let’s go through an example, assuming that we have picked the value of 5 for the low value, and 55 for the high value.

Step 1 -> (5 + 55) / 2 = 30

Step 2 -> Vx-Jerk and Vy-Jerk set to 30 mm/s

Now, let’s assume that we have noticed some print quality issues related to the jerk value being too high and replace the high value with what we have found in step 1.

Step 4 -> (5 + 30) / 2 = 17.5

Step 5 -> Vx-Jerk and Vy-Jerk set to 17.5 mm/s

Now, let’s assume that we have noticed some print quality issues related to the jerk value being too low, meaning that we will need to replace the low value.

Step 4 -> (17.5 + 30) / 2 = 23.75

Step 5 -> Vx-Jerk and Vy-Jerk set to 23.75 mm/s

Finally, let’s assume that we are accepting the value we have found to be the optimal jerk value, which concludes the calculation process.

How to Configure the Ender 3 (Pro/V2) Acceleration Value?

When you have the optimal acceleration value for your Ender 3 at hand, the next step is to configure and save the value, which, for the most part, should be a straightforward process if you are already familiar with sending G-code commands to your 3D printer.

By following the step-by-step guide below, you can quickly and efficiently configure and permanently save the acceleration value of your Ender 3 to the new value you have found:

  1. Navigate to the Control section of the Ender 3 menu.
  2. Navigate to the Motion section.
  3. Navigate to the Acceleration section.
  4. Set the Accel, Amax Y, and Amax X values to the new value that you have found.
  5. Navigate back to the Control section.
  6. Save settings to EEPROM with the Store Settings option.

How to Configure the Ender 3 (Pro/V2) Jerk Value?

Similar to configuring your Ender 3’s acceleration value, configuring the jerk value will also require you to invoke a specific G-code command, which should be simple enough if you have a connection that allows you to issue G-code commands to your 3D printer directly.

Here is a step-by-step guide that explains how you can configure and save the jerk value of your Ender 3 permanently:

  1. Navigate to the Control section of the Ender 3 menu.
  2. Navigate to the Motion section.
  3. Navigate to the Jerk section.
  4. Set the Vx-Jerk and Vy-Jerk values to the new values that you have found.
  5. Navigate back to the Control section.
  6. Save settings to EEPROM with the Store Settings option.

How to Set Ender 3 (Pro/V2) Acceleration and Jerk in Cura?

As Cura offers a user-friendly interface for modifying almost all 3D printer-related settings, performing the configuration through Cura whenever possible is always a more favorable experience than dealing with G-code.

To set your Ender 3’s acceleration and jerk values directly in Cura, you can follow the steps below:

  1. Click the Prepare tab on the top of the Cura window.
  2. Click the rightmost pane to bring print settings up.
  3. Click the Custom button if available. Else, skip this step.
  4. Click the “three lines” icon next to the search input, and click the All button from the dropdown menu.
  5. Type “jerk” into the search input and press Enter.
  6. Check the “Enable Jerk Control” checkbox, which will make all of Cura’s jerk-related settings visible.
  7. Type “acceleration” into the search input and press Enter.
  8. Check the “Enable Acceleration Control” checkbox, which will make all of Cura’s acceleration-related settings visible.

Wrapping Up

Both the acceleration and the jerk values play a vital role in the quality of your 3D printed models, especially if you’re printing models that have many sections that require the printhead to slow down and accelerate frequently.

To quickly recap, the best way to find the acceleration and jerk values that will work most optimally for your Ender 3 is through testing, which directly allows you to see the effects of the changes you make after each iteration and fine-tune the values accordingly.

The most efficient way to conduct the testing process is to use the binary search algorithm to test the values instead of a sequential search (static increments and decrements), which will allow you to find the optimal value with fewer test prints.

As the acceleration value offers a trade-off between speed and quality, and the jerk value offers a trade-off between ringing and bulging on the corners, the most optimal values are the ones that allow you to achieve balance at the point where you don’t see severe issues related to acceleration and jerk on your 3D printed models.

Happy printing!