Skip to content

Stock Firmware (Marlin Based)

The official stock firmware is based on the Marlin 2 firmware (v2.?.?).

You can either

In case you want to build and compile your own firmware.bin file, you can follow the instructions of @jojos38 Tutorial: How to build Anycubic Marlin sourcecode into a firmware.bin.


Update Procedure

To update the firmware of your printer, unzip the compressed rar file and copy the file firmware.bin onto the microSD card.
Turn off the printer and plug the card into the cardreader which is located at the front of the frame (next to the USB connector). The card must be inserted with the contacs facing upwards.
Then turn on your printer. You'll see a black screen with "Updating Firmware..." displayed.
After a certain time the Anycubic logo will appear and shortly after that the regular main screen will appear.
Shut down the printer again and take out the card (push it in a bit to unlock it and make it come out a bit, then just pull it out).
Turn on the printer again, go to "Menu" and then "About" and check if the correct firmware version is displayed.
If so, everything is fine. If not, check if you really copied the correct version onto the card and proceed the update again.


Default Settings

In the following I'll list the (imho) most important settings from the files

The following represents the state of the firmware version 1.5.6.3.
You can find the files Configuration.handConfiguration_adv.h here: https://github.com/ANYCUBIC-3D/Kobra2_Neo/tree/main/Marlin

Note: I'll add the content asap, until then please have a look at the files yourself.


Known 'Restrictions'

In case you didn't want to look into the belonging config files or the above 'summary' yourself, let me point out the (imho) most important 'restrictions' that apply to this model.

In the following I'll list the default values for certain settings. Some of them you probably have to adjust (like the e-steps "E0 = 455 steps/mm)"), some of them you can adjust (like the maximum feed rates).
Even though many YouTube videos and other tutorials tell you to adjust the setting for the steps of the X, Y and Z motors for calibration, I strongly recommend not doing so! The steps for the motors of the axes are determined by the specs of the hardware and shouldn't be changed!
However, be careful when changing any settings and keep in mind what the original setting was.

The settings are always shown in the following order: X, Y, Z, E0 (= extruder)


Default Axis Steps Per Unit

/**
 * Default Axis Steps Per Unit (linear=steps/mm, rotational=steps/°)
 * Override with M92
 *                                      X, Y, Z [, I [, J [, K...]]], E0 [, E1[, E2...]]
 */
#define DEFAULT_AXIS_STEPS_PER_UNIT   { 80, 80, 400, 455}
Info

During the calibration of your printer it might be necessary to adjust the settings of the steps for the extruder (E0).
Even though many YouTube videos and other tutorials tell you to adjust the setting for the steps of the X, Y and Z motors for calibration as well, I strongly recommend not doing so! The steps for the motors of the axes are determined by the specs of the hardware and shouldn't be changed!


Default Max Feed Rate

/**
 * Default Max Feed Rate (linear=mm/s, rotational=°/s)
 * Override with M203
 *                                      X, Y, Z [, I [, J [, K...]]], E0 [, E1[, E2...]]
 */
#define DEFAULT_MAX_FEEDRATE          { 300, 300, 5, 25 }
Limited Retraction Speed

So in case you were trying to find the optimum retraction speed and therefore printing retraction towers and wondered why there wasn't any real difference between e.g. 30mm/s, 40mm/s and 50mm/s, the reason is simple - they just didn't apply!

Yes, you've read correct: the retraction speed you set at your slicer got ignored in case it was higher than 25mm/s, because 25mm/s is the limit for the feed rate which is set in the firmware.
Kinda 'sweet', isn't it? I know what you're thinking right now, I thought the same.. ;)

As you can see above, the "DEFAULT_MAX_FEEDRATE" for E0 (which is the extruder) is set to 25mm/s.

So in case you want or need to set this value higher (do at your own risk though!), see the expandable box below.

Setting a Higher Maximum Value for Retraction Speed

If you want to set a higher maximum value for the retraction speed, you can do it as in the following description (do at your own risk though!).

  • Open OctoPrint or whichever program you use to get access to a terminal for sending G-codes directly to the printer.
  • Type in M503 to get a report of the settings. If you scroll up at the beginning of the output, you'll see these lines:
    Recv: echo:; Maximum feedrates (units/s):
    Recv: echo:  M203 X300.00 Y300.00 Z4.00 E25.00
    
    E25.00 is the maximum retraction speed that's possible due to the default setting of the firmware. Anything above it coming from the slicer as a command is being ignored, anything lower will be taken into account (as these are the limits).
  • Now type in e.g. M203 E50 to set the new limit to 50mm/s (choose this value wisely and use small increments to go higher).
  • After doing so, type M500 to store the new value in the EEPROM.
  • To check if everything got applied and saved now, you can either query M501 or switch off the printer, switch it on again and check the settings with M503 again.
    The abovementioned line should be changed to this now:
    Recv: echo:; Maximum feedrates (units/s):
    Recv: echo:  M203 X300.00 Y300.00 Z4.00 E50.00
    

Now you can start trying to find the best retraction speed that may be above 25mm/s by printing retraction towers.


Default Max Acceleration

/**
 * Default Max Acceleration (speed change with time) (linear=mm/(s^2), rotational=°/(s^2))
 * (Maximum start speed for accelerated moves)
 * Override with M201
 *                                      X, Y, Z [, I [, J [, K...]]], E0 [, E1[, E2...]]
 */
#define DEFAULT_MAX_ACCELERATION      { 3000, 3000, 500, 10000 }

Default Acceleration

/**
 * Default Acceleration (speed change with time) (linear=mm/(s^2), rotational=°/(s^2))
 * Override with M204
 *
 *   M204 P    Acceleration
 *   M204 R    Retract Acceleration
 *   M204 T    Travel Acceleration
 */
#define DEFAULT_ACCELERATION          3000    // X, Y, Z and E acceleration for printing moves
#define DEFAULT_RETRACT_ACCELERATION  3000    // E acceleration for retracts
#define DEFAULT_TRAVEL_ACCELERATION   3000    // X, Y, Z acceleration for travel (non printing) moves

Jerk Limits

/**
 * Default Jerk limits (mm/s)
 * Override with M205 X Y Z . . . E
 *
 * "Jerk" specifies the minimum speed change that requires acceleration.
 * When changing speed and direction, if the difference is less than the
 * value set here, it may happen instantaneously.
 */
#define CLASSIC_JERK
#if ENABLED(CLASSIC_JERK)
  #define DEFAULT_XJERK 10.0
  #define DEFAULT_YJERK 10.0
  #define DEFAULT_ZJERK  0.3

...

#define DEFAULT_EJERK    5.0  // May be used by Linear Advance


Mods

Once I'll come across compiled and modded versions of the original firmware which are being offered by users, I'll list them here.

Warning

Use at your own risk!


ko-fi