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

    problem with irregular bltouch mesh

    Scheduled Pinned Locked Moved
    General Discussion
    4
    44
    2.8k
    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.
    • RODOKASundefined
      RODOKAS @fcwilt
      last edited by

      @fcwilt
      yes, i have 3 height maps created for each material i use, at different temperatures, and i update them almost every day

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

        Are you sure your probe offsets are correct?

        -X to the left of the nozzle, +X to the right
        -Y to the front of the nozzle, +Y to the back

        Z-Bot CoreXY Build | Thingiverse Profile

        RODOKASundefined 1 Reply Last reply Reply Quote 0
        • RODOKASundefined
          RODOKAS @Phaedrux
          last edited by

          @Phaedrux yes this is correct, thanks for the tip. I've really looked at a lot, the reprap code is not so complicated now for me but I still don't know what may be happening. can speed, acceleration or jerk on the z axis influence?

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

            @RODOKAS said in problem with irregular bltouch mesh:

            M574 Z1 S1 P"zstop+e1stop"

            Are you doing independent lead screw leveling as well?

            @RODOKAS said in problem with irregular bltouch mesh:

            M350 X16 Y16 Z16:16 E16 I1 ; Micropassos cem interpolação M92 X80.00 Y80.00 Z800.00:800.00 E416,5 ; set steps per mm M566 X400.00 Y400.00 Z60.00:60.00 E2000.00 P1 ; set maximum instantaneous speed changes (mm/min) JERK M203 X12000.00 Y12000.00 Z720.00:720.00 E2100.00 ; set maximum speeds (mm/min) M201 X2300.00 Y2300.00 Z240.00:240.00 E9000.00 ; set accelerations (mm/s^2) ;M204 P2600 T2000 ; set accelerations travel (mm/s^2) M906 X1150 Y1150 Z1150:1150 E700 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S20 ; Set idle timeout

            Where you have double Z values you shouldn't. The Z axis is a single axis, so remove the double values. Ex: Z1150:1150

            E416,5

            Your E steps per mm has a comma instead of a period.

            Can you send M98 P"config.g" and post the results?

            Also post your homeall and your slicer start gcode.

            Z-Bot CoreXY Build | Thingiverse Profile

            RODOKASundefined 1 Reply Last reply Reply Quote 0
            • RODOKASundefined
              RODOKAS @Phaedrux
              last edited by

              @Phaedrux
              my steps are really wrong, thanks!
              should I remove all double settings for the second z?
              yes, I do the leveling by optical endstop on each axis then I do it again by bltouch.

              I made corrections

              M98 P"config.g"
              HTTP is enabled on port 80
              FTP is enabled on port 21
              TELNET is disabled
              Warning: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 205C
              Warning: Heater 1 appears to be over-powered. If left on at full power, its temperature is predicted to reach 676C
              Warning: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 205C
              Warning: Heater 1 appears to be over-powered. If left on at full power, its temperature is predicted to reach 676C

              ; homeall.g
              ; called to home all axes
              ;
              ; generated by RepRapFirmware Configuration Tool v3.1.1 on Fri Jun 05 2020 16:15:12 GMT-0300 (Horário Padrão de Brasília)
              
              G91                     ; relative positioning
              G1 H2 Z2 F900         ; lift Z relative to current position
              G1 H1 X-305 Y-315 F6000 ; move quickly to X or Y endstop and stop there (first pass)
              G1 H1 X-305             ; home X axis
              G1 H1 Y-315             ; home Y axis
              G1 X3 Y3 F6000          ; go back a few mm
              G1 H1 X-305 F600        ; move slowly to X axis endstop once more (second pass)
              G1 H1 Y-315             ; then move slowly to Y axis endstop
              G90                     ; absolute positioning
              G1 X5 Y5 F6000      ; go to first bed probe point and home Z
              

              start script
              G28 ;
              ; Filament gcode
              G29 S1 P"ABS.CSV"; Carrega malha para ABS
              G1 X5 Y1 Z0.2 F9000;
              G92 E0; Reset no extrusor
              G1 E20 F1000.0 ; comeca a limpeza
              G1 X7.0 F100
              G1 X80.0 E23 F2000.0 ; Termina de fazer a limpeza
              G92 E0;
              M572 D0 S0.05; avanco de pressao reprap
              ;M593 F40; aceleracao dinamica reprap
              ;M376 H5; altura para diminuir a compensacao da mesa

              prusa slicer

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

                @RODOKAS said in problem with irregular bltouch mesh:

                should I remove all double settings for the second z?

                Yes. It's not really a second Z. There is only 1 Z axis, even if made up of multiple motors. If you want to control the motors separately, you'd need to create an entirely separate axis like U and then you'd have settings for that axis. In fact, before RRF3 you would have needed to do that to do the dual endstop leveling and home each axis separately and then recombine into a single Z axis.

                I should have asked for your bed.g as well.

                Z-Bot CoreXY Build | Thingiverse Profile

                RODOKASundefined 2 Replies Last reply Reply Quote 0
                • RODOKASundefined
                  RODOKAS @Phaedrux
                  last edited by

                  @Phaedrux

                  ; bed.g
                  ; called to perform automatic bed compensation via G32
                  ;
                  ; generated by RepRapFirmware Configuration Tool v3.1.1 on Fri Jun 05 2020 16:15:10 GMT-0300 (Horário Padrão de Brasília)
                  M561 ; clear any bed transform
                  

                  Thanks!

                  1 Reply Last reply Reply Quote 0
                  • RODOKASundefined
                    RODOKAS @Phaedrux
                    last edited by

                    @Phaedrux
                    this is the macro I use to read and create the mesh for ABS

                    ;macro /macros/__prepare_ABS.g  prepare the machine after a cold start for ABS printing
                    T0			; define tool
                    M190 S95	; Set the bed temperature at 95°C and wait for it
                    G28			; home
                    G29	S2		; Limpa a malha
                    G29 S0      ; executa leitura da cama
                    G29 S3 P"ABS.csv"    ; salva a leitura como ABS
                    G29 S1 P"ABS.csv"    ; carrega a malha ABS
                    G1 X5 Y5 F7200
                    M500;
                    
                    fcwiltundefined 1 Reply Last reply Reply Quote 0
                    • fcwiltundefined
                      fcwilt @RODOKAS
                      last edited by

                      @RODOKAS said in problem with irregular bltouch mesh:

                      this is the macro I use to read and create the mesh for ABS

                      ;macro /macros/__prepare_ABS.g  prepare the machine after a cold start for ABS printing
                      T0			; define tool
                      M190 S95	; Set the bed temperature at 95°C and wait for it
                      G28			; home
                      G29	S2		; Limpa a malha
                      G29 S0      ; executa leitura da cama
                      G29 S3 P"ABS.csv"    ; salva a leitura como ABS
                      G29 S1 P"ABS.csv"    ; carrega a malha ABS
                      G1 X5 Y5 F7200
                      M500;
                      

                      Hi,

                      • It doesn't seem as if your homing macro is setting the Z=0 datum using G30
                      • As I recall you don't need to use G29 S2 right before using G29 S0 - it won't cause problems if you leave it
                      • You don't need to use G29 S1 to load the just created height map, the map is still active
                      • What is the point of the M500?

                      Frederick

                      Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                      1 Reply Last reply Reply Quote 0
                      • RODOKASundefined
                        RODOKAS
                        last edited by

                        I was curious about the m561 in my beg.g and took it out to test it, did the mesh in abs again and restarted the machine to make sure, I did the same print test as before and the result was the same.

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

                          Your homeall doesn't have a z homing component, so please post homez as well.

                          Where are you doing the Z axis leveling? In homez?

                          Could you post all of your files in a single post? That would make it much easier to see what's going on without having to scroll around all over the place. The only way we can see what's going on is be looking at the gcode.

                          Z-Bot CoreXY Build | Thingiverse Profile

                          RODOKASundefined 1 Reply Last reply Reply Quote 0
                          • RODOKASundefined
                            RODOKAS @Phaedrux
                            last edited by

                            @Phaedrux you are right, i will put all gcodes here.

                            ;config.g
                            ; Configuration file for Duet WiFi (firmware version 3)
                                             ; General preferences
                            G90                                                ; send absolute coordinates...
                            M83                                                ; ...but relative extruder moves
                            M550 P"3DPRINT"                                    ; set printer name
                            M669 K1                                            ; select CoreXY mode
                                                    ; Network
                            M552 S1                                            ; enable network
                            ;M552 S2     									;Habilitar ponto de acesso
                            M586 P0 S1                                         ; enable HTTP
                            M586 P1 S1                                         ; enable FTP
                            M586 P2 S0                                         ; desabilitado Telnet
                                                      ; Drives
                            M569 P0 S0 F3                                     ; physical drive 0 goes forwards	
                            M569 P1 S0 F3                                     ; physical drive 1 goes forwards	
                            M569 P2 S1 F3                                     ; physical drive 2 goes backwards	
                            M569 P3 S1 F3                                        ; physical drive 3 goes backwards
                            M569 P4 S1                                     ; physical drive 4 goes backwards	
                            M584 X0 Y1 Z2:3 E4                                 ; set drive mapping
                            M350 X16 Y16 Z16 E16 I1             	            ; Micropassos cem interpolação
                            M92 X80.00 Y80.00 Z800.00 E416.5           ; set steps per mm
                            M566 X400.00 Y400.00 Z60.00 E2000.00 P1            ; set maximum instantaneous speed changes (mm/min) JERK
                            M203 X12000.00 Y12000.00 Z720.00 E2100.00   ; set maximum speeds (mm/min)
                            M201 X2300.00 Y2300.00 Z240.00 E9000.00       ; set accelerations (mm/s^2)
                            ;M204 P2600 T2000  							       ; set accelerations travel (mm/s^2)
                            M906 X1150 Y1150 Z1150 E700 I30               ; set motor currents (mA) and motor idle factor in per cent
                            M84 S20                                            ; Set idle timeout
                                                            ; Z-Probe
                            M98 P"0:/macros/configuracao_sonda"
                                                              ; Heaters
                            M308 S0 P"bedtemp" Y"thermistor" T100000 B3950     ; configure sensor 0 as thermistor on pin bedtemp
                            M950 H0 C"bedheat" T0                              ; create bed heater output on bedheat and map it to sensor 0
                            M307 H0 A180.2 C510.1 D2.9 S0.75 V12.8 B0          ; disable bang-bang mode for the bed heater and set PWM limit
                            M140 H0                                            ; map heated bed to heater 0
                            M143 H0 S115                                       ; set temperature limit for heater 0
                            ;M308 S1 P"e0temp" Y"thermistor" T100000 B4267     ; configuração conforme opção 5 do marlin
                            M308 S1 P"e0temp" Y"thermistor" T100000 B4725 C0.0000000706      ; configuração conforme recomendação do duet3d
                            M950 H1 C"e0heat" T1                               ; create nozzle heater output on e0heat and map it to sensor 1
                            ;M307 H1 B1										   ; ativa o modo bang bang
                            M307 H1 A651.7 C191.8 D6.3 S1.00 V12.7 B0          ; disable bang-bang mode for heater  and set PWM limit
                            M143 H1 S250                                       ; seta o limite de temperatura para o extrusor
                                                              ; Fans
                            M950 F0 C"fan0" Q500                               ; create fan 0 on pin fan0 and set its frequency
                            M106 P0 C"fan0" S0 H-1                             ; set fan 0 name and value. Thermostatic control is turned on
                            ;M950 F1 C"fan1" Q500                              ; create fan 0 on pin fan0 and set its frequency
                            ;M106 P1 C"PLACA" S1 H1 T40                        ; set fan 0 name and value. Thermostatic control is turned on
                            M950 F2 C"fan2" Q200                               ; create fan 2 on pin fan2 and set its frequency
                            M106 P2 C"FONTE" S0.8 H1 T180                        ; set fan 2 name and value. Thermostatic control is turned off
                            M950 F1 C"e1heat" Q500                             ; create fan 1 on pin HEATER2 and set its frequency
                            M106 P1 C"HOTEND" S1 H1 T60                        ; set fan 1 name and value. Thermostatic control is turned off
                                                             ; Axis Limits
                            M208 X-3 Y0 Z0 S1                                  ; set axis minima
                            M208 X300 Y300 Z345 S0                             ; set axis maxima
                                                              ; Endstops
                            M574 X1 S1 P"xstop"                                ; configure active-high endstop for low end on X via pin xstop
                            M574 Y1 S1 P"ystop"                                ; configure active-high endstop for low end on Y via pin ystop
                            M574 Z1 S1 P"zstop+e1stop"
                                                              ; Tools
                            M563 P0 D0 H1                                 ; 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
                                                          ; Miscellaneous
                            M911 S11 R11.5 P"M913 X0 Y0 G91 M83 G1 Z1 E-2 F1000" ; set voltage thresholds and actions to run on power loss
                            
                            M501
                            
                            ; homeall.g
                            ; called to home all axes
                            ;
                            ; generated by RepRapFirmware Configuration Tool v3.1.1 on Fri Jun 05 2020 16:15:12 GMT-0300 (Horário Padrão de Brasília)
                            
                            G91                     ; relative positioning
                            G1 H2 Z2 F900         ; lift Z relative to current position
                            G1 H1 X-305 Y-315 F6000 ; move quickly to X or Y endstop and stop there (first pass)
                            G1 H1 X-305             ; home X axis
                            G1 H1 Y-315             ; home Y axis
                            G1 X3 Y3 F6000          ; go back a few mm
                            G1 H1 X-305 F600        ; move slowly to X axis endstop once more (second pass)
                            G1 H1 Y-315             ; then move slowly to Y axis endstop
                            G90                     ; absolute positioning
                            G1 X5 Y5 F6000      ; go to first bed probe point and home Z
                            
                            ; homez.g
                            ; called to home the Z axis
                            ;
                            ; generated by RepRapFirmware Configuration Tool v3.1.1 on Fri Jun 05 2020 16:15:12 GMT-0300 (Horário Padrão de Brasília)
                            G91               ; relative positioning
                            G1 H1 Z-350 F900  ; move Z down until the endstop is triggered
                            G1 Z3 F900
                            G1 H1 Z-5 F150
                            G92 Z0            ; set Z position to axis minimum (you may want to adjust this)
                            G1 H1 Z3 F900
                            G1 Z2.9
                            G30
                            
                            ; bed.g
                            ; called to perform automatic bed compensation via G32
                            ;
                            ; generated by RepRapFirmware Configuration Tool v3.1.1 on Fri Jun 05 2020 16:15:10 GMT-0300 (Horário Padrão de Brasília)
                            ;M561 ; clear any bed transform
                            
                            ;macro /macros/__prepare_ABS.g  prepare the machine after a cold start for ABS printing
                            T0			; define tool
                            M140 S95 	; Set the bed temperature and don't wait for it
                            M190 S95	; Set the bed temperature at 95°C and wait for it
                            G28			; home
                            G29	S2		; Limpa a malha
                            G29 S0      ; executa leitura da cama
                            G29 S3 P"ABS.csv"    ; salva a leitura como ABS
                            G29 S1 P"ABS.csv"    ; carrega a malha ABS
                            G1 X5 Y5 F7200
                            M500;
                            

                            I really don't know if the M500 makes a difference at the end of the ABS macro

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

                              @RODOKAS said in problem with irregular bltouch mesh:

                              I really don't know if the M500 makes a difference at the end of the ABS macro

                              It doesn't do anything in this case because there hasn't been anything calculated or measured to save to config-override.g.

                              Z-Bot CoreXY Build | Thingiverse Profile

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

                                ; homez.g
                                ; called to home the Z axis
                                ;
                                ; generated by RepRapFirmware Configuration Tool v3.1.1 on Fri Jun 05 2020 16:15:12 GMT-0300 (Horário Padrão de Brasília)
                                G91               ; relative positioning
                                G1 H1 Z-350 F900  ; move Z down until the endstop is triggered
                                G1 Z3 F900
                                G1 H1 Z-5 F150
                                G92 Z0            ; set Z position to axis minimum (you may want to adjust this)
                                G1 H1 Z3 F900
                                G1 Z2.9
                                G30
                                

                                Your homez could be improved. The endstop leveling proceeds correctly, but then it gets a bit odd.

                                Remove this part

                                G92 Z0            ; set Z position to axis minimum (you may want to adjust this)
                                G1 H1 Z3 F900
                                G1 Z2.9
                                G30
                                

                                And replace it with

                                G1 Z3  ; raise for clearance
                                G1 X150 Y150 ; move to center
                                G30 ; probe the bed
                                

                                Probing the center of the bed is important for setting Z0 since you are adjusting the tilt of the bed. You want to measure the center of that tilt.

                                You're also only using the endstops for tilt correction. You aren't using the probe anywhere. This is fine as long as the endstop positions are accurate to remove any tilt.

                                See here for how you would use the probe to correct for tilt.
                                https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors
                                This would normally be done in G32/bed.g

                                Can you please post this macro s well: M98 P"0:/macros/configuracao_sonda"

                                Then in your prepare_abs macro to generate the heightmap you would have G28 to home the bed, G32 to level the tilt with the probe, and then G29 to create a heightmap of the bed surface.

                                Z-Bot CoreXY Build | Thingiverse Profile

                                RODOKASundefined 1 Reply Last reply Reply Quote 0
                                • RODOKASundefined
                                  RODOKAS @Phaedrux
                                  last edited by

                                  @Phaedrux
                                  I'm sorry I forgot that I leave the probe configuration in a macro

                                  M950 S0 C"exp.heater3"                             ; criar servo / gpio 0 no aquecedor de 3 pinos no conector de expansão
                                  M558 P9 C"^zprobe.in" R0.2 H2.8 F60 T10800                ; BLTouch conectado ao pino de entrada da sonda Z
                                  G31 P500 X-4.5 Y25 Z0.55                           ; deslocamento da sonda com o bico
                                  M557 X20:280 Y30:290 S50                           ; define mesh grid
                                  

                                  if my z-axis is a little unbalanced, it can hit, so I don’t think it’s safe to probe the center of the bed and then probe the bed close to the engines, maybe if I did all that I mentioned after using the endstop I already have it would make it safer.
                                  I will try this change and then put the result.

                                  would my new abs mesh macro look like this?

                                  ;macro /macros/__prepare_ABS.g  prepare the machine after a cold start for ABS printing
                                  T0			; define tool
                                  M190 S95	; Set the bed temperature at 95°C and wait for it
                                  G28			; home
                                  G29 S0      ; executa leitura da cama
                                  G29 S3 P"ABS.csv"    ; salva a leitura como ABS
                                  G1 X5 Y5 F7200;
                                  
                                  Phaedruxundefined 1 Reply Last reply Reply Quote 0
                                  • Phaedruxundefined
                                    Phaedrux Moderator @RODOKAS
                                    last edited by

                                    @RODOKAS said in problem with irregular bltouch mesh:

                                    would my new abs mesh macro look like this?

                                    Yes that looks cleaner.

                                    @RODOKAS said in problem with irregular bltouch mesh:

                                    if my z-axis is a little unbalanced, it can hit, so I don’t think it’s safe to probe the center of the bed and then probe the bed close to the engines, maybe if I did all that I mentioned after using the endstop I already have it would make it safer.

                                    I think it would be ok because your first homing pass is with the endstops which should remove most of the tilt even if it's not perfect and establishes an approximate Z0 point. Probing the center to get a finer measurement and then a probe based tilt correction to get it dialed in before creating the heightmap should give good results.

                                    Z-Bot CoreXY Build | Thingiverse Profile

                                    RODOKASundefined 1 Reply Last reply Reply Quote 0
                                    • RODOKASundefined
                                      RODOKAS @Phaedrux
                                      last edited by

                                      @Phaedrux I don't know if I expressed myself correctly, I would prefer to continue with the optical endstop that I have for the 2 engines, then probe the center of the table, and then afterwards set the z0 for each engine again using the bltouch next to each spindle. would it be possible?
                                      I can't imagine how it would be, the link to teach to use either the probe or the endstop, but not the two systems.

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

                                        The way I have described uses both. The endstops are used for the first pass just as they are now, but then the probe is used afterwards.

                                        The homez you already posted uses both the endstops and then the probe. The only change I've suggested is probing the center of the bed after the endstops are done, and then doing the tilt correction again with the probe as described in that independant leveling link.

                                        Z-Bot CoreXY Build | Thingiverse Profile

                                        RODOKASundefined 1 Reply Last reply Reply Quote 0
                                        • RODOKASundefined
                                          RODOKAS @Phaedrux
                                          last edited by

                                          @Phaedrux I inserted it in my home z, it seems that everything works fine

                                          ; homez.g
                                          ; called to home the Z axis
                                          ;
                                          ; generated by RepRapFirmware Configuration Tool v3.1.1 on Fri Jun 05 2020 16:15:12 GMT-0300 (Horário Padrão de Brasília)
                                          G91               ; relative positioning
                                          G1 H1 Z-350 F900  ; move Z down until the endstop is triggered
                                          G90;
                                          G1 X150 Y150 Z3 F6000; raise for clearance
                                          G30 ; probe the bed
                                          M671 X-43:343 Y165:165 S1; parafusos de avanço à esquerda (conectado a Z) e à direita (conectado a E1) do eixo X
                                          M208 X0:300 Y0:300; 
                                          G30 P0 X10 Y150 Z-99999; sonda perto de um parafuso de avanço, a meio caminho ao longo do eixo Y
                                          G30 P1 X290 Y150 Z-99999 S2; sonda perto de um parafuso de avanço e calibre 2 motores
                                          G1 X5 Y5 F6000;
                                          
                                          Phaedruxundefined 1 Reply Last reply Reply Quote 0
                                          • Phaedruxundefined
                                            Phaedrux Moderator @RODOKAS
                                            last edited by

                                            @RODOKAS said in problem with irregular bltouch mesh:

                                            M671 X-43:343 Y165:165 S1; parafusos de avanço à esquerda (conectado a Z) e à direita (conectado a E1) do eixo X M208 X0:300 Y0:300;

                                            That part should go in the config.g

                                            You should also add an additional G30 at the center of the bed after the tilt correction since changing the tilt will change the Z0 point as well.

                                            Z-Bot CoreXY Build | Thingiverse Profile

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