Jump to content

Annoying Bug Found with plugin ChangeAtZ and Z-hopping


Recommended Posts

Posted · Annoying Bug Found with plugin ChangeAtZ and Z-hopping

Hi guys, first post not sure if this is the correct place to put this. Having some trouble with calibrating using the temperature tower. Was using google to find that there is an included plugin to change the temperature as the Z axis is changing. I want to change the nozzle temperature every 10mm starting at 225C, and changing -5C as the lay stacks up every 10mm.


Unfortunately with Z-hopping enabled (trying to reduce stringing) the Change at Z (CAZD) plugin is over-reacting with the Z hopping and leaves the default starting temperature every 10mm instead. To further clarify, i start my nozzle temperature at 225C, every 10mm i expect a drop of -5C every 10mm, but instead the nozzle stays at 225C and I have the gcode to prove it.


Beginning of gcode file...

;Filament used: 6.32503m
;Layer height: 0.2
;Generated with Cura_SteamEngine 4.8.0
M140 S65
M190 S65
M104 S225
M109 S225
M82 ;absolute extrusion mode
M201 X500.00 Y500.00 Z100.00 E5000.00 ;Setup machine max acceleration
M203 X500.00 Y500.00 Z10.00 E50.00 ;Setup machine max feedrate
M204 P500.00 R1000.00 T500.00 ;Setup Print/Retract/Travel acceleration
M205 X8.00 Y8.00 Z0.40 E5.00 ;Setup Jerk
M220 S100 ;Reset Feedrate
M221 S100 ;Reset Flowrate
G28 ;Home


Obviously it initially sets the nozzle to 225C as per "M104 S225. Great!


Now I search with notepad++ to see when the ChangeAtZ post script changes to 220C.


G1 F1200 X153.507 Y179.741 E808.19918
G1 X153.506 Y170.141 E808.51848
G1 X155.941 Y170.141 E808.59947
G1 X155.941 Y170.714 E808.61853
G1 X169.482 Y179.741 E809.1598
G1 F1500 E802.6598
M104 S220.0 T0
G1 F300 Z10
G0 F9000 X166.684 Y179.26 Z10
M104 S225.0 T0
G1 F300 Z9.8
G1 F1500 E809.1598
G1 F2400 X166.868 Y178.575 E809.1834
G0 F9000 X166.402 Y178.265
G1 F2400 X162.684 Y179.261 E809.31142
G0 F9000 X163.603 Y179.26
G1 F2400 X155.418 Y171.075 E809.69641
G0 F9000 X156.327 Y171.547
G1 F2400 X155.402 Y175.003 E809.81541
G0 F9000 X155.402 Y175
G1 F2400 X159.757 Y173.834 E809.96536
G1 F1500 E803.46536
G1 F300 Z10
G0 F9000 X161.598 Y175.061 Z10
G1 F300 Z9.8
G1 F1500 E809.96536
G1 F2400 X160.472 Y179.26 E810.10995
G1 F1500 E803.60995
G1 F300 Z10
G0 F9000 X155.333 Y178.951 Z10
G1 F300 Z9.8
G1 F1500 E810.10995


ChangeAtZ does its job in looking at Z to change temperature! Great! But with Z-Hop it goes back to >10mm resulting in a CAZD change back to 225C! Now look further down at G1F300 Z10!  ChangeAtZ did not react, resulting in the temperature to be adjusted back to 225C. The temperature should have never went back up. This happens for the rest of the temperature changes resulting in a constant 225C nozzle temperature throughout the print.


I had to manually watch the print to change the temperature at the machine for 4 hours.... not fun.


Is this a easy modification in the script or does a new plugin release need to happen?


I might know my way around python but I'm a bit rusty....


This is with a Creality Ender 5 Plus...




  • Link to post
    Share on other sites

    Posted · Annoying Bug Found with plugin ChangeAtZ and Z-hopping

    From what I understand, the ChangeAtZ plugin is a kind of legacy plugin that Cura team stuck in.  That's why it's in the Experimental section.  I believe they know it needs work.


    If you change temps at "Layer" instead of at "Height" you shouldn't have any issues.

  • Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    • Our picks

      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
      • Ultimaker Cura 5.6 stable released
        Cura now supports Method series printers!
        A year after the merger of Ultimaker and MakerBotQQ, we have unlocked the ability for users of our Method series printers to slice files using UltiMaker Cura. As of this release, users can find profiles for our Method and Method XL printers, as well as material profiles for ABS-R, ABS-CF, and RapidRinse. Meaning it’s now possible to use either Cura or the existing cloud-slicing software CloudPrint when printing with these printers or materials
        • 48 replies
    • Create New...