BL-touch setting on Reprap Firmware 3.0



  • 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.



  • Here is my config for BLTouch - Duet2 with Duex5

    config.g

    ; Z probe and compensation definition
    M558 P9 C"^zprobe.in" H5 R1 F120 T6000 A5 S0.02  ;BLTouch connected to Z probe IN pin
    M950 S0 C"duex.pwm1"				             ;BLTouch Servo (S0) on duet pwm1
    G31 X2 Y42 Z1.438 P25                            ; Customize your offsets appropriately - do a paper test, and put the probed value in the Z value here
    M557 X30:280 Y30:280 S20
    
    

    Your M950 and M558 are the wrong way round, I made the same mistake!
    I am sure the guide is wrong!

    HTH

    Paul



  • @PaulHew

    Awesome. Thank you very much for your advice. Now it is ok.

    Here is my functional part of config.g:

    ; 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 Z0 P"nil" ; 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
    M558 P9 C"^zprobe.in" H5 F800 T3000 ; Set Z probe type to bltouch and the dive height + speeds
    M950 S0 C"duex.pwm5" ; create servo pin 0 for BLTouch
    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


Log in to reply