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

    BLtouch with Reprap Firmware 3.0

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    9
    27
    3.6k
    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.
    • droftartsundefined
      droftarts administrators @CupaCabra
      last edited by

      @CupaCabra Great! Please post the 'Z-Probe' section of your config.g to show how you resolved this!

      Also, you don't need to unassign the heater channels in RRF3 with M950 H3 C"nil", as they are not assigned by default. Only a few pins are assigned by default, and only need to be unassigned if you use them for something else; see https://duet3d.dozuki.com/Wiki/RepRapFirmware_3_overview#Section_Duet_2_WiFi_Ethernet_and_Duet_2_Maestro

      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
      • DIY-O-Sphereundefined
        DIY-O-Sphere
        last edited by

        @CupaCabra said in BLtouch with Reprap Firmware 3.0:

        M280 P3 S10 ......

        Now I am confused.
        You will find exact your configuration in
        https://duet3d.dozuki.com/Wiki/Gcode#Section_M280_Set_servo_position

        And we have done it succesfully on a buddys wifi exact that way with heater7.
        Are you shure you have update to the stable and not to a older beta.
        I think there you had to trigger the heater instead of the servo channel.

        (UTC+1)

        1 Reply Last reply Reply Quote 0
        • DIY-O-Sphereundefined
          DIY-O-Sphere
          last edited by DIY-O-Sphere

          @droftarts said in BLtouch with Reprap Firmware 3.0:

          Also, you don't need to unassign the heater channels in RRF3 with M950 H3 C"nil"

          The beta would explain that too.

          (UTC+1)

          1 Reply Last reply Reply Quote 0
          • CupaCabraundefined
            CupaCabra
            last edited by

            so i have change the

            deployprobe.g
            M280 P3 S10

            retractprobe.g
            M280 P3 S90

            if i test with a Marco file
            The pin go´s out with S10 und retract with S90

            I think it´s right.

            1 Reply Last reply Reply Quote 0
            • CupaCabraundefined
              CupaCabra
              last edited by

              ; Configuration file for Duet WiFi (firmware version 3)
              ; executed by the firmware on start-up
              ;
              ; generated by RepRapFirmware Configuration Tool v2.1.5 on Thu Jan 09 2020 09:19:35 GMT+0100 (Mitteleuropäische Normalzeit)

              ; General preferences
              G90 ; send absolute coordinates...
              M83 ; ...but relative extruder moves
              M550 P"My Printer" ; set printer name

              M667 S1 ; select CoreXY mode

              ; Network
              M551 P"123456" ; 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 ; physical drive 0 goes forwards
              M569 P1 S1 ; physical drive 1 goes forwards
              M569 P2 S1 ; physical drive 2 goes forwards
              M569 P3 S1 ; physical drive 3 goes forwards
              M569 P4 S1 ; physical drive 4 goes forwards
              M584 X0 Y1 Z2 E3:4 ; set drive mapping
              M350 X16 Y16 Z16 E16:16 I1 ; configure microstepping with interpolation
              M92 X80.00 Y80.00 Z4000.00 E415.00:415.00 ; set steps per mm
              M566 X900.00 Y900.00 Z12.00 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min)
              M203 X6000.00 Y6000.00 Z180.00 E1200.00:1200.00 ; set maximum speeds (mm/min)
              M201 X500.00 Y500.00 Z20.00 E250.00:250.00 ; set accelerations (mm/s^2)
              M906 X1000 Y1000 Z1400 E1000:1000 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 X400 Y400 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

              ; BLTouch - Heaters
              ;M307 H3 A-1 C-1 D-1 ; Disable the 7th Heater to free up PWM channel 5 on the Duex board.

              ; Z-Probe
              M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch
              M558 P9 C"^zprobe.in" H5 F100 T2000 ; set Z probe type to bltouch and the dive height + speeds
              G31 X20 Y0 Z3.3 P25 ; Z probe trigger value, offset in relation to nozzle. And trigger height adjustment
              M557 X50:350 Y50:350 S50 ; define mesh grid

              ; Heaters
              M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; 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
              M143 H0 S120 ; set temperature limit for heater 0 to 120C
              M307 H0 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit
              M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; 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
              M143 H1 S280 ; set temperature limit for heater 1 to 280C
              M307 H1 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit
              M308 S2 P"e1temp" Y"thermistor" T100000 B4138 ; configure sensor 2 as thermistor on pin e1temp
              M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2
              M143 H2 S280 ; set temperature limit for heater 2 to 280C
              M307 H2 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit

              ; Fans
              M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
              M106 P0 S0 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:2 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:2 T45 ; set fan 2 value. Thermostatic control is turned on

              ; Tools
              M563 P0 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
              M563 P1 H2 F0 ; 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
              • CupaCabraundefined
                CupaCabra
                last edited by

                the
                Firmware : 3.0 (2020-01-03b3)
                WiFi Server Version: 1.23
                Web Interface: 1.22.6

                1 Reply Last reply Reply Quote 0
                • LowLanderundefined
                  LowLander
                  last edited by

                  Thanks to this thread I've made progress getting my BLtouch to work. I do have a few questions still.

                  Basic info:
                  Duet WiFi 1.02 running RRF3
                  BLtouch V3.1

                  The BLtouch is wired as follows:
                  White Wire (Z signal) = Z Probe IN
                  Orange (Servo Sig) = Heater3
                  Red (5v) = +5V
                  Brown (GND) = GND

                  Questions (I have googled, but can't find clear answers anywhere):

                  • When I start the printer, the BLtouch performs a self test. This results in the pin being up, and the red led on the BLtouch being on. Is that correct?
                  • When I do a M280 P0 S10 the pin drops. The red led is off, but a blue led is on now. Is that correct?
                  • M280 P0 S10 I1 gives the same result. Is it supposed to work with and without the I1 parameter?
                  • M280 P0 S90 retracts the pin, the red led is on as well as the blue led. Is that correct?

                  Thanks in advance!

                  1 Reply Last reply Reply Quote 0
                  • DIY-O-Sphereundefined
                    DIY-O-Sphere
                    last edited by

                    @LowLander said in BLtouch with Reprap Firmware 3.0:

                    M280 P0 S10 I1

                    https://duet3d.dozuki.com/Wiki/RepRapFirmware_3_overview#Section_M280
                    You can remove the I1
                    I have the same optical signalling, so everything looks fine...

                    (UTC+1)

                    LowLanderundefined 1 Reply Last reply Reply Quote 0
                    • Adamfilipundefined
                      Adamfilip
                      last edited by

                      @dc42

                      The line is there in config

                      M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch

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

                        @Adamfilip said in BLtouch with Reprap Firmware 3.0:

                        @dc42

                        The line is there in config

                        M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch

                        Thanks, somehow I missed that.

                        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
                        • LowLanderundefined
                          LowLander @DIY-O-Sphere
                          last edited by

                          @DIY-O-Sphere thanks for confirming that.

                          1 Reply Last reply Reply Quote 0
                          • radekzlundefined
                            radekzl
                            last edited by

                            Hello,
                            today I tried upgrade firmware on my Duet Wifi from 2.05.1 to 3.01RC6. Upgrade was successfull but unfortunately my BL Touch not work after upgrade.

                            I connected BL TOUCH according to this manual:
                            https://betrue3d.dk/bltouch-on-duet-wifi-configuratio-and-usage/

                            With FW version 2.05.1 BL TOUCH worked OK. I understand that I must edit config.g, deployprobe.g, retractprobe.g and home files. I did it, but BL TOUCH not work. After power on BL TOUCH did self test, but thats all. Commands M401, M402 or M280 from console not work and homez and home all not work too.

                            Here is my config.g:
                            ; Configuration file for Duet WiFi (firmware version 1.21)
                            ; executed by the firmware on start-up
                            ;
                            ; generated by RepRapFirmware Configuration Tool on Fri Feb 01 2019 23:24:57 GMT+0100 (Středoevropský standardní čas)

                            ; General preferences
                            G90 ; Send absolute coordinates...
                            M83 ; ...but relative extruder moves
                            M555 P1 ; Set firmware compatibility to look like RepRapFirmare

                            ; Network
                            M550 PZBox Mk. I ; Set machine name
                            M552 S1 ; Enable network
                            M587 S"kluci" P"" ; Configure access point. You can delete this line once connected
                            M586 P0 S1 ; Enable HTTP
                            M586 P1 S1 ; Enable FTP
                            M586 P2 S0 ; Disable Telnet

                            M584 X0 Y1:6 Z2 U5 E3:4 ; Create U axis for second X carriage before we try to configure it

                            ; Drives
                            M569 P0 S1 D2 ; Drive 0 goes forwards
                            M569 P1 S0 D2 ; Drive 1 goes forwards
                            M569 P2 S0 D2 ; Drive 2 goes forwards
                            M569 P3 S1 D2 ; Drive 3 goes forwards
                            M569 P4 S0 D2 ; Drive 4 goes forwards
                            M569 P5 S0 D2 ; Drive 5 goes forwards
                            M569 P6 S1 D2 ; Drive 5 goes forwards

                            ; Laser sensor
                            M591 D0 P5 C"zstop" R5:130 E6.0 S1 ; Duet3D laser sensor for extruder drive 0 is connected to endstop input 3 (E0), tolerance 40 to 120%, 3mm comparison length
                            M591 D0 ; display filament sensor parameters for extruder drive 0
                            M591 D1 P5 C"e1stop" R15:250 E6.0 S1 ; Duet3D laser sensor for extruder drive 0 is connected to endstop input 3 (E0), tolerance 40 to 120%, 3mm comparison length
                            M591 D1 ; display filament sensor parameters for extruder drive 0

                            M350 X256 Y256:256 U256 Z256 E256:256 I0 ; Configure microstepping without interpolation
                            M201 X700 Y700:700 U700 Z15 E800 ; Accelerations (mm/s^2)
                            M203 X5000 Y5000 U5000 Z100 E3600 ; Maximum speeds (mm/min)
                            M566 X450 Y450 U450 Z30 E20 ; Maximum jerk speeds mm/minute

                            M208 X0:276 Y-75:200 U-59:208 Z-10:200 ; Set axis minima:maxima (adjust to suit your machine) x-60:216 u0:250
                            M92 X2582.48954 Y2593.77082 U2579.6913 Z6546.644 ; Set axis steps/mm
                            M92 E6592.55:6592.55 ; Set extruder steps per mm
                            M906 X600 Y700:700 U600 Z500 E1000:1000 I20 ; Set motor currents (mA) and motor idle factor in per cent
                            M84 S30 ; Set idle timeout

                            ; Endstops
                            M574 X2 S1 P"xstop" ; Set active high endstops
                            M574 Y2 S1 P"ystop" ; Set active high endstops
                            M574 U1 S1 P"e0stop" ; Set active high endstops
                            M574 Z1 S2 ; Z has no endstop

                            ; Disable heaters H3-H7 to free up pins
                            M950 H3 C"nil"
                            M950 H4 C"nil"
                            M950 H5 C"nil"
                            M950 H6 C"nil"
                            M950 H7 C"nil"

                            ; Z-Probe
                            ;M307 H7 A-1 C-1 D-1 ; Disable heater on PWM channel for BLTouch
                            M950 S0 C"exp.heater7" ; create servo pin 0 for BLTouch
                            M558 P9 C"^zprobe.in" H5 F800 T3000 ; Set Z probe type to bltouch and the dive height + speeds
                            G31 P25 X1.0 Y-31.25 Z1 ; Set Z probe trigger value, offset and trigger height Z+ pousouva osu Z smerem dolu k podlozce (stará tisková hlava X7.9 Y58.8)
                            M557 X15:195 Y5:175 S20 ; Define mesh grid

                            ; Heaters
                            ;M307 H7 A-1 C-1 D-1 ; Disable bang-bang mode for the bed heater and set PWM limit
                            M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0
                            M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
                            M143 H0 S120 ; Set temperature limit for heater 0 to 120C

                            ; Hot end - levý
                            ;M305 P1 X200
                            M308 S1 P"spi.cs1" Y"rtd-max31865" A"EXTRUDER LEVY" ; Configure thermocouple for heater 1
                            M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
                            M307 H1 A361.3, C127.9, D11.9 S1
                            M143 H1 S400 ; Set temperature limit for heater 1 to 280C

                            ; Hot end - pravý
                            ;M305 P2 X201
                            M308 S2 P"spi.cs2" Y"rtd-max31865" A"EXTRUDER PRAVY" ; Configure thermocouple for heater 2
                            M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2
                            M307 H2 A364.1 C146.0 D4.5 S1.00 V23.8 B0
                            M143 H2 S300 ; Set temperature limit for heater 2 to 280C

                            M308 S3 Y"drivers" A"DRIVERS" ; configure sensor 2 as temperature warning and overheat flags on the TMC2660 on Duet
                            M308 S4 Y"mcu-temp" A"MCU" ; configure sensor 3 as thermistor on pin e1temp for left stepper

                            ;M305 P101 X1001 S"Drivers Duet" ; Temperature of drivers Duet
                            ;M305 P102 x1002 S"Drivers Duex5" ; Temperature of drivers Duex5

                            ; Fans
                            M950 F1 C"fan1"
                            M106 P1 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
                            M950 F0 C"fan0"
                            M106 P0 H2 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on
                            M950 F3 C"duex.fan3"
                            M106 P3 H-1 C"Chlazeni levy"
                            M950 F4 C"duex.fan4"
                            M106 P4 H-1 C"Chlazeni pravy"
                            M950 F5 C"duex.fan5"
                            M106 P5 T32:40 H100:101:102 C"Duet Fan" ;cooling fan that starts to turn on when the MCU temperature (virtual heater 100) reaches 45C and reaches full speed when the MCU temperature reaches 65C or if any TMC2660 drivers (virtual heaters 101 and 102) report that they are over-temperature

                            ; Tools
                            M563 P0 D0 H1 X3 F3 ; Define tool 0
                            G10 P0 X0 Y0 U0 Z0 ; Set tool 0 axis offsets
                            G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
                            M563 P1 D1 H2 F4 ; Define tool 1
                            G10 P1 X0 Y0.05 U9.6 Z0.4 ; Set tool 1 axis offsets
                            G10 P1 R0 S0 ; Set initial tool 1 active and standby temperatures to 0C

                            ;Pressure advance
                            ;M572 D0:1 S0.05:0.05

                            ; Automatic saving after power loss is not enabled

                            ; Custom settings are not configured

                            Here is my homeall.g:
                            ; homeall.g
                            ; called to home all axes

                            G91 ; relative positioning
                            G1 Z5 F6000 H2 ; lift Z relative to current position
                            G1 H1 X515 Y515 U-515 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
                            G1 X-5 Y-5 U5 F6000 ; go back a few mm
                            G1 H1 X215 Y215 U-215 F360 ; move slowly to X and Y axis endstops once more (second pass)
                            G90 ; absolute positioning
                            G1 X100 Y100 F6000 ; go to first bed probe point and home Z
                            G30 ; home Z by probing the bed

                            Here is my homez.g:
                            ; homez.g
                            ; called to home the Z axis

                            G91 ; relative positioning
                            G1 Z5 F6000 H2 ; lift Z relative to current position
                            G90 ; absolute positioning
                            T1
                            G1 X100 Y100 F6000 ; go to first probe point
                            G30 ; home Z by probing the bed

                            Here is my deployprobe.g:
                            ; deployprobe.g
                            ; called to deploy a physical Z probe
                            M280 P0 S10

                            Here is my retractprobe.g:
                            ; retractprobe.g
                            ; called to retract a physical Z probe
                            ;
                            M280 P0 S90

                            I do not know, what is wrong. Can you help me please?

                            Thank you very much.

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

                              @radekzl Please start a new thread for your issue.

                              Z-Bot CoreXY Build | Thingiverse Profile

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