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

    BL Touch

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    8
    126
    6.9k
    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.
    • Gost101undefined
      Gost101
      last edited by

      @dc42 The room temperature is 22.9C but can be low as 15.5C. The target temperature of the bed is 70*C.

      dc42undefined 1 Reply Last reply Reply Quote 0
      • dc42undefined
        dc42 administrators @Gost101
        last edited by dc42

        @Gost101 said in BL Touch:

        @dc42 The room temperature is 22.9C but can be low as 15.5C. The target temperature of the bed is 70*C.

        Hmm, very odd then that it reported a gain (A parameter) of 30.8. The computed gain should be higher than the temperature rise during tuning. So if the indicated bed temperature was 22.9C when you started tuning, and it reached 70C, then the gain should be greater than 47. OTOH if the bed was already at e.g. 45C then you started tuning, then the computed gain would indeed be much lower than it really is. Tuning must start with the heater reading close to room temperature.

        You could try using M307 H0 A55 C297 D23.

        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

        1 Reply Last reply Reply Quote 0
        • Gost101undefined
          Gost101
          last edited by

          @dc42 said in BL Touch:

          M307 H0 A55 C297 D23

          I appreciate it. I just ran

          M307 H0 A55 C297 D23
          

          Then I started:

          M303 H0 S70
          

          Hopefully it will work out.

          1 Reply Last reply Reply Quote 0
          • Gost101undefined
            Gost101
            last edited by

            @dc42 This is the result: Temp2.PNG

            9/29/2020, 2:16:35 PM	Auto tune heater 0 completed in 2457 sec
            Use M307 H0 to see the result, or M500 to save the result in config-override.g
            9/29/2020, 2:03:47 PM	Auto tune phase 3, peak temperature was 70.0
            9/29/2020, 2:03:43 PM	Auto tune phase 2, heater off
            9/29/2020, 1:35:43 PM	Auto tune phase 1, heater on
            9/29/2020, 1:35:38 PM	M303 H0 S70
            Auto tuning heater 0 using target temperature 70.0°C and PWM 1.00 - do not leave printer unattended
            9/29/2020, 1:35:04 PM	M307 H0 A55 C297 D23
            
            jay_s_ukundefined 1 Reply Last reply Reply Quote 0
            • jay_s_ukundefined
              jay_s_uk @Gost101
              last edited by

              @Gost101 that's worked then.
              As it says, Send M500 and make sure M501 is part of your config

              Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

              1 Reply Last reply Reply Quote 0
              • Gost101undefined
                Gost101
                last edited by

                @jay_s_uk I do not have M501. What is it and where should it be in the config?

                ; Configuration file for Duet WiFi (firmware version 3)
                ; executed by the firmware on start-up
                ;
                ; generated by RepRapFirmware Configuration Tool v3.1.4 on Mon Sep 28 2020 07:45:49 GMT-0600 (Mountain Daylight Time)
                
                ; General preferences
                G90                                                ; send absolute coordinates...
                M83                                                ; ...but relative extruder moves
                M550 P"A.C.E."                                     ; set printer name
                M918 P1 E4 F2000000                                ; configure direct-connect display
                
                ; Network
                M551 P"SpaceForceHu2020!!"                         ; set password
                M552 S1                                            ; enable network
                M586 P0 S1                                         ; enable HTTP
                M586 P1 S0                                         ; disable FTP
                M586 P2 S0                                         ; disable Telnet
                
                ; Drives
                M569 P0 S1                                         ; X physical drive 0 goes backwards
                M569 P1 S1                                         ; Y physical drive 1 goes backwards
                M569 P2 S0                                         ; Z One physical drive 2 goes forwards
                M569 P2 S0                                         ; Z One physical drive 2 goes forwards
                M569 P3 S0                                         ; E physical drive 3 goes backwards
                M584 X0 Y1 Z2 E3                                   ; set drive mapping
                M350 X16 Y16 Z16 E16 I1                            ; configure microstepping with interpolation
                M92 X80.00 Y80.00 Z400.00 E415.00                  ; set steps per mm
                M566 X1200.00 Y1200.00 Z24.00 E300.00              ; set maximum instantaneous speed changes (mm/min)
                M203 X9000.00 Y9000.00 Z180.00 E6000.00            ; set maximum speeds (mm/min)
                M201 X500.00 Y500.00 Z100.00 E5000.00              ; set accelerations (mm/s^2)
                M906 X800 Y800 Z800 E1000 I50                      ; 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 X500 Y500 Z500 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 S2                                         ; configure Z-probe endstop for low end on Z
                
                ; Z-Probe
                M950 S0 C"exp.heater7"                             ; create servo pin 0 for BLTouch
                M558 P9 C"^zprobe.in" H5 F600 T9000                ; set Z probe type to bltouch and the dive height + speeds
                G31 P500 X37 Y0 Z2.150                               ; set Z probe trigger value, offset and trigger height
                M557 X30:470 Y30:470 S25                           ; define mesh grid
                
                ; Heaters
                M308 S0 P"bedtemp" Y"thermistor" T100000 B4092     ; 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 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 S70                                        ; set temperature limit for heater 0 to 70C
                M308 S1 P"e0temp" Y"thermistor" T100000 B4092      ; configure sensor 1 as thermistor on pin e0temp
                M950 H1 C"e0heat" T1                               ; create nozzle heater output on e0heat and map it to sensor 1
                M307 H1 B0 S1.00                                   ; disable bang-bang mode for heater  and set PWM limit
                
                ; Fans
                M950 F0 C"fan0" Q500                               ; create fan 0 on pin fan0 and set its frequency
                M106 P0 S1 H-1                                     ; set fan 0 value. Thermostatic control is turned off
                M950 F1 C"fan1" Q500                               ; create fan 1 on pin fan1 and set its frequency
                M106 P1 S1 H1 T45                                  ; set fan 1 value. Thermostatic control is turned on
                M950 F2 C"fan2" Q500                               ; create fan 2 on pin fan2 and set its frequency
                M106 P2 S1 H1:0 T45                                ; set fan 2 value. Thermostatic control is turned on
                
                ; Tools
                M563 P0 S"Hot end" H1 D0 F1:2                           ; define tool 1
                G10 P1 X0 Y0 Z0                                    ; set tool 1 axis offsets
                G10 P1 R0 S0                                       ; set initial tool 1 active and standby temperatures to 0C
                
                
                ; Custom settings are not defined
                
                ; Miscellaneous
                M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
                
                
                
                1 Reply Last reply Reply Quote 0
                • Phaedruxundefined
                  Phaedrux Moderator
                  last edited by

                  When you use M500 to save computed values, they go into config-override.g. M501 loads the config-override.g file. So add M501 to the end of config.g so that it gets loaded at startup.

                  Z-Bot CoreXY Build | Thingiverse Profile

                  1 Reply Last reply Reply Quote 0
                  • Gost101undefined
                    Gost101
                    last edited by

                    @Phaedrux Cool beans, I had to run it again as the 501 would not be in place until rebooting takes place it failed. But ill run it again. Ambient room temperature is at 35*C now so it will affect the calibration I dont know if i should change anything.

                    1 Reply Last reply Reply Quote 0
                    • Gost101undefined
                      Gost101
                      last edited by

                      @Phaedrux It keeps failing Temp3.PNG

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

                        It succeeded once though didn't it? If you use m500 after it completed successfully once the values would be saved to config-override.g. do you see anything in that file?

                        Z-Bot CoreXY Build | Thingiverse Profile

                        1 Reply Last reply Reply Quote 0
                        • Gost101undefined
                          Gost101
                          last edited by

                          @Phaedrux I didn't have m501 in my config file. I sent m500 after I put it in but would not work because the printer said that m501 was not in the config file. So I had to reboot it. And now I can't get it to work.

                          1 Reply Last reply Reply Quote 0
                          • dc42undefined
                            dc42 administrators
                            last edited by

                            Are you allowing the bed to cool right down to room temperature before you start the tuning process? That is essential.

                            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

                            1 Reply Last reply Reply Quote 0
                            • Gost101undefined
                              Gost101
                              last edited by

                              @dc42 indeed.

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

                                @Gost101 M500 saves the results of an autotune (and some other info) to config_override.g in the 'sys' folder on your SD card. An example of config_override.g:

                                ; config-override.g file generated in response to M500 at 2020-09-30 10:19
                                ; This is a system-generated file - do not edit
                                ; Heater model parameters
                                M307 H0 A215.5 C661.6 D5.8 S1.00 V11.6 B1
                                M307 H1 A341.8 C144.9 D4.6 S1.00 V12.2 B0
                                M307 H2 A341.8 C144.9 D4.6 S1.00 V12.2 B0
                                ; Workplace coordinates
                                G10 L2 P1 X0.00 Y0.00 Z0.00 U0.00
                                G10 L2 P2 X0.00 Y0.00 Z0.00 U0.00
                                G10 L2 P3 X0.00 Y0.00 Z0.00 U0.00
                                G10 L2 P4 X0.00 Y0.00 Z0.00 U0.00
                                G10 L2 P5 X0.00 Y0.00 Z0.00 U0.00
                                G10 L2 P6 X0.00 Y0.00 Z0.00 U0.00
                                G10 L2 P7 X0.00 Y0.00 Z0.00 U0.00
                                G10 L2 P8 X0.00 Y0.00 Z0.00 U0.00
                                G10 L2 P9 X0.00 Y0.00 Z0.00 U0.00
                                

                                You can then:

                                either open config_override.g, copy the M307 H0 ... line to your config.g, making sure you paste it in after, or in place of, any existing M307 H0 command,

                                or add M501 to the end of your config.g, which causes it to run config_override.g after config.g.

                                M500 and M501 are well-documented in the gcode dictionary: https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M500_Store_parameters

                                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
                                • Gost101undefined
                                  Gost101
                                  last edited by

                                  @droftarts Thanks. Also the printer just finished the M303 with another cancelled:

                                  9/30/2020, 3:27:43 AM	Auto tune cancelled because target temperature was not reached
                                  9/30/2020, 2:57:35 AM	Auto tune phase 1, heater on
                                  9/30/2020, 2:57:29 AM	M303 H0 S70
                                  Auto tuning heater 0 using target temperature 70.0°C and PWM 1.00 - do not leave printer unattended
                                  9/30/2020, 2:57:22 AM	M307 H0 A55 C297 D23
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • Gost101undefined
                                    Gost101
                                    last edited by

                                    @droftarts Is there a way to ignore the safety's and allow the bed to heat up to 70*C?

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

                                      @Gost101 It's going to be very difficult to tune the bed to the maximum temperature it can achieve, because sometimes it gets there, and sometimes it doesn't. There isn't anyway to disable the heater warning, because that would be unsafe. Try tuning to 60C.

                                      Also, have you changed the thermistor setting in config.g to what they actually are? I've just checked the Creality CR10 S5 Marlin firmware source code. Your bed thermistor should be a 100k EPCOS, and so is your hotend as standard. For the hot end, you linked an E3D heater cartridge, not the thermistor! Are you still using the stock thermistor? If so, it's also a 100k EPCOS thermistor. If they are both standard, change these lines in config.g for (slightly) more accurate temperatures:

                                      M308 S0 P"bedtemp" Y"thermistor" T100000 B4092 ; configure sensor 0 as thermistor on pin bedtemp
                                      ...
                                      M308 S1 P"e0temp" Y"thermistor" T100000 B4092  ; configure sensor 1 as thermistor on pin e0temp
                                      

                                      If you've changed the hot end thermistor, post what it is. Perhaps also post your current config.g.

                                      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
                                      • Gost101undefined
                                        Gost101
                                        last edited by

                                        I'm using this e3D thermistor for the hotend and the stock one for the bed. Granted I need to buy a higher temp one for the hotend. link text alt text

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

                                          @Gost101 Okay, so that's a Semitec 104NT (a drop-in replacement for the discontinued Semitec 104GT). Change config.g to:

                                          M308 S1 P"e0temp" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 1 as thermistor on pin e0temp
                                          

                                          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
                                          • Gost101undefined
                                            Gost101
                                            last edited by

                                            @droftarts Tunning for the bed failed again.

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