Custom Firmwares for Anycubic Vyper

Custom firmwares for Anycubic Vyper


All files on this page are posted for informational purposes only. You use them at your own risk.

  • Community Edition:
    • Community Edition v6.1e firmware for Anycubic Vyper v0.0.6.
      • Anycubic Vyper Board Firmware v6.1e
        • Parking XY speed decreased, parking Y speed increased.
        • Nozzle parking height at G27 and at idle increased from 2 to 5 mm.
        • Changed Anycubic Vyper print head parking after table calibration.
        • “Kick” to start blowing fans increased from 100 to 600ms.
        • Shutdown of motors during idle / pause increased to 4 min. Was 2 min.
        • For direct (Di) retraction when printing a table test set to 2mm.
        • Reduced nozzle lift speed after test printout.
        • For direct (Di) default length of loading / unloading of filament set to 110mm
        • Reduced nozzle descent speed when parking on the Leveling screen.
      • Anycubic Vyper Screen Firmware v6.1e
        • Added display of remaining print time
        • Calibration of the table by 4×4 (16) or 7×7 (49) points
        • Complete transition to DGUS_Tool v8.2.1.15
        • Added item Leveling Setup from Leveling menu to Setup menu.
        • The Restore Factory Setting button now needs to be held down for about 2s.
        • Added information about screen firmware version to Info menu.
        • Added display of temperatures on yellow screens of thermal errors.
        • Various visual fixes and adjustments.
        • Increased nozzle and table temperature ranges for special firmwares.
        • Correction of various errors in the code.
    • Community Edition v6.1d firmware for Anycubic Vyper v0.0.6 (board and display) Source and description on github
      • Anycubic Vyper Main board firmwarev6.1d1
      • Fixed Z-offset problems.
        • Z-Offset is now set also after parking.
        • Some constants updated to Vyper spec.
        • Parking adjusted more accurately to the lower left corner.
        • Parking button in the table calibration screen now parks in the center of the table to manually set the Z-Offset.
        • Reduced possible collision with the table when parking in the center of the table, without/before calibration (see above).
        • Now M300 works and plays sounds like with stock firmware.
        • Probing has speed up a bit.
      • Anycubic Vyper Screen firmware v6.1d1
        • Changed the description on the Liveling/Z-Offset page.
        • Minor fixes.
    • Community Edition v6.1c firmware for Anycubic Vyper v0.0.6 board (DANGEROUS BUGS! Problems with Z-offset) Source and description on github.
      • with linear advance and junction deviation enabled
      • Anycubic Vyper Screen main board v6.1c
        • Fix not being able to control part cooling fan between 0 and 100%. Part cooling fan percentage could not be set, it was either on 100% or off 0%. A timer was being used for two different purposes so allocate a different timer for temperature monitoring. The fans are run at a low frequency to prevent whining when at less than 100%.
        • Fix issues with G26 mesh test printing. If cancelled during warm up or prime phases at the start of mesh printing the head and bed can move in unexpected ways and may crash the nozzle into the bed.
        • Sound control option in settings now controls start tune as well as beeps, i.e. can disable beeps and starting tune.
        • Auto power loss recovery is disabled by default. This feature is not effective in recovering prints. Disables writing of the recovery (PLR) file at each layer which may be causing SD issues. Can be enabled if required using M413 S1 followed by M500.
        • No longer moves to centre of bed after leveling. Not useful with Vyper fixed bed when using both Z homing sensors.
        • Enable probe taring using Marlin functions. Allows normal functions to be used, compatible with standard Marlin tree.
        • Add define to enable nozzle Z homing on bed.
        • Remove DMA support for ADC readings. Required a modified Arduino STM32 framework and would not compile with standard framework. Power loss monitoring now uses normal ADC reading routines
        • Enable ABL bilinear subdivision leveling. Uses Catmull-Rom method to give 10×10 leveling points from a 4×4 physical probe. Should follow bed more accurately between probed points when printing
        • Remove backlash compensation. Not required since anti-backlash nuts are fitted to the Vyper Z rods
        • Allow 5 G-code macros. Up to 5 G-code macros can be stored temporarily and used during a print. They are not stored in eeprom and so will be forgotten after powering off. The macros are referenced through M810 to M814 and may be up to 50 bytes in length.
        • Enable cancel object reporting. Cancel object is supported with M486 and will now be reported as a status message. Useful for use with Octoprint.
      • Anycubic Vyper Screen main board v6.1c
        • More readable font for variable values.
        • Adjusted the size, position, kerning of the font in the cells.
        • Found bugs are fixed.
    • Community Edition v6.1 beta Firmware for Anycubic Vyper v0.0.6 board (DANGEROUS BUGS! somebody has problems with leveling and cooling)
      • Realtime temperatures, z-offset, fan speed;
      • Support for manual bed leveling with showing current bed mesh values;
      • E-steps calibration;
      • PID tuning (thermistor calibration for better temperature reading);
      • Control over screen brightness and screen timeout;
      • Turns on and off the filament sensor and the power-off recovery function;
      • Preheat profiles for different materials;
      • Better menu organization;
      • Support UART for TMC2209 (required hardware mod for Anycubic Vyper’s mainboard)
  • Zombie Vyper
  • Marlin 3D Printer Firmware v2.4.5 for Anycubic Vyper firmware v0.0.6 board

Some custom firmwares problems and solutions

A possible solution for Z-offset with v6.1c Firmware for Anycubic Vyper

For each new print I have to raise Z-offset
Try a level with a z offset of 0, start a print and set the z offset and then level again, this will add the offset to the mesh and then use it in subsequent prints.