Duet 2 Wifi + BLtouch issues on Ender 5 pro
-
@alxndr When you home X, then move to X0, is the nozzle on the edge of the bed? If it's over the bed, there will be some of the bed you cannot use. Same at the other end of the X axis, and for Y minimum and maximum. You can always adjust M208 to increase the axis limits, so long as the nozzle can physically reach the position.
If you home X, and X=0 is off the bed, you need to know how far it is to the edge of the bed. For example, if you jog the X axis 10mm for the nozzle to be over the bed, then you would set
M208 X-10 S1
. This tells the firmware where the bed is in relation to the X endstop. Then move the X to the far side of the bed (with X0 on the edge of the bed) to see the full X axis limit; this might be X240, but the nozzle is off the bed on the other side, but is on the edge at X235. So setM208 X235 S0
. Repeat for the Y axis. This should give you the maximum printable area.Use of M208 is explained more fully here: https://duet3d.dozuki.com/Wiki/Centering_the_bed_or_setting_the_bed_origin
Edit: when you are testing where the limits are, you may need to go beyond the current M208 limits. Send
M564 S0 H0
, which will allow moves outside the print volume and before axes are homed. Use carefully!Ian
-
@droftarts this is something ill have to check once i get home from work. I'm in EST time zone (Canada). So i'll only get to check this later today. thanks for the explanation. I dont fully understand but i do kind of understand lol i just dont see how the printer knows that the bed is 235 but only 220 is used. But ill test as you recommended and try to understand. I think it would be easier if i get to see it for myself.
-
@alxndr
o.k I'll have my go again at explaining it.( my example thought experiment)
The maximum travel is 400mm , but the print area is only 300mm eg the size of the glass is 300mm , but the maximum distance between the left and right end stops is 400mm.
if it homed left or right it would be 100mm from edge of the glass , So you would need to add a offset which would add or subtract 100mm so 0mm and 300mm was over glass.
BUT I THINK in your case, when your print homes it is 10mm from the right edge of the printer and say "I'm homed and set to 220mm" , now if you do a G1 X0 this would move it 220mm to the left and now the nozzle would be 15mm from the left edge.
SO IT DEPEND ON how it is homed, is it about 10-15mm from the edge of the bed or over it ? -
@alxndr said in Duet 2 Wifi + BLtouch issues on Ender 5 pro:
i just dont see how the printer knows that the bed is 235 but only 220 is used.
Well it doesn't, but if the endstop is off the edge of the bed, and you want 0,0 to be the corner of the printable area, the difference in negative movement from 0,0 to the endstop is captured by setting the M208 minima to a negative value, as droftarts showed above.
-
Visual aid. This shows the endstops coinciding with the printable area, but if the nozzle travels off the bed to hit tne endstop, that extra movement is captured by the negative M208 minima.
-
@peter247 so homing works fine now. Bltouch deploys and retracts with homeall and homez.
Do I need to remove the endstop line? M574 I think? Or am I ready to print? I have no macros set either so I'm not sure if I should have those.
-
@alxndr
Do I have to remove the end stop line for Z stop ?No you don't have to remove it , but it is not doing anything !!!
So the answer is :- do need to remove it No , Should I remove it Yes. -
@peter247 also i checked and basically the edge of the bed is where the endstop is at and that reads as 0 for both x and y. so thats good right?
second, is there a guide out there for easily configuring the z steps and making sure my nozzle is at the right height in relation to the bed? ive tried to search but cant seem to find anything specifically for this
-
@alxndr
Nope , 0mm left <> right 220mm , 0mm front , 220 backSo does it home to the right / back and did you use my homing files ?.
it should home right and say 220mm
Sound to me that the motor direction and the homing macro are running in the wrong direction too.
-
@peter247 it does home to the right back. yes i used your homing files. not sure what value it shows though as i dont remember. I would have to check tonight after work.
if i do need to fix it, is it an easy fix? just so that i have them ahead of time.
-
@alxndr
I'm lost want happening if it not showing 220 , 220 homed !!! .
I take it you are using more or less the config.g file you posted at the start.
**** o.k , just looked at your config.g and found the problem ****; 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 S1 P"zstop" ; configure active-high endstop for low end on Z via pin zstop
M574 X1 S1 , what does this mean ?
Xnnn Position of X endstop: 1 = low end, 2 = high end.
Snnn Endstop type: 0 = active low endstop input, 1 = active high endstop inputS1 is correct for it works.
Now for the bit you have wrong X1 and Y1 , which means it homes to the left / front , X1,Y1 this need to be changed to X2,Y2 home to the right / back.**** IMPORTANT BIT ****
it is homing right and back because the motor directions are wrong like I said yesterday .; Drives M569 P0 S1 ; physical drive 0 goes forwards <---- M569 P1 S1 ; physical drive 1 goes forwards <---- M569 P2 S0 ; physical drive 2 goes backwards M569 P3 S1 ; physical drive 3 goes backwards
Make P0 and P1 motors S0 not S1 , like this.
; Drives M569 P0 S0 ; physical drive 0 goes forwards <---- M569 P1 S0 ; physical drive 1 goes forwards <---- M569 P2 S0 ; physical drive 2 goes backwards M569 P3 S1 ; physical drive 3 goes backwards
-
@peter247 so for the x1 and y1 under endstops, i want them to be x2 and y2 ?
so they should be high end, active high?
the thing is that they do home to back right physically. so im not sure?
as for the important bit....making motors s0 would do what exactly? make them properly go forwards? ill be honest...im a little confused lol
so right now, when i home x and y, they go back end and right side. so back right. isnt that the way they should go? im sorry....im new to all this so im just trying to understand lol
-
so for the x1 and y1 under endstops, i want them to be x2 and y2 ?
so they should be high end, active high?Yes and yes ... Low end mean home left , High mean home right , it tell you machine where the end stops our.
making motors s0 would do what exactly? turn in the other direction.
Before it was told that the end stop was on the left , but went to the right and hit the end stop on the right .
in a way it would work as it was now , but you would get a mirror of it.
so right now, when i home x and y, they go back end and right side.
Yes , but it thinks it is going to the left and hitting a end stop on the left.
TWO WRONG ARE MAKING A RIGHT . -
@peter247 so i made the changes you recommended and both x and y crashed because they went towards the left side which has no endstops. had to panic
i played around with everything and ended up reverting back. even when i use the buttons for x and y to go left by 10 or wtv...when i click the left direction buttons, it goes right. i get that something isnt right. but no idea what to do. i tried your suggestion but it doesnt seem to work at all. just crashes so i have to shut down. when i go +10 it moves left and when i go -10 it moves right.....i just dont get it...i feel so discouraged. any ideas?
-
You're close. Here are a few rules that you must follow and then the one thing you might need to change to get it all to work.
X0 Y0 MUST be in the front left corner to match the slicer and CAD coordinate system. X- to the left, X+ to the right. Y- to the front, Y+ to the back. Doing otherwise is asking for mirrored prints.
The end stop position is physically located on your printer, so you have to have it configured correctly to match. You have the endstops at the high end of travel, because 0,0 is the front left, and the endstops are at the rear right. 235,235 (or whatever the max travel ends up being) so M574 MUST be X2 and Y2.
Now that we know where the endstops are located and which direction of travel things should be going, we can change the homing files to move towards the endstops. Since your endstops are at the high end, the homing moves MUST be in the positive direction.
Now that we have all those MUSTS out of the way, there is one thing left to change to make it all work. The direction of the motor rotation. Defined M569 S1 or S0.
To test which way they should go it's simple.
First, with the printer off, physically move the print head to the middle.
Turn on the printer and edit config.g and set it like so:
M569 P0 S0
M569 P0 S0Now when you reboot, go to the gcode console and send these commands
G92 X100 Y100 ; that tells it that the X and Y are basically in the center and will allow you to move them
Now send G1 X10
The print head should move 10mm to the right. If it doesn't, we need to change M569 P0 S0 to S1.
Now send G1 Y10
The print head should move 10mm to the back. If it doesn't we need to change M569 P1 S0 to S1.
And now after making any changes you should be able to home and it should move towards the endstops, stop, and set the position to whatever the max travel is.
The last thing to do will be to set your M208 maxima values to what they ACTUALLY are and not what creality has advertised.
To do that, turn off the printer. move the print head to the front left corner where you want 0,0 to be. The nozzle just at the corner of the printable area.
Now turn on the printer and send G92 X0 Y0
Now send G1 X300 H3
That will move the print head to the endstop and when it stops it, the current X coordinate should be what you use to set your M208 X maxima.
Now use G1 Y300 H3 to do the same for the Y axis.
-
@Phaedrux said in Duet 2 Wifi + BLtouch issues on Ender 5 pro:
You might find this series of guides helpful
https://duet3d.dozuki.com/Guide/Ender+3+Pro+and+Duet+Maestro+Guide+Part+3:+Commissioning/39By the way, pretty much everything I just said is found in this guide I linked to 2 days ago.
-
@alxndr
repost your config.g file / homeall.gYou haven't changed the motor direction like this ?
M569 P0 S0 ; physical drive 0 goes forwards <---- M569 P1 S0 ; physical drive 1 goes forwards <----
or you haven't set the homing file correct ?
My guess is you have chosen the Ender 3 configurator , But the ender 3 are like the cr10 , it home at 0:0 left , down .
So to home you say go minus upto 220mm left , but the ender 5 home right so homes with a plus value.
( A ) you are not using my Homing file
( B ) you haven't changed the motor direction .
( C ) Both -
@Phaedrux thanks for all this! ill try tonight after work when i get home. i remember maybe trying something like this but when i tried to move left it wouldnt go all the way. maybe i missed something. it would stop half way...
also, when you say to manually move the print head to the center, does it have to be perfectly in the center? im not sure i can do that just by eye lol
-
@alxndr said in Duet 2 Wifi + BLtouch issues on Ender 5 pro:
does it have to be perfectly in the center?
No, it's just to keep it away from the ends of the axis.
-
@Phaedrux so something is wrong. I did everything you said to do. and im still getting everything in the wrong direction. The one thing that is weird is that after changing x1 and y1 to x2 and y2, the movement buttons still dont work in the right direction BUT only move to the left just a little bit and then wont continue. Im not sure if this makes sense.
ill post my config.g with how it was before i made your changes as well as my homing files. if you could help, that would be amazing.
; General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"Ender 5 Pro" ; set printer name; Network
M552 S1 ; enable network
M586 P0 S1 ; enable HTTP
M586 P1 S1 ; enable FTP
M586 P2 S1 ; enable Telnet; Drives
M569 P0 S1 ; physical drive 0 goes forwards
M569 P1 S1 ; physical drive 1 goes forwards
M569 P2 S0 ; physical drive 2 goes backwards
M569 P3 S1 ; 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 Z800.00 E415.00 ; set steps per mm
M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
M203 X6000.00 Y6000.00 Z300.00 E1200.00 ; set maximum speeds (mm/min)
M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
M906 X800 Y800 Z800 E900 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 X220 Y220 Z300 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 S1 P"zstop" ; set endstops controlled by probe; Z-Probe
M558 P9 C"^zprobe.in" H5 F100 T2000 ;
M950 S0 C"exp.heater3" ; define GPIO/Servo pin index
M557 X35:185 Y35:185 S50 ; define mesh grid
G31 X-45 Y-4 Z0 ;
M307 H3 A-1 C-1 D-1 ;; 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 ; disable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S100 ; set temperature limit for heater 0 to 100C
M307 H0 A161.3, C526.0, D1.2 S1 ; PID Heater - Bed
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
M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S230 ; set temperature limit for heater 1 to 230C
M307 H1 A499.2, C151.6, D3.8 S1 ; PID Heater - Nozzle; 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; 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; Custom settings
G29 S1 ; Load mesh bed; Miscellaneous
M501 ; load saved parameters from non-volatile memory; homeall.g
; called to home all axes
;
; generated by RepRapFirmware Configuration Tool v3.1.4 on Fri Aug 07 2020 18:12:00 GMT-0400 (Eastern Daylight Time);G28 XY
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 X-225 F3000 ; move quickly to X axis endstop and stop there (first pass)
G1 H1 Y-225 F3000 ; move quickly to Y axis endstop and stop there (first pass)
;G1 H2 Z-5 F6000 ; lower Z again
G90 ; absolute positioningG1 X65 Y114 F4000 ; Move probe to middle of bed
G30
; homex.g
; called to home the X axis
;
; generated by RepRapFirmware Configuration Tool v3.1.4 on Fri Aug 07 2020 18:12:00 GMT-0400 (Eastern Daylight Time)G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 X-225 F3000 ; move quickly to X axis endstop and stop there (first pass)
;G1 H2 X-5 F6000 ; go back a few mm
;G1 H1 X 225 F240 ; move slowly to X axis endstop once more (second pass)
G1 H2 Z-5 F6000 ; lower Z again
G90 ; absolute positioning; homey.g
; called to home the Y axis
;
; generated by RepRapFirmware Configuration Tool v3.1.4 on Fri Aug 07 2020 18:12:00 GMT-0400 (Eastern Daylight Time)G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 Y-225 F3000 ; move quickly to Y axis endstop and stop there (first pass)
;G1 H2 Y-5 F6000 ; go back a few mm
;G1 H1 Y225 F240 ; move slowly to Y axis endstop once more (second pass)
G1 H2 Z-5 F6000 ; lower Z again
G90 ; absolute positioning; homez.g
; called to home the Z axis
;
; generated by RepRapFirmware Configuration Tool v3.1.4 on Fri Aug 07 2020 18:12:00 GMT-0400 (Eastern Daylight Time);G28 XY
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 X-225 F3000 ; move quickly to X axis endstop and stop there (first pass)
G1 H1 Y-225 F3000 ; move quickly to Y axis endstop and stop there (first pass)
;G1 H2 Z-5 F6000 ; lower Z again
G90 ; absolute positioningG1 X65 Y114 F4000 ; Move probe to middle of bed
G30