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

    First layer is not evenly closed

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    5
    10
    379
    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.
    • Anawandurundefined
      Anawandur
      last edited by Anawandur

      Hello everyone,

      I have converted my Raise3d E2 to a Duet mini5 and 2 LC1 Toolboards and IR Z-Probe and have 2 problems that I cannot solve.

      I would like to describe problem 1 here and I will open a new entry for the second. Link to problem 2

      The first problem is that my first layer is not evenly closed. When I print one layer (180x180 mm) the first layer has a thickness of between 0.18mm and 0.26mm. The hardware on the printer is very solid and has no problems. I did not have these problems before the conversion either. Perhaps someone can give me tips on where I could look for the error.

      My bed leveling is controlled by a macro that creates a Heightmap.csv depending on the print plate and filament used and then saves this in a BlackPrint 60°C file, which is called up in Start.g when printing.

      RepRapFirmware 3.6.0-alpha.4+3

      config.g:

      ; Configuration file for Duet 3 Mini 5+ (firmware version 3.3)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool v3.3.15 on Sat Nov 26 2022 13:27:47 GMT+0100 (Mitteleuropäische Normalzeit)
      
      ;###########################################################################################################################
      ; General preferences
      ;###########################################################################################################################
      M575 P1 S1 B57600                                        ; enable support for PanelDue
      G90                                                      ; send absolute coordinates...
      M83                                                      ; ...but relative extruder moves
      M550 P"Raise 3D E2"                                      ; set printer name
      
      ;##########################################################################################################################
      ; Network
      ;##########################################################################################################################
      M552 S1                                                  ; enable network
      M586 P0 S1                                               ; enable HTTP
      M586 P1 S1                                               ; disable FTP
      M586 P2 S0                                               ; disable Telnet
      
      ;##########################################################################################################################
      ; Drives
      ;##########################################################################################################################
      M569 P0.0 S0 D3 H50 V30                                  ; physical drive 0.0 goes forwards
      M915 P0.0 T50
      
      M569 P0.1 S0 D3 H50 V30                                  ; physical drive 0.1 goes forwards
      M915 P0.1 T30
      
      M569 P0.2 S0 D3 H50 V30                                  ; physical drive 0.2 goes forwards
      M915 P0.2 T50
      
      M569 P20.0 S0                                            ; physical drive 0.3 goes forwards Extruder links
      
      M569 P0.4 S0 D3 H50 V30                                  ; physical drive 0.4 goes forwards
      M915 P0.4 T50
      
      M569 P21.0 S1                                            ; physical drive 0.5 goes forwards
      
      M584 X0.0 Y0.1 Z0.2 E20.0:21.0 U4                        ; set drive mapping
      M350 X16 Y16 U16 Z16 E16:16 I1                           ; configure microstepping without interpolation
      M92 X80 Y80 U80 Z800 E286.216 :286.216                   ; set steps per mm linker Extruder : rechter Extroder
      M566 X600 Y600 U600 Z30 E300:300                         ; set maximum instantaneous speed changes (mm/min)
      M203 X10000 U10000 Y9000 Z600 E3000:3000                ; set maximum speeds (mm/min)
      M201 X1500 U1500 Y1500 Z120 E3000:3000                    ; set accelerations (mm/s^2)
      ;M906 X850 U850 Y850 Z800 E800:800 I30                    ; set motor currents (mA) and motor idle factor in per cent
      M906 X1200 U1200 Y1200 Z900 E800:800 I30                    ; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                                  ; Set idle timeout
      
      ;##########################################################################################################################
      ; Axis Limits
      ;##########################################################################################################################
      M208 X10 Y-3 Z0 U35 S1                                   ; set axis minima
      M208 X335 Y255 Z240 U355 S0                              ; set axis maxima
      
      ;##########################################################################################################################
      ; Endstops                                               ; configure switch-type (e.g. microswitch) endstop for high end on Z via pin null
      ;##########################################################################################################################
      M574 Y1 S1 P"io1.in"
      M574 X1 S1 P"io2.in"
      M574 U2 S1 P"Io4.in"
      ;M915 X S-63 H10 R1                                      ; Set very sensitive stall detect
      ;M574 X1 S3                                              ; configure endstop for stall detection
      ;M915 X S20 H140 R0                                      ; Set very sensitive stall detect
      ;M915 X S-63 H10 R1                                      ; Set very sensitive stall detect
      
      ;##########################################################################################################################
      ; Switch
      ;##########################################################################################################################
      M950 J1 C"SPI.CS2"
      ;M581 P1 S0 T5 R0                                        ;Alarm wenn tür beim drucken geöffnet wird
      ;M581 P1 S1 T6 R0                                        ;TEST war vorher nicht drin
      
      ;##########################################################################################################################
      ; Filament Sensoren
      ;##########################################################################################################################
      M591 D1 P1 C"io6.in" S1
      M591 D0 P1 C"io5.in" S1
      
      ;##########################################################################################################################
      ; Z-Probe
      ;##########################################################################################################################
      M558 P8 C"20.io0.in" H5 A7 S0.008 F200 T10000            ; P=Sondentyp C=Eingangspin H=Anfahrhöhe A=Anzahl Tastvorgänge S=Tolleranz (Standard 0,03) F=Abtastgeschwindigkeit T=Verfahrgeschwindigkeit 
      G31 P500 X17 Y21 Z1.30                                  ; set Z probe trigger value, offset and trigger height + Tiefer - höher
      M557 X31:335 Y20:225 P7                                  ; define mesh grid
      
      ;##########################################################################################################################
      ;Acclerometer
      ;##########################################################################################################################
      M955 P20.0 I24                ; configure accelerometer on toolboard with CAN address 121 and specify orientation 
      M593 F51 S0.2  P"zvddd"
      M955 P21.0 I24                ; configure accelerometer on toolboard with CAN address 121 and specify orientation 
      
      
      ;##########################################################################################################################
      ; Heaters
      ;##########################################################################################################################
      M308 S0 P"Temp0" Y"thermistor" T100000 B4138             ; configure sensor 0 as thermistor on pin temp0
      M950 H0 C"out0" T0                                       ; create bed heater output on out0 and map it to sensor 0
      M307 H0 B1 S1.00                                         ; 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 S2 P"21.Temp0" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 2 as thermistor on pin temp2
      M950 H2 C"21.out0" T2                                    ; create nozzle heater output on out2 and map it to sensor 2
      M307 H2 B0 S1.00                                         ; disable bang-bang mode for heater  and set PWM limit
      M143 H2 S340                                             ; set temperature limit for heater 2 to 340C
      
      M308 S1 P"20.Temp0" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 2 as thermistor on pin temp2
      M950 H1 C"20.out0" T1                                    ; create nozzle heater output on out2 and map it to sensor 2
      M307 H1 B0 S1.00                                         ; disable bang-bang mode for heater  and set PWM limit
      M143 H1 S340                                             ; set temperature limit for heater 2 to 340C
      
      ;##########################################################################################################################
      ; Temp Sensoren
      ;##########################################################################################################################
      M308 S10 Y"mcu-temp" A"MCU"                              ; defines sensor 10 as MCU temperature sensor
      M308 S11 Y"drivers" A"Duet stepper drivers"              ; defines sensor 11 as stepper driver temperature sensor
      ;M950 F5 C"out6" Q500                                    ; create fan 2 on pin fan2 and set its frequency
      ;M106 P5 H3 T40:70                                       ; set fan 2 value
      
      ;##########################################################################################################################
      ; Fans
      ;##########################################################################################################################
      ;M950 F0 C"vfd" Q500                                     ; create fan 0 on pin out4 and set its frequency
      ;M106 P0 C"Bauteil-Lüfter L" S0 H-1
      
      M950 F0 C"20.out1" Q500
      M106 P0 C"Bauteil-Lüfter L" S0 H-1
      
      M950 F1 C"21.out1" Q500
      M106 P1 C"Bauteil-Lüfter R" S0 H-1
      
      M950 F3 C"out5" Q500                                     ; create fan 2 on pin vfd and set its frequency
      M106 P3 C"LED" S150 H-1                                  ; set fan 2 value. Thermostatic control is turned off
      
      M950 F4 C"out4+out4.tach" Q25000
      M106 P4 C"Filter-Lüfter" S0 H-1
      
      M950 F5 C"21.out2" Q500                                  ; create fan 0 on pin out3 and set its frequency
      M106 P5 C"Hotend Fan rechts" S1 H2 T45                   ; set fan 0 name and value. Thermostatic control turned on for Hotend
      M950 F6 C"20.out2" Q500                                  ; create fan 0 on pin out3 and set its frequency
      M106 P6 C"Hotend Fan links" S1 H1 T45                                          
      
      ;##########################################################################################################################
      ; Create a tool that uses the low end (X) carriage
      ;##########################################################################################################################
      M563 P0 D0 H1 F0  S"linker Extruder"                     ; tool 0 uses extruder 0, heater 1 and fan 0 (P=Werkzeug Nr., S=Name, D=Extruder Motor, H=Heizung, F=Bautellüfter)
      G10 P0 X0 Y0 Z0 S0 R0                                    ; set tool 0 offsets and temperatures
      
      ;##########################################################################################################################
      ; Create a tool that uses the high end (U) carriage
      ;##########################################################################################################################
      M563 P1 D1 H2 X3 F1  S"rechter Extruder"                 ; tool 1 uses extruder 1, heater 2, fan 2, and maps X to U
      G10 P1 Y0.1 U26.6 Z0.02 R0                               ; set tool 1 offsets and temperatures für Z: + Tiefer - höher U: - weiter nach rechts + weiter nach links (G10 P1 Y0 U27.0 Z0.02 R0)   
      
      ;##########################################################################################################################
      ; Create a tool that prints 2 copies of the object using both carriages
      ;##########################################################################################################################
      
      M563 P2 D0:1 H1:2 X0:3 F0:0 S"Duplikation"               ; tool 2 uses both extruders, hot end heaters and fans, and maps X to both X and U
      G10 P2 X-25 Y0 U-176.3 Z0 S0 R0                          ; set tool offsets and temperatures
      ;G10 P2 X10 Y0 U-176.3 Z0 S0 R0                             ; set tool offsets and temperatures
      ;G10 P2 X0 Y0 U-40 Z0 S0 R0                              ; set tool offsets and temperatures
      G10 P2 R0 S0
      M567 P2 E1:1                                             ; set mix ratio 100% on both extruders
      
      ;##########################################################################################################################
      ;Create a tool that Prints in Mirrior Mode
      ;##########################################################################################################################
      
      ;M563 P3 H1:2 D0:1 X0:3 F0:0 S"Spiegeln"
      ;G10 P3 X-25 Y0 U-176.3 Z0 S0 R0
      ;G10 P3 R0 S-2
      
      ;##########################################################################################################################
      ; Custom settings are not defined
      ;##########################################################################################################################
      ;##########################################################################################################################
      ;Temperatur anpassung MCU
      ;##########################################################################################################################
      M912 P0 S2
      ;##########################################################################################################################
      ; Miscellaneous
      ;##########################################################################################################################
      M501                                                     ; load saved parameters from config-override.g
      M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000"       ; set voltage thresholds and actions to run on power loss
      M98 P"GlobaleBuildplate.g"
      G4 S2                                                    ; wait for expansion boards to start```
      
      

      start.g:

      M291 P"Start.g wird ausgeführt" S0
      if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed
        G28
      M98 P"/Macros/SUB/CheckDoor"
      M561          ; Disable Mesh Bed Kompensation
      G4 S1
      M106 P3 S25   ; LED schalten 25%
      M98 P"/Macros/SUB/Preheat"
      G28 Z0        ; Z Homen
      M98 P"/Macros/Buildplate"
      

      The mesh is then called up via M98 P"/Macros/Buildplate". For example, for the BlackPrint and PLA printing plate it is BlackPrint60°C.csv

      this is my slicer start code:

      T0
      M291 P"Beginne slicer start gcode" S0
      M703                                                         ; load config file for [filament_type]
      G90                                                            ; set printer absolute mode
      M82                                                           ; set extruder to absolute mode
      M106 S0                                                    ; fan off
      M106 P3 S180                                           ; LED an
      T0                                                               ; set first toolhead
      M703                                                         ; load config file for [filament_type]
      G1 Z3 F2000                                              ; Move to Z3 for height clearance before Intro line
      G92 E0                                                       ; set position
      M291 P"Intro Line" S0
      M116 S5
      M400
      ; intro line
      G1 Z0.35 F5000 
      G1 X60 Y-2 F5000
      G1 X150 Y-2 E16 F1000 
      G1 X170 y-2 F5000
      G1 X170 Y0 F5000
      G1 X150 Y0 F500
      G1 X60 Y0 E30 F1000
      G1 X40 Y0 F5000
      G1 Z5 F2000                                              ; Move to Z5 to prevent dragging nozzle and scratching bed
      G92 E0                                                       ; set position
      G1 F2000 
      M117 "Druck wird gestartet"
      
      

      PXL_20240905_152550540.jpg

      PXL_20240904_193601399.jpg

      PXL_20240828_140822085.jpg

      dc42undefined 1 Reply Last reply Reply Quote 0
      • Anawandurundefined Anawandur referenced this topic
      • dc42undefined
        dc42 administrators @Anawandur
        last edited by dc42

        @Anawandur from the middle of the 3 photos in your post, I think the bed is quite severely tilted or warped, and either you haven't generated a height map and applied mesh bed compensation or it isn't working.

        Please post the height map that you were using for that print.

        Duet WiFi hardware designer and firmware engineer
        Please do not ask me for Duet support via PM or email, use the forum
        http://www.escher3d.com, https://miscsolutions.wordpress.com

        Anawandurundefined 1 Reply Last reply Reply Quote 0
        • Anawandurundefined
          Anawandur @dc42
          last edited by

          @dc42 My macro buildplate is loaded in start.g, in which the correct mesh and Z-offset are loaded according to the filament and loaded print plate.

          start.g

          M291 P"Start.g starting" S0
          if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed
            G28
          M98 P"/Macros/SUB/CheckDoor"          ;Check whether the door must be opened or closed according to the material
          M561                                  ; Disable Mesh Bed Kompensation
          M106 P3 S25                           ; LED 25%
          M98 P"/Macros/SUB/Preheat"            ; Heat Makro
          G28 Z0                                ; Z Home
          M98 P"/Macros/Buildplate"            ;Load buildplate including mesh according to the print plate and take Z-offset into account.
          

          Macros/Buildplate

          ; check if BuildTak selected is
          if global.buildplate_type == 1
              echo "BuildTak is selected"
              if (move.extruders[0].filament == "PLA" || move.extruders[1].filament == "PLA") 
                 G4 S1
                 M291 P"BuildTak  PLA 60°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"BuildTakheightmap60c.csv"
                 ;G4 S2 
                 ;M290 S-0.20                                                   ; Baby Stepp is setting
                 ;echo "Babystep for Buildtak is 0.04mm"
          
          
              if (move.extruders[0].filament == "PETG" || move.extruders[1].filament == "PETG") 
                 G4 S1
                 M291 P"BuildTak  PETG 70°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"BuildTakheightmap70c.csv"
                 ;G4 S2 
                 ;M290 S0.04                                                   ; Baby Stepp is setting
                 ;echo "Babystep for Buildtak is 0.04mm"
          
          
          
              if (move.extruders[0].filament == "ASA" || move.extruders[1].filament == "ASA") 
                 G4 S1
                 M291 P"BuildTak  ASA 100°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"BuildTakheightmap100c.csv"
                 ;G4 S2 
                 ;M290 S0.04                                                   ; Baby Stepp is setting
                 ;echo "Babystep for Buildtak is 0.04mm"
          
          
              if (move.extruders[0].filament == "PA12CF" || move.extruders[1].filament == "PA12CF") 
                 G4 S1
                 M291 P"BuildTak  PA12CF 90°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"BuildTakheightmap90c.csv"
                 ;G4 S2 
                 ;M290 S0.04                                                   ; Baby Stepp is setting
                 ;echo "Babystep for Buildtak is 0.04mm"
          ;---------------------------------------------------------------------------------------------------------------------------------------        
          ;check if PEIglatt selected is
          if global.buildplate_type == 2
              echo "PEIglatt is selected"
              if (move.extruders[0].filament == "PLA" || move.extruders[1].filament == "PLA") 
                 G4 S1
                 M291 P"PEIglatt  PLA 60°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"PEIglattheightmap60c.csv"
                 ;G4 S2 
                 ;M290 S0.04                                                   ; Baby Stepp is setting
                 ;echo "Babystep for PEIglatt is 0.04mm"
          
              if (move.extruders[0].filament == "PETG" || move.extruders[1].filament == "PETG") 
                 G4 S1
                 M291 P"PEIglatt  PETG 70°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"PEIglattheightmap70c.csv"
                 ;G4 S2 
                 ;M290 S-0.20                                                   ; Baby Stepp is setting
                 ;echo "Babystep for PEIglatt is -0.20mm"
          
              if (move.extruders[0].filament == "ASA" || move.extruders[1].filament == "ASA") 
                 G4 S1
                 M291 P"PEIglatt  ASA 100°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"PEIglattheightmap100c.csv"
                 ;G4 S2 
                 ;M290 S0.04                                                   ; Baby Stepp is setting
                 ;echo "Babystep for PEIglatt is 0.04mm"
          
          
              if (move.extruders[0].filament == "PA12CF" || move.extruders[1].filament == "PA12CF") 
                 G4 S1
                 M291 P"Peiglatt  PA12CF 90°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"PEIglatthighmap90c.csv"
                 ;G4 S2 
                 ;M290 S0.04                                                   ; Baby Stepp is setting
                 ;echo "Babystep for Buildtak is 0.04mm"       
          ;---------------------------------------------------------------------------------------------------------------------------------------   
          ; check if FR4dünn selected is
          if global.buildplate_type == 3
              echo "FR4dünn is selected"
              if (move.extruders[0].filament == "PLA" || move.extruders[1].filament == "PLA") 
                 G4 S1
                 M291 P"FR4dünn  PLA 60°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"FR4dünnheightmap60c.csv"
                 G4 S2 
                 M290 S0.20                                                   ; Baby Stepp is setting
                 echo "Babystep for FR4dünn PLA is +0.20 mm"
          
          
              if (move.extruders[0].filament == "PETG" || move.extruders[1].filament == "PETG") 
                 G4 S1
                 M290 R0 S0    ; Reset baby steps
                 M291 P"FR4dünn  PETG 85°C" R"Heightmap loaded" S0 T4
                 M300 S800 P1000
                 G29 S1 P"FR4dünnheightmap85c.csv"
                 G4 S2
                 M290 S0.20                                                          ; Baby Stepp is setting
                 ;M300 S2000 P1000                                                
                 echo "Babystep for FR4dünn PETG is +0.20 mm"
          
              if (move.extruders[0].filament == "ASA" || move.extruders[1].filament == "ASA") 
                 G4 S1
                 M291 P"FR4dünn  ASA 85°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"FR4dünnheightmap100c.csv"
                 G4 S2
                 M290 S0.20                                                  ; Baby Stepp is setting
                 echo "Babystepp für FR4dünn ASA is +0.20 mm"
          
          
              if (move.extruders[0].filament == "PA12CF" || move.extruders[1].filament == "PA12CF") 
                 G4 S1
                 M291 P"FR4dünn  PA12CF 90°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"FR4dünnheightmap90c.csv"
                 G4 S2 
                 M290 S0.20                                                   ; Baby Stepp is setting
                 echo "Babystep for FR4dünn PA12CF is +0,12 mm"
          ;---------------------------------------------------------------------------------------------------------------------------------------   
          ; check if BlackPrint selected is
          if global.buildplate_type == 4
              echo "BlackPrint is selected"
              if (move.extruders[0].filament == "PLA" || move.extruders[1].filament == "PLA") 
                 G4 S1
                 M291 P"BlackPrint  PLA 60°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"BlackPrintheightmap60c.csv"
                 ;G4 S2 
                 ;M290 S-0.12                                                   ; Baby Stepp is setting
                 ;echo "Babystepp für BlackPrint is -0.12mm"
          
              if (move.extruders[0].filament == "PETG" || move.extruders[1].filament == "PETG") 
                 G4 S1
                 M290 R0 S0    ; Reset baby steps
                 M291 P"BlackPrint  PETG 85°C" R"Heightmap loaded" S0 T4
                 M300 S800 P1000
                 G29 S1 P"BlackPrintheightmap85c.csv"
                 ;G4 S2
                 ;M290 S-0.12                                                          ; Baby Stepp is setting
                 ;M300 S2000 P1000                                                
                 ;echo "Babystepp für BlackPrint is -0.12mm"
          
              if (move.extruders[0].filament == "ASA" || move.extruders[1].filament == "ASA") 
                 G4 S1
                 M291 P"BlackPrint  ASA 85°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"BlackPrintheightmap100c.csv"
                 ;G4 S2
                 ;M290 S-0.12                                                  ; Baby Stepp is setting
                 ;echo "Babystepp für BlackPrint is -0.12mm"
          
              if (move.extruders[0].filament == "PA12CF" || move.extruders[1].filament == "PA12CF") 
                 G4 S1
                 M291 P"BlackPrint  PA12CF 90°C" R"Heightmap loaded" S0 T4
                 M290 R0 S0    ; Reset baby steps
                 M300 S800 P1000
                 G29 S1 P"BlackPrintheightmap90c.csv"
                 ;G4 S2 
                 ;M290 S0.04                                                   ; Baby Stepp is setting
                 ;echo "Babystep for Buildtak is 0.04mm"   
          

          98ec76da-c2cd-4988-9f2c-51da70b2aea6-image.png

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

            When did you last update the mesh?

            Z-Bot CoreXY Build | Thingiverse Profile

            Anawandurundefined 1 Reply Last reply Reply Quote 0
            • Anawandurundefined
              Anawandur @Phaedrux
              last edited by

              @Phaedrux I created this mesh directly before printing. Since I have big problems with the first layer, the bed is leveled with a macro and the Heightmap.csv is created. Depending on the loaded build plate and filament type, the map is then written to example: Blackprintheightmap60°c, which is then loaded into start.g.

              gloomyandyundefined 1 Reply Last reply Reply Quote 0
              • gloomyandyundefined
                gloomyandy @Anawandur
                last edited by

                @Anawandur Have you tried using more points in the mesh? It looks to me like that smaller rectangle would fit between two mesh points. Are you sure you have the probe offset set correctly? Might be worth posting a picture of the printer showing the probe position so that folks can check that the offsets look correct? Also worth posting your zhome macro so we can see what that is doing.

                If things are still not correct I'd be tempted to try to simplify things and just run a gcode file that performs the scan and uses that mesh to do the test print. You have a lot going on in all of those various macros.

                Anawandurundefined 1 Reply Last reply Reply Quote 0
                • Anawandurundefined
                  Anawandur @gloomyandy
                  last edited by

                  @gloomyandy I've already tried it with 15 points. If I use more points, the first layer becomes even more uneven. With 3x3 I get a better result than with 7x7.

                  I think I have specified the offset correctly, the IR sensor is located at the back right.
                  PXL_20240915_143117183.jpg

                  Home.z

                  T-1 P0 
                  G91 ; relative mode
                  G1 H2 Z4 F2000 ; raise head 4mm to ensure it is above the Z probe trigger height
                  G90 ; back to absolute mode
                  G1 H2 X170 Y110 F6000 ; put head over the centre of the bed, or wherever you want to probe
                  M558 F400
                  G30 ; lower head, stop when probe triggered and set Z to trigger height
                  G1 H0 Z5 F250
                  M558 F50 A9 S0.003
                  G30
                  M558 F200 A1
                  G1 H1 X-350 U355 Y-2 F3000
                  
                  Anawandurundefined 1 Reply Last reply Reply Quote 0
                  • Anawandurundefined
                    Anawandur @Anawandur
                    last edited by Anawandur

                    I did a few more tests today. I have different printing plates. On my BlackPrint FR4 (black) I have different mattings due to previous prints or scratched surfaces, which apparently has a big impact on the IR probe.

                    In the following photo you can see a matting strip, that's exactly where the IR probe measured and found .0.9mm.

                    PXL_20240915_160038324.jpg
                    .
                    Screenshot 2024-09-15 172412.png

                    Then I took a measurement on a BuildTag. There is white writing on the bottom left and in the middle there are marks from an old print. This is also reflected in the heightmap.
                    PXL_20240915_162529314.jpg
                    .
                    Screenshot 2024-09-15 182712.png

                    Anawandurundefined 1 Reply Last reply Reply Quote 0
                    • Anawandurundefined
                      Anawandur @Anawandur
                      last edited by

                      I have now replaced the IR sensor with the BL-Touch and the problem is gone. I think that the different shades on the printing plates caused these errors when using the IR sensors.

                      droftartsundefined 1 Reply Last reply Reply Quote 1
                      • droftartsundefined
                        droftarts administrators @Anawandur
                        last edited by

                        @Anawandur From the wiki page on the IR probe, it may not work well with a PEI plate: https://docs.duet3d.com/Duet3D_hardware/Accessories/IR_Probe#bed-surface

                        This is highly transparent to IR. Paint the underside matt black (see below) before using adhesive sheet to attach it to the bed plate. Changes to the surface finish affect the trigger height slightly. We have a report that as an alternative to painting the underside black you can sand the top surface with very fine grit sandpaper until it has a dull matt appearance, but we have not confirmed this.

                        Clearly it's not working great with FR4 either. I don't think we have ever tested it with the IR probe, but it sounds like FR4 is invisible to IR too. Painting the back matt black and/or sanding the top may help. But it sounds like you're happy with a BLTouch now.

                        Ian

                        Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

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