Jump to content

Self Leveling Improvement - QIDI X Max 3


Recommended Posts

Posted (edited) · Self Leveling Improvement - QIDI X Max 3

I am trying to improve the self leveling aspect of the QIDI X Max 3 that we use at my work but am finding it difficult. For various reasons, we can't use the QIDI slicing software. While trying to use the self leveling implemented in cura, there is a chance its interfering or not saving onto the 3D printer itself. I just tried to use a Unified Bed Leveling code to add some robustness to the G29 self leveling gcode in cura (will have the code below). Unfortunately, it seems like it didn't help and I'm not skilled enough to determine if I just messed up the code. To my understanding the QIDI software does not use EEPROM. We printed out a one layer sheet across the entire and it came out quite poor, seeing improvement when it was manually adjusted, I will leave a pic of that below. The edge lifted quite a bit and it was very wavy. Any help/ideas in ways I can I can improve the self leveling would be greatly appreciated. I apologize if I'm not very clear on what the issue is, I'm quite new to 3D printing and looking for some guidance. 

 

Started with a 2.55 z offset, then went to 2.53, 2.5, and ended with 2.48 which seemed to give the best result. The bed also should probably be cleaned as there's for sure a bit of glue buildup. Going to try other offsets tomorrow and keep experimenting. 

Start G-Code:

G28

M190 S{material_bed_temperature_layer_0}

G28 Z

; Start New Leveling Code

G29 P1 ;Phase 1 – Automatically probe the bed.

G29 P2 ;Phase 2 – Manually probe points that automated probing couldn’t reach.

G29 P3 ;Phase 3 – Extrapolate values for points that automated probing couldn’t reach.

G29 P4 ;Phase 4 – Manually fine tune the mesh.

G29 S0 ;Store the mesh in EEPROM slot nn (slot .

M501 ;Load a mesh from EEPROM slot nn. (Other leveling systems use M501.)

M420 S1 ;Activate UBL Z compensation bed leveling.

M420 S0 ;Disable UBL Z compensation bed leveling.

M420 V ;Print a map of the mesh to console.

G26 ;Print a pattern to test mesh accuracy.

M421 ;Touch up mesh points by specifying a value (Z) or offset (Q).

M502 ;Restore all settings to factory defaults.

M500 ;Save settings to EEPROM

;End New Leveling Code

 

G0 X4 Y5 Z50 F6000

M109 S{material_print_temperature_layer_0}

G0 Z0.3 F600

G92 E-36.45

G1 Y120 E-27.45 F3000

G1 X6 E-27.30

G1 Y5 E-18.30

G1 X8 E-18.15

G1 Y120 E-9.15

G1 X10 E-9

G1 Y5 E0

 

 

Test Print:

Attached Images

 

IMG_0059.jpg

IMG_0058.jpg

Edited by JoeyPiff03
-Clarity
  • Link to post
    Share on other sites

    Posted (edited) · Self Leveling Improvement - QIDI X Max 3
    2 hours ago, JoeyPiff03 said:

    G29 S0 ;Store the mesh in EEPROM slot nn (slot .

    M501 ;Load a mesh from EEPROM slot nn. (Other leveling systems use M501.)

     

    If this is a marlin based system, that M501 isn't loading the mesh, it is reloading "all" EEPROM. That isn't necessarily loading the mesh you saved in S0... especially if your system is currently set to load the mesh in S3 at start. I think what you want is 

    G29 S0;

    G29 L0;

    Edited by jaysenodell
  • Link to post
    Share on other sites

    Posted · Self Leveling Improvement - QIDI X Max 3
    2 hours ago, JoeyPiff03 said:

    M502 ;Restore all settings to factory defaults.

    M500 ;Save settings to EEPROM

    Also you remove all your meshes with that M502 then store "factory settings" to EEPROM which undoes your leveling. 

     

    I think you need to start of with just a simple UBL test.

    M190 S{material_bed_temperature_layer_0}
    G28 ; do all the axes at once, there's no point in separating them once the bed is heated. 
    
    ;Run your UBL
    G29 P1
    G29 P2
    G29 P3
    G29 P4
    G29 S0
    M500 ; save the mesh to eeprom PERM so you have it post power cycle
    G29 L0 ; technically this shouldn't be needed but...
    M420 S1 ; turn on UBL
    G26 ; test print
    ; STOP HERE 

     

    The more I look through your initial post it looks like you are turning ubl on then immediately off and leaving it off and a pile of seemingly cotradictory thing. Just start simple like the above and see if that doesn't get you a decent test pattern.

    • Like 1
    Link to post
    Share on other sites

    Posted · Self Leveling Improvement - QIDI X Max 3

    It depends on your printer's firmware (because that determines what ABL routine/pattern it uses if you just run a G29) but I think you're overthinking it. For most printers a plain G29 command will perform a full ABL and then turn on bed levelling and save the mesh to its memory (though it doesn't hurt to use an M420 S like @jaysenodell suggests just to make sure it gets turned on). If it's in your startup gcode you don't really have to worry about saving it to the printer's memory because it'll run before every print (which is what I do, a couple of minutes extra to level the bed at the start of every print is better than a several hour print being ruined because the bed wasn't level).

     

    As for the Z offset: that should be entirely separate for the printer's bed levelling routine. You should figure that out with a good ol' paper test, like manually levelling the bed (if you can do that with your printer (I don't know about other manufacturers but at the very least some newer Creality models rely entirely on ABL, but they also have pressure sensors built into the build plate to determine the Z offset using the ABL probe, and it's always gotten the Z offset right for me).

  • Link to post
    Share on other sites

    Posted · Self Leveling Improvement - QIDI X Max 3
    16 hours ago, jaysenodell said:

    Also you remove all your meshes with that M502 then store "factory settings" to EEPROM which undoes your leveling. 

     

    I think you need to start of with just a simple UBL test.

    M190 S{material_bed_temperature_layer_0}
    G28 ; do all the axes at once, there's no point in separating them once the bed is heated. 
    
    ;Run your UBL
    G29 P1
    G29 P2
    G29 P3
    G29 P4
    G29 S0
    M500 ; save the mesh to eeprom PERM so you have it post power cycle
    G29 L0 ; technically this shouldn't be needed but...
    M420 S1 ; turn on UBL
    G26 ; test print
    ; STOP HERE 

     

    The more I look through your initial post it looks like you are turning ubl on then immediately off and leaving it off and a pile of seemingly cotradictory thing. Just start simple like the above and see if that doesn't get you a decent test pattern.

    I will try this today and update on how it goes, thanks!

  • 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

      • UltiMaker Cura 5.8 beta released
        Another Cura release has arrived and in this 5.8 beta release, the focus is on improving Z seams, as well as completing support for the full Method series of printers by introducing a profile for the UltiMaker Method.
          • Like
        • 1 reply
      • Introducing the UltiMaker Factor 4
        We are happy to announce the next evolution in the UltiMaker 3D printer lineup: the UltiMaker Factor 4 industrial-grade 3D printer, designed to take manufacturing to new levels of efficiency and reliability. Factor 4 is an end-to-end 3D printing solution for light industrial applications
          • Thanks
          • Like
        • 3 replies
    ×
    ×
    • Create New...