Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    G29 on CoreXY does not move correctly

    Scheduled Pinned Locked Moved Solved
    General Discussion
    3
    50
    2.3k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Phaedruxundefined
      Phaedrux Moderator
      last edited by

      Please post all your homing files. bed.g and the results of sending M122 and M98 P"config.g"

      Z-Bot CoreXY Build | Thingiverse Profile

      TechButterflyundefined 1 Reply Last reply Reply Quote 0
      • TechButterflyundefined
        TechButterfly @Phaedrux
        last edited by

        @phaedrux Here are the homing files, bed.g, and the M122 and M98 results.

        ; homeall.g
        ; called to home all axes
        ;
        ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue May 10 2022 23:58:03 GMT-0500 (Central Daylight Time)
        G91                    ; relative positioning
        G1 H2 Z5 F6000         ; lift Z relative to current position
        G1 H1 X-325 Y280 F2500 ; move quickly to X or Y endstop and stop there (first pass)
        G1 H1 X-325            ; home X axis
        G1 H1 Y280             ; home Y axis
        G1 X5 Y-5 F6000        ; go back a few mm
        G1 H1 X-325 F360       ; move slowly to X axis endstop once more (second pass)
        G1 H1 Y280             ; then move slowly to Y axis endstop
        G1 X30 F2500           ; move to left edge of bed (X30)
        M92 X0                 ; set new X0
        G90                    ; back to absolute mode
        G1 X150 Y150 F2000     ; put head over the centre of the bed, or wherever you want to probe
        G30                    ; lower head, stop when probe triggered and set Z to trigger height
        
        ; Uncomment the following lines to lift Z after probing
        ;G91                   ; relative positioning
        ;G1 Z5 F100            ; lift Z relative to current position
        ;G90                   ; absolute positioning
        
        
        
        
        ; homex.g
        ; called to home the X axis
        ;
        ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue May 10 2022 23:58:03 GMT-0500 (Central Daylight Time)
        G91               ; relative positioning
        G1 H2 Z5 F6000    ; lift Z relative to current position
        G1 H1 X-325 F2500 ; move quickly to X axis endstop and stop there (first pass)
        G1 X5 F6000       ; go back a few mm
        G1 H1 X-325 F360  ; move slowly to X axis endstop once more (second pass)
        G1 X30 F2500      ; move to left edge of bed
        M92 X0            ; set new X0
        G1 H2 Z-5 F6000   ; lower Z again
        G90               ; absolute positioning
        
        
        
        ; homey.g
        ; called to home the Y axis
        ;
        ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue May 10 2022 23:58:04 GMT-0500 (Central Daylight Time)
        G91              ; relative positioning
        G1 H2 Z5 F6000   ; lift Z relative to current position
        G1 H1 Y280 F1800 ; move quickly to Y axis endstop and stop there (first pass)
        G1 Y-5 F6000     ; go back a few mm
        G1 H1 Y280 F360  ; move slowly to Y axis endstop once more (second pass)
        G1 H2 Z-5 F6000  ; lower Z again
        G90              ; absolute positioning
        
        
        
        
        
        ; homez.g
        ; called to home the Z axis
        ;
        G91                ; relative mode
        G1 H2 Z4 F200      ; raise head 4mm to ensure it is above the Z probe trigger height
        G90                ; back to absolute mode
        G1 X150 Y150 F2000 ; put head over the centre of the bed, or wherever you want to probe
        G30                ; lower head, stop when probe triggered and set Z to trigger height
        
        ; Uncomment the following lines to lift Z after probing
        ;G91              ; relative positioning
        ;G1 Z5 F100       ; lift Z relative to current position
        ;G90              ; absolute positioning
        
        
        
        
        
        ; bed.g
        ; called to perform automatic bed compensation via G32
        ;
        ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue May 10 2022 23:58:03 GMT-0500 (Central Daylight Time)
        M561 ; clear any bed transform
        G29  ; probe the bed and enable compensation
        
        
        
        
        ;mesh.g file
        
        ;mesh.g file
        
        ;set temps
        M568 P0 S60 R60                   ;set bed temp
        M568 P1 S200 R160                 ;set extruder temps
        M568 P0 A2                        ;set bed temp to active
        M568 P1 A2                        ;set extruder to active
        M116 H0 S5                        ;wait for bed to reach temp +-5
        M116 H1 S10                       ;wait for extruder to reach temp +-10
        
        ;prep
        G29 S2                            ;turn off mesh bed compensation
        M290 R0 S0                        ;reset baby stepping
        M208 X-30 Y0 Z0 S1                ; temporarily allow movement outside X0
        M557 X20:310 Y40:270 S20          ; define mesh grid
        
        ;get Z=0 datum
        G1 X150 Y150 F2500                ;move to center of bed
        G30                               ;set Z=0 datum
             
        ;mesh leveling	 
        G29 S1                            ;basic G29 
        
        ;finish
        G1 X0 F2500                       ; move back to X0
        M208 X0 Y0 Z0 S1                  ;reset bed minima 
        M568 P0 A0                        ;turn off bed
        M568 P1 A0                        ;turn off extruder
        

        M122:

        m122
        === Diagnostics ===
        RepRapFirmware for Duet 3 MB6HC version 3.4.0 (2022-03-15 18:57:24) running on Duet 3 MB6HC v1.01 or later (SBC mode)
        Board ID: 08DJM-956BA-NA3TN-6J9F6-3SN6N-TB8UU
        Used output buffers: 1 of 40 (12 max)
        === RTOS ===
        Static ram: 151000
        Dynamic ram: 65764 of which 388 recycled
        Never used RAM 133520, free system stack 216 words
        Tasks: SBC(resourceWait:,0.7%,478) HEAT(notifyWait,0.0%,327) Move(notifyWait,0.0%,352) CanReceiv(notifyWait,0.0%,944) CanSender(notifyWait,0.0%,374) CanClock(delaying,0.0%,342) TMC(notifyWait,7.7%,92) MAIN(running,87.2%,923) IDLE(ready,4.4%,30), total 100.0%
        Owned mutexes: HTTP(MAIN)
        === Platform ===
        Last reset 00:00:27 ago, cause: software
        Last software reset at 2022-05-17 15:58, reason: User, none spinning, available RAM 133520, slot 1
        Software reset code 0x0012 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task SBC Freestk 0 n/a
        Error status: 0x00
        Aux0 errors 0,0,0
        Step timer max interval 134
        MCU temperature: min 36.2, current 36.5, max 36.8
        Supply voltage: min 23.9, current 23.9, max 23.9, under voltage events: 0, over voltage events: 0, power good: yes
        12V rail voltage: min 12.0, current 12.0, max 12.0, under voltage events: 0
        Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
        Events: 0 queued, 0 completed
        Driver 0: standstill, SG min 0, mspos 8, reads 22043, writes 14 timeouts 0
        Driver 1: standstill, SG min 0, mspos 8, reads 22043, writes 14 timeouts 0
        Driver 2: standstill, SG min 0, mspos 8, reads 22043, writes 14 timeouts 0
        Driver 3: standstill, SG min 0, mspos 8, reads 22043, writes 14 timeouts 0
        Driver 4: standstill, SG min 0, mspos 8, reads 22047, writes 11 timeouts 0
        Driver 5: standstill, SG min 0, mspos 8, reads 22047, writes 11 timeouts 0
        Date/time: 2022-05-17 15:58:53
        Slowest loop: 1.10ms; fastest: 0.06ms
        === Storage ===
        Free file entries: 10
        SD card 0 not detected, interface speed: 37.5MBytes/sec
        SD card longest read time 0.0ms, write time 0.0ms, max retries 0
        === Move ===
        DMs created 125, segments created 0, maxWait 0ms, bed compensation in use: none, comp offset 0.000
        === MainDDARing ===
        Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
        === AuxDDARing ===
        Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
        === Heat ===
        Bed heaters 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
        === GCodes ===
        Segments left: 0
        Movement lock held by null
        HTTP* is doing "M122" in state(s) 0
        Telnet is idle in state(s) 0
        File is idle in state(s) 0
        USB is idle in state(s) 0
        Aux is idle in state(s) 0
        Trigger* is idle in state(s) 0
        Queue is idle in state(s) 0
        LCD is idle in state(s) 0
        SBC is idle in state(s) 0
        Daemon is idle in state(s) 0
        Aux2 is idle in state(s) 0
        Autopause is idle in state(s) 0
        Code queue is empty
        === CAN ===
        Messages queued 202, received 0, lost 0, boc 0
        Longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 50 (min 50), ts 138/0/0
        Tx timeouts 0,0,137,0,0,63 last cancelled message type 30 dest 127
        === SBC interface ===
        Transfer state: 4, failed transfers: 0, checksum errors: 0
        RX/TX seq numbers: 2630/2630
        SPI underruns 0, overruns 0
        State: 5, disconnects: 0, timeouts: 0, IAP RAM available 0x2b880
        Buffer RX/TX: 0/0-0, open files: 0
        === Duet Control Server ===
        Duet Control Server v3.4.0
        Code buffer space: 4096
        Configured SPI speed: 8000000Hz, TfrRdy pin glitches: 0
        Full transfers per second: 124.75, max time between full transfers: 166.9ms, max pin wait times: 68.4ms/72.5ms
        Codes per second: 2.08
        Maximum length of RX/TX data transfers: 3148/420
        

        M98 P"config.g" - I ran this in the console, but there was not response other than the command itself with a green background. Here's config.g:

        ; Configuration file for Duet 3 (firmware version 3.3)
        ; executed by the firmware on start-up
        ;
        ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue May 10 2022 23:58:03 GMT-0500 (Central Daylight Time)
        
        ; General preferences
        M575 P1 S1 B57600                            ; enable support for PanelDue
        G90                                          ; send absolute coordinates...
        M83                                          ; ...but relative extruder moves
        M550 P"Duet 3"                               ; set printer name
        M669 K1                                      ; select CoreXY mode
        
        ; Drives
        M569 P0.2 S0                                 ; physical drive 0.0 goes forwards
        M569 P0.1 S0                                 ; physical drive 0.1 goes forwards
        M569 P0.0 S0                                 ; physical drive 0.2 goes forwards
        M569 P0.3 S0                                 ; physical drive 0.3 goes forwards
        M584 X0.2 Y0.1 Z0.0 E0.3                     ; set drive mapping
        M350 X16 Y16 Z16 E16 I1                      ; configure microstepping with interpolation
        M92 X101.00 Y101.00 Z800.00 E438.57            ; set steps per mm
        M566 X900.00 Y900.00 Z60.00 E120.00          ; set maximum instantaneous speed changes (mm/min)
        M203 X6000.00 Y6000.00 Z1000.00 E1200.00      ; set maximum speeds (mm/min)
        M201 X500.00 Y500.00 Z20.00 E250.00          ; set accelerations (mm/s^2)
        M906 X800 Y800 Z800 E800 I30                 ; set motor currents (mA) and motor idle factor in per cent
        M84 S30                                      ; Set idle timeout
        
        ; Axis Limits
        M208 X0 Y0 Z0 S1                             ; set axis minima
        M208 X320 Y275 Z300 S0                       ; set axis maxima
        
        ; Endstops
        M574 X1 S1 P"!io1.in"                         ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io1.in
        M574 Y2 S1 P"!io3.in"                         ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin io3.in
        
        ; Z-Probe
        M950 S0 C"io4.out"                           ; create servo pin 0 for BLTouch
        M558 P9 C"io4.in" H5 F1000:100 T6000         ; set Z probe type to bltouch and the dive height + speeds
        G31 P500 X37 Y-27 Z2.22                      ; set Z probe trigger value, offset and trigger height
        M557 X20:310 Y40:270 S20                     ; define mesh grid
        
        ; Heaters
        M308 S0 P"temp1" Y"thermistor" T100000 B4138 A"BedTemp" ; configure sensor 0 as thermistor on pin temp1
        M950 H0 C"out1" T0                           ; create bed heater output on out1 and map it to sensor 0
        M307 H0 R0.169 K0.225:0.000 D42.84 E1.35 S1.00 B0 ; enable bang-bang mode for the bed heater and set PWM limit
        M140 H0                                      ; map heated bed to heater 0
        M143 H0 S120                                 ; set temperature limit for heater 0 to 120C
        M308 S1 P"temp0" Y"thermistor" T100000 B4138 A"NozzleTemp" ; configure sensor 1 as thermistor on pin temp0
        M950 H1 C"out2" T1                           ; create nozzle heater output on out2 and map it to sensor 1
        M307 H1 R2.962 K0.603:0.000 D5.12 E1.35 S1.00 B0 V23.2; disable bang-bang mode for heater  and set PWM limit
        M143 H1 S280                                 ; set temperature limit for heater 1 to 280C
        
        ; Fans
        M950 F0 C"out9" Q500                         ; create fan 0 on pin out8 and set its frequency
        M106 P0 S0 H-1                               ; set fan 0 value. Thermostatic control is turned off
        M950 F1 C"out8" Q500                         ; create fan 1 on pin out9 and set its frequency
        M106 P1 S1 H1 T50                            ; set fan 1 value. Thermostatic control is turned on
        
        ; Tools
        M563 P0 S"Mosquito Magnum" D0 H1 F0          ; define tool 0
        G10 P0 X0 Y0 Z0                              ; set tool 0 axis offsets
        G10 P0 R0 S0                                 ; set initial tool 0 active and standby temperatures to 0C
        
        ; Custom settings are not defined
        
        
        
        fcwiltundefined 1 Reply Last reply Reply Quote 0
        • fcwiltundefined
          fcwilt @TechButterfly
          last edited by

          @techbutterfly

          Just FYI.

          G32 executes bed.g - which is intended to do bed leveling, not create the heightmap needed for mesh bed compensation.

          What you have done will, of course, work but it is using bed.g in a somewhat unusual way.

          Now as to you Core XY settings.

          I would like you to do this from the DWC console:

          • execute M564 H0 which will allow moving axes that are not yet homed
          • jog X to the near the center of the bed
          • jog Y to the near the center of the bed
          • execute G92 X160 Y135 which will set the X and Y logical positions to appx halfway between axis min and max
          • execute G90 which will set absolute move mode
          • execute G1 X210 Y185 just to test a move command
          • execute G1 X110 Y85 just to test another move command

          Does the jogging move as expected?

          Do the G1 commands move as expected?

          Frederick

          Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

          TechButterflyundefined 1 Reply Last reply Reply Quote 0
          • Phaedruxundefined
            Phaedrux Moderator
            last edited by

            Can you make a video of you homing the printer and running a mesh compnesation?

            G28 G29

            Z-Bot CoreXY Build | Thingiverse Profile

            TechButterflyundefined 1 Reply Last reply Reply Quote 1
            • TechButterflyundefined
              TechButterfly @fcwilt
              last edited by

              @fcwilt I ran the commands you said - everything moved as expected, both jogging and using G1 commands. X+ was to the right. Y+ was toward the back.

              What should I do next?

              As far as G32, bed.g, and G29, whatever I have is either the default or perhaps came along with something I copied from somewhere. Please feel free to tell me a more acceptable way to accomplish things like bed leveling or mesh compensation. There's definitely plenty I don't know.

              fcwiltundefined 1 Reply Last reply Reply Quote 1
              • Phaedruxundefined
                Phaedrux Moderator
                last edited by

                Your homing files and config and mesh.g look alright to me. I don't see anything that would cause weird movement behaviour anyway.

                Z-Bot CoreXY Build | Thingiverse Profile

                TechButterflyundefined 1 Reply Last reply Reply Quote 0
                • TechButterflyundefined
                  TechButterfly @Phaedrux
                  last edited by

                  @phaedrux To verify what I posted before, after doing the tests @fcwilt requested, I homed Y and tested the movement - everything was still fine. I then homed X and once again, the movement is now wrong. The Y motor no longer turns - it is locked in place, so it's not just dead, the controller thinks it's not supposed to turn. I don't know what to do next.

                  fcwiltundefined 1 Reply Last reply Reply Quote 0
                  • fcwiltundefined
                    fcwilt @TechButterfly
                    last edited by fcwilt

                    @techbutterfly said in G29 on CoreXY does not move correctly:

                    I ran the commands you said - everything moved as expected, both jogging and using G1 commands. X+ was to the right. Y+ was toward the back.

                    Just to be sure, did both of the G1 commands move on the diagonal and ended up at the correct XY position?

                    I know this is a pain but maybe if you made a video showing what happened during the tests I suggested we would see something that would give us a clue.

                    Right now I am somewhat baffled.

                    Thanks.

                    Frederick

                    Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                    TechButterflyundefined 1 Reply Last reply Reply Quote 0
                    • fcwiltundefined
                      fcwilt @TechButterfly
                      last edited by

                      @techbutterfly

                      One other thing - could you edit the homey.g file to add a G1 move?

                      G90     ; existing G90 at end of file
                      G1 Y135 ; move to middle of Y axis 
                      

                      I would like to be sure that the Y axis can still move correctly after homing.

                      Frederick

                      Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                      1 Reply Last reply Reply Quote 0
                      • TechButterflyundefined
                        TechButterfly @fcwilt
                        last edited by

                        @fcwilt Yes when I ran the G1 commands, the head moved diagonally to the assigned positions. I ran them back and forth a couple of times. I also ran just the X110 to X210 part by itself several times and observed the head going left and right between those spots, and the Y85 to Y185 part by itself and watched the head go forward and back between those spots.

                        Then I homed Y and jogged the head around a bit. And then I homed X and now the Y motor doesn't turn, just the X motor, regardless of the direction requested, so the head moves diagonally. The panel due says the motor is moving as requested, but the head is not moving that way.

                        Let me see if I can put together a video.

                        fcwiltundefined 1 Reply Last reply Reply Quote 0
                        • fcwiltundefined
                          fcwilt @TechButterfly
                          last edited by

                          @techbutterfly said in G29 on CoreXY does not move correctly:

                          @fcwilt Yes when I ran the G1 commands, the head moved diagonally to the assigned positions. I ran them back and forth a couple of times. I also ran just the X110 to X210 part by itself several times and observed the head going left and right between those spots, and the Y85 to Y185 part by itself and watched the head go forward and back between those spots.

                          Then I homed Y and jogged the head around a bit. And then I homed X and now the Y motor doesn't turn, just the X motor, regardless of the direction requested, so the head moves diagonally. The panel due says the motor is moving as requested, but the head is not moving that way.

                          Let me see if I can put together a video.

                          That is just so strange.

                          I've look at the homex.g file and I don't see anything that would cause the behavior you are seeing.

                          We must be overlooking something.

                          Hang in there. We will get it sorted. I've built 9 different printers over time and I got them all to work despite the odd problem know and then.

                          Frederick

                          Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                          TechButterflyundefined 1 Reply Last reply Reply Quote 0
                          • TechButterflyundefined
                            TechButterfly @fcwilt
                            last edited by

                            @fcwilt Thanks - I appreciate your taking the time. I'm going to see if I can make a video.

                            fcwiltundefined 1 Reply Last reply Reply Quote 1
                            • TechButterflyundefined
                              TechButterfly @Phaedrux
                              last edited by

                              @phaedrux I just saw this request - I will try this when I make the video. I know it will end in a crash, because the movement will be screwed up, but I'll give it a try at the end.

                              1 Reply Last reply Reply Quote 0
                              • fcwiltundefined
                                fcwilt @TechButterfly
                                last edited by

                                @techbutterfly

                                I think I see the problem.

                                In the homex.g file you have a M92 X0 instead of G92 X0.

                                I hope my example didn't have that mistake. That would be very embarrassing. Very.

                                Frederick

                                Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                                TechButterflyundefined 3 Replies Last reply Reply Quote 1
                                • TechButterflyundefined
                                  TechButterfly @fcwilt
                                  last edited by

                                  @fcwilt Oh I'm sure it was my mistake. Let me fix that and try again...

                                  1 Reply Last reply Reply Quote 0
                                  • TechButterflyundefined
                                    TechButterfly @fcwilt
                                    last edited by

                                    @fcwilt That was it! Thanks so much! I need to be more mindful of my M's and G's I guess!

                                    So while we're here - can you tell me the difference between the bed.g and mesh.g, and how I should use them correctly?

                                    fcwiltundefined 1 Reply Last reply Reply Quote 1
                                    • TechButterflyundefined
                                      TechButterfly @fcwilt
                                      last edited by

                                      @fcwilt I tried to run G29, but there's something wrong with my heater settings - I think I'm just addressing the tools incorrectly. It looks to me like I'm supposed to set the active and standby temps for each tool with the M568 command, and then set those tools to active with the A2 attribute. And if I want them to wait before proceeding, I have to put an M116 command. That is essentially what I'm trying to do with this section of my mesh.g but it's not working right. Can you tell me what's wrong with these commands?

                                      ;set temps
                                      M568 P0 S60 R60                   ;set bed temp
                                      M568 P1 S200 R160                 ;set extruder temps
                                      M568 P0 A2                        ;set bed temp to active
                                      M568 P1 A2                        ;set extruder to active
                                      M116 H0 S5                        ;wait for bed to reach temp +-5
                                      M116 H1 S10                       ;wait for extruder to reach temp +-10
                                      
                                      TechButterflyundefined 1 Reply Last reply Reply Quote 0
                                      • TechButterflyundefined
                                        TechButterfly @TechButterfly
                                        last edited by

                                        Hmm. It looks like I'm supposed to just use a regular old M140 for the bed temp part of it.

                                        fcwiltundefined 1 Reply Last reply Reply Quote 1
                                        • TechButterflyundefined TechButterfly has marked this topic as solved
                                        • fcwiltundefined
                                          fcwilt @TechButterfly
                                          last edited by

                                          @techbutterfly said in G29 on CoreXY does not move correctly:

                                          Hmm. It looks like I'm supposed to just use a regular old M140 for the bed temp part of it.

                                          Correct. M568 is only for tools.

                                          Frederick

                                          Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                                          1 Reply Last reply Reply Quote 0
                                          • fcwiltundefined
                                            fcwilt @TechButterfly
                                            last edited by

                                            @techbutterfly said in G29 on CoreXY does not move correctly:

                                            So while we're here - can you tell me the difference between the bed.g and mesh.g, and how I should use them correctly?

                                            G32 is associated with Bed Leveling (Auto or Manual). G32 runs bed.g which is intended to contain all the commands needed to level the bed.

                                            G29 is associated with Mesh Bed Compensation. In current firmware G29 runs mesh.g which is intended to contain all the commands needed to create the heightmap which is required for using Mesh Bed Compensation.

                                            They are very different things.

                                            Bed Leveling, as the name implies, is for leveling the bed. This is done before printing. In my case it is part of homing Z.

                                            Mesh Bed Compensation is a feature which is used to try and compensate for bed irregularities during printing.

                                            If you printer is well made and stable you can usually create the heightmap once and use it for all subsequent prints. I have a macro which I run manually to create the heightmap. In my "print start" I load the pre-existing heightmap.

                                            Once a month or so I re-create the heightmap just to be sure it reflects the current state of the bed.

                                            Generally you create the heightmap with the hotend and bed at printing temps. Some folks create multiple heightmaps for different bed temps.

                                            Frederick

                                            Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                                            TechButterflyundefined 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA