BL TOUCH NOT WORKING.
-
@oliof I was using those names beacause that is what I was sent by a friend of mine. It has changes since. I will post the final files once it is done, working and tested. I am in the process of doing that now but unfortunatly life just gets in the way.
-
@Herve_Smith M401/M402 means the firmware properly tracks whether the probe is active or not. The canonical macro names to configure these G-Codes is retractprobe.g/deployprobe.g because this was implemented before BLTouch was a thing. So its not just a question of using an aesthetically pleasing or logically right name. And in a thread called "BLTOUCH NOT WORKING" I am asking the OP -- not you -- if there is a reason for them deviating from these canonical ways.
I hope that helps you understand why I am asking the questions I am asking.
-
@oldironjunkie life getting in the way is what happens to all of it, no worries. I would suggest using the canonical names for those macros and using M401/M402 to rule out any weird misses from mismatching macros, names and firmware expectations.
-
This post is deleted! -
@droftarts I finally got it working. I had a bad factor BL touch harness to begin with (I have a replacement coming). Before I found out that I messed with everything and got everything out of wack. I should have followed instructions and approached things logically. I now have a bed level height file, homing works great including the Z axis and my first and second prints came out great. I still have to mess with pressure advance (I just installed a new extruder) and dial in the Z height. Thanks to all that helped I really appreciate that. As for the final files here they are.
;General preferences M575 P1 S1 B57600 ; enable support for PanelDue G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"OLDIRON PRINTER" ; set printer name ;Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ;Drives M569 P0 S0 ; physical drive 0 goes backwards M569 P1 S1 ; physical drive 1 goes forwards M569 P2 S0 ; physical drive 2 goes backwards M569 P3 S0 ; physical drive 3 goes backwards M569 P4 S1 ; physical drive 4 goes forwards ;M569 P3 S0 ; physical drive 3 goes backwards ;M569 P3 S0 ; physical drive 3 goes backwards ;M569 P3 S0 ; physical drive 3 goes backwards ;M569 P3 S0 ; physical drive 3 goes backwards M584 X0 Y1 Z2 E4:4:4:4 ; set drive mapping M350 X16 Y16 Z16 E8:8:8:8 I1 ; configure microstepping with interpolation M92 X79.68 Y79.44 Z400.00 E820.0:454.00:454.00:454.00 ; set steps per mm M566 X900.00 Y900.00 Z900.00 E1600.00:1600.00:1600.00:1600.00 ; set maximum instantaneous speed changes (mm/min) M203 X4000.00 Y4000.00 Z1500.00 E4000.00:4000.00:4000.00:4000.00 ;set maximum speeds (mm/min) M201 X1000.00 Y1000.00 Z350.00 E600.00:600.00:600.00:600.00 ; set accelerations (mm/s^2) M906 X1000 Y1000 Z1000 E800:800:800:800 I50 ; set motor currents (mA) and motor idle factor in per cent M84 S300 ; Set idle timeout ;Axis Limits M208 X5 Y5 Z0 S1 ; set axis minima M208 X320 Y300 Z400 S0 ; set axis maxima ;Endstops M574 X1 S1 P"!xstop" ; configure active-(high) LOW endstop for low end on X via pin xstop M574 Y1 S1 P"!ystop" ; configure active-(high) LOW endstop for low end on Y via pin ystop M574 Z1 S1 P"!zstop" ; configure active-(high) LOW endstop for low end on Z via pin zstop ;Z-Probe M950 S0 C"duex.pwm1" ; Duet 2 WiFi/Ethernet + DueX2/5 M558 P9 C"^zprobe.in" H3 F100 T9000 R0.5 ; Duet 2 WiFi/Ethernet, DueX2/5 G31 X0 Y-40 Z.6 P25 ;probe offsets, trigger height and trigger value M557 X1:320 Y1:250 S30 ;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 M307 H0 B0 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 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp M950 H2 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M307 H2 R2.584 C226.4 D8.23 S.5 V24.3 ;tool heat M143 H2 S350 ; set temperature limit for heater 1 to 350C ;Fans M950 F0 C"fan0" ; create fan 0 on pin fan0 and set its frequency M106 P0 S.75 H-1 Q500 ; 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 S.75 H-1 Q500 ; set fan 1 value. Thermostatic control is turned on ;Tools M563 P1 D1 H2 F0 ; define tool 1 M572 D0 S0.004 ;ADDED PRESSURE ADVANCE SETTING G10 P1 R0 S0 ; Miscellaneous M501 ; load saved parameters from non-volatile memory M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss T1 ; select first tool
; deployprobe.g M280 P0 S10 ;code for deploying the Z probe
; retractprobe.g M280 P0 S90 ;code for retracting the Z probe
; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.3.3 on Wed Sep 29 2021 16:53:30 GMT-0500 (Central Daylight Time) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X-302 Y-302 F6000 ; move quickly to X and Y axis endstops and stop there (first pass) G1 H2 X5 Y5 F6000 ; go back a few mm G1 H1 X-302 Y-302 F180 ; move slowly to X and Y axis endstops once more (second pass) G1 X150 Y150 F5000 G30 ; Uncomment the following lines to lift Z after probing ;G91 ; relative positioning ;G1 Z5 F100 ; lift Z relative to current position ;G90 ; absolute positioning
; homez.g ; called to home the Z axis M98 P"homeall.g" ; Call the home X & Y macro to home those axes first M98 P"deployprobe.g" ; Called to extend the BL-Touch probe pin to allow probing to take place G30 ; Home the Z axis by probing the bed M98 P"retractprobe.g"
-
This post is deleted! -
Haha, I am the pedantic one. Sure (-: Have a nice day, Herve.
-
@oldironjunkie Great, glad you got it going! I had been over your config and wiring a number of times, which made me think it was a faulty connection somewhere. A few notes:
If you're homing to the back right, your prints will come out rotated 180 degrees. Generally the origin is at the front left of the machine, so a positive X move moves the nozzle to the right, and a positive Y move moves the nozzle away from the front (or bed towards the front if you have a bed that moves in Y). Yours is moving the other way, which is not really a problem, just so long as you are aware of this. You can change this if you want; let me know and I'll show you where to make changes.
You spotted that it should be G30, not G30 S-1, in your homing files.
Setting the probe as M558 P9 means that the firmware knows it needs to deploy and retract the probe. You don't need to tell it to do it, either with 'deployprobe.g' or 'retractprobe.g' (these are the macros names used, any others will be ignored) or M401/M402. When you sent G30 from the console, it deployed, probed, and retracted without the need to run the other macros and commands, right?
You found how to set the probe offset, using G31. For more details, see https://docs.duet3d.com/User_manual/Connecting_hardware/Z_probe_testing
You found how to move the nozzle to the centre of the bed. However, because you have put this directly after the homing moves, moves are still in relative mode. Add G90 before your G1 centring move to switch back to absolute positioning, ie
... G1 H1 X-302 Y-302 F180 ; move slowly to X and Y axis endstops once more (second pass) G90 ; absolute positioning G1 X150 Y150 F5000 ; move to centre G30
There is an odd bit in your config; you have defined four extruder drivers, but they are all the same drive. And then set the parameters for them in the subsequent gcodes:
M584 X0 Y1 Z2 E4:4:4:4 ; set drive mapping M350 X16 Y16 Z16 E8:8:8:8 I1 ; configure microstepping with interpolation M92 X79.68 Y79.44 Z400.00 E820.0:454.00:454.00:454.00 ; set steps per mm M566 X900.00 Y900.00 Z900.00 E1600.00:1600.00:1600.00:1600.00 ; set maximum instantaneous speed changes (mm/min) M203 X4000.00 Y4000.00 Z1500.00 E4000.00:4000.00:4000.00:4000.00 ;set maximum speeds (mm/min) M201 X1000.00 Y1000.00 Z350.00 E600.00:600.00:600.00:600.00 ; set accelerations (mm/s^2) M906 X1000 Y1000 Z1000 E800:800:800:800 I50 ; set motor currents (mA) and motor idle factor in per cent
You are also using the second of these in your single tool:
M563 P1 D1 H2 F0 ; define tool 1
D1 is the second extruder drive; D0 is the first. Unless you're going to add the extra extruders/tools (you do have a Duex after all) I'd clean this up by removing the drives you aren't using, and the extra parameters you have put in the other gcodes. eg:
M584 X0 Y1 Z2 E4 ; set drive mapping M350 X16 Y16 Z16 E8 I1 ; configure microstepping with interpolation M92 X79.68 Y79.44 Z400.00 E454.00 ; set steps per mm M566 X900.00 Y900.00 Z900.00 E1600.00 ; set maximum instantaneous speed changes (mm/min) M203 X4000.00 Y4000.00 Z1500.00 E4000.00 ;set maximum speeds (mm/min) M201 X1000.00 Y1000.00 Z350.00 E600.00 ; set accelerations (mm/s^2) M906 X1000 Y1000 Z1000 E800 I50 ; set motor currents (mA) and motor idle factor in per cent ;Tools M563 P1 D0 H2 F0 ; define tool 1
You currently have pressure advance set on D0, while the tool is using D1, so your pressure advance value isn't doing anything.
Hope that helps!
Ian
-
@Herve_Smith Thanks! I'm going to steal that and post it each time, as 'the ultimate BLTouch troubleshooting steps'!
Ian
-
@droftarts I will add the G90 and change the pressure advance setting to the correct tool. The reason I am not using the 0 drive is that ithe driver was fried by my bad extruder motor. I had to switch drives once I got the motor replaced. Thanks for all the help