Added Duex5 - Really need some help
-
@GeorgeM said in Added Duex5 - Really need some help:
I am using the U as a second Z motor to get independent leveling using the BLTouch.
You do not need a U axis to do that.
https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors
Can you post your homing files and bed.g so I can see what you're actually doing? I think you should remove the definitions for all the U axis as I think it may be causing problems.
-
I cant find the original thread that I followed when I originally set up the independent Z probing that showed using U. I have a print going right now but when it is finished I will comment them out and see what difference it makes.
bed.g
; bed.g
; called to perform automatic bed compensation via G32
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Wed Jun 17 2020 09:39:08 GMT-0600 (Mountain Daylight Time)
G28 Z ; home
G30 P0 X20 Y150 Z-99999 ; probe near a leadscrew, half way along Y axis
G30 P1 X285 Y150 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
G90 ; absolute positioning
G1 X150 Y150 F7000 ; go to center
G30 ; home zhomeall.g
; homeall.g
; called to home all axes
;
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 X-235 F4000 ; move quickly to X axis endstop and stop there (first pass)
G1 H2 X5 F6000 ; go back a few mm
G1 H1 X-235 F360 ; move slowly to X axis endstop once more (second pass)
;G1 H2 Z-5 F6000 ; lower Z again
;G90 ; absolute positioning
;G91 ; relative positioning
;G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 Y-225 F4000 ; move quickly to Y axis endstop and stop there (first pass)
G1 H2 Y5 F6000 ; go back a few mm
G1 H1 Y-225 F360 ; move slowly to Y axis endstop once more (second pass)
G1 H2 Z-5 F6000 ; lower Z again
G90 ; absolute positioning
G32homex.g
; homex.g
; called to home the X axis
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Wed Jun 17 2020 09:39:08 GMT-0600 (Mountain Daylight Time)
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 X-235 F2600 ; move quickly to X axis endstop and stop there (first pass)
G1 H2 X5 F6000 ; go back a few mm
G1 H1 X-235 F360 ; move slowly to X axis endstop once more (second pass)
G1 H2 Z-5 F6000 ; lower Z again
G90 ; absolute positioninghomey.g
; homey.g
; called to home the Y axis
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Wed Jun 17 2020 09:39:08 GMT-0600 (Mountain Daylight Time)
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 Y-225 F2800 ; move quickly to Y axis endstop and stop there (first pass)
G1 H2 Y5 F6000 ; go back a few mm
G1 H1 Y-225 F360 ; move slowly to Y axis endstop once more (second pass)
G1 H2 Z-5 F6000 ; lower Z again
G90 ; absolute positioninghomez.g
; homez.g
; called to home the Z axis
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Wed Jun 17 2020 09:39:08 GMT-0600 (Mountain Daylight Time)
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G90 ; absolute positioning
G1 X150 Y150 F6000 ; go to first probe point
G30 ; home Z by probing the bed -
The creation of the U axis is only needed when doing leveling using endstops. The Z axis is split into Z and U and each side is leveled by homing to the endstops. But you are using a probe, so no U endstop, and so no need for a U axis. None of your files even call to move it.
When using the probe to level as described in that link you only need provide the locations of the lead screws with M671 in config.g, assign your motors to the Z axis, and then in bed.g probe close to the lead screws.
Your separate issue of the driver overheating warning on the Duex is of greater concern. I would suggest that you connect a motor to each driver on the duex in turn and configure it and test movement to establish whether your duex drivers are all functional.
-
@Phaedrux said in Added Duex5 - Really need some help:
The creation of the U axis is only needed when doing leveling using endstops. The Z axis is split into Z and U and each side is leveled by homing to the endstops. But you are using a probe, so no U endstop, and so no need for a U axis. None of your files even call to move it.
When using the probe to level as described in that link you only need provide the locations of the lead screws with M671 in config.g, assign your motors to the Z axis, and then in bed.g probe close to the lead screws.
Your separate issue of the driver overheating warning on the Duex is of greater concern. I would suggest that you connect a motor to each driver on the duex in turn and configure it and test movement to establish whether your duex drivers are all functional.
Isn't the BLTouch acting like an endstop? I just changed the config.g with all mention of the U parameters deleted. When I rebooted I still had the driver 5 error. Also I got no movement from any axis when trying to home. That is because the homing calls for the Z to be raised first. So, since I have the Z defined to include two drivers, the Z does not work without the U parameters included. I purposely skewed the table to the side a bit and when I restarted with the U parameters included, it homed and leveled the bed perfectly as it has been doing all along. From what I understand, the adjustment done to either the Z or U axis is done automatically after it is probed on both the right and left side. It is not a movement called out in the config.g file, but in fact I can visibly watch one or the other motors adjust after the probe.
I am first to admit that I am a novice at this, but I can confirm what has been working and what hasn't been.
I am now going to disconnect the duex and see if that eliminates the error.George
-
I disconnected the duex again. The error went away. I reconnected it. The error is back.
Do we need to get David aware of this in order to OK a replacement? Not sure of what the procedure is except I remember another thread where a customer said he needed David ok to get a part replaced.George
-
@GeorgeM said in Added Duex5 - Really need some help:
Isn't the BLTouch acting like an endstop?
No, it's acting like a probe.
@GeorgeM said in Added Duex5 - Really need some help:
So, since I have the Z defined to include two drivers, the Z does not work without the U parameters included.
That's not how it works.
M584 X0 Y1 Z2:4 E3
assigns the drivers to their axis. Now when you set values for the axis they apply to all drivers assigned to that axis. So any command for the Z axis applies to both driver 2 and 4.https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors
Please read that link and you'll see what I'm talking about. The only difference between what's described in that link and what you have configured is that you've also added commands for the U axis, which doesn't exist because it was never created with M584.
@GeorgeM said in Added Duex5 - Really need some help:
I am first to admit that I am a novice at this, but I can confirm what has been working and what hasn't been.
I'm not a novice, but I'm not omniscient either. Together we can work out what is happening and understand why.
@GeorgeM said in Added Duex5 - Really need some help:
I am now going to disconnect the duex and see if that eliminates the error.
For now that is a good idea.
@GeorgeM said in Added Duex5 - Really need some help:
From what I understand, the adjustment done to either the Z or U axis is done automatically after it is probed on both the right and left side
Yes, that's what's happening in your bed.g. But there is no U axis.
-
@GeorgeM said in Added Duex5 - Really need some help:
I just changed the config.g with all mention of the U parameters deleted.
Can you share that version of your config?
-
Ok, I went and changed it line by line. I am able to get rid of all the U parameters except in M92. If I delete them in M92 it will not work.
; Configuration file for Duet WiFi (firmware version 3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Mon Jun 15 2020 11:14:50 GMT-0600 (Mountain Daylight Time); General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"My Printer" ; set printer name
M669 K1 ; select CoreXY mode; 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 backwords - X
M569 P1 S0 ; physical drive 1 goes backwards - Y
M569 P2 S0 ; physical drive 2 goes backwards - Z right side
M569 P3 S1 ; physical drive 3 goes forwards - Exturder
M569 P4 S0 ; physical drive 4 goes backward - Z left side
M584 X0 Y1 Z2:4 E3 ;two Z Motors connected to driver outputs Z and E1
M671 X-20:310 Y0:0 S2 ;Leadscrew at left (connected to Z) and right connected to E1) of X axis
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
M92 X101.84 Y104.96 Z402.42 U402.42 E2892.00 ; set steps per mm
M566 X500.00 Y500.00 Z100.00 E60.00 ; set maximum instantaneous speed changes (mm/min)
M203 X10000.00 Y10000.00 Z6000.00 E8000.00 ; set maximum speeds (mm/min)
M201 X800.00 Y800.00 Z30.00 E120.00 ; set accelerations (mm/s^2)
M906 X1200.00 Y1200.00 Z800.00 E500.00 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 X-25 Y-15 Z0 S1 ; set axis minima
M208 X330 Y340 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 S2 ; configure Z-probe endstop for low end on Z; Z-Probe
;M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch
M950 S0 C"duex.pwm1" ; create servo pin 0 for BLTouch
M558 P9 C"zprobe.in" H3 F120 T4800 ; set Z probe type to bltouch and the dive height + speeds
G31 P25 X30 Y-10 Z.48 ; set Z probe trigger value, offset and trigger height
M557 X15:285 Y15:275 P4:4 ; define mesh grid
M376 H10; Heaters
M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 R4700 ; 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 ; diable 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 B4725 C7.06e-8 ; 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 S300 ; Set temperature limit for heater 1 to 300C
M308 S5 P"drivers" Y"drivers" A"Driver" ; set virtual heater for stepper drivers; 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 T45 ; set fan 1 value. Thermostatic control is turned on
M950 F3 C"duex.fan3" Q1000 ; create fan 3 on pin fan3 and set its frequency
M106 P3 S0 H-1 ; set fan 3 value. Thermostatic control is turned off
M308 S4 P"mcu-temp" Y"mcu-temp" A"MCU" ; set virtual heater for MCU
M950 F4 C"!duex.fan4" Q25000 ; Define Fan_4 for use - Duet board cooling - PWM fan
M106 P4 S4 T45:65 H100:101:102 ; set fan 4 value, turn if the CPU temp (or driver temps) reaches 45C, increase to full speed at 65C; Tools
M563 P0 S"E3D_V6" 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 P2 S"Laser" F3 ` ; define tool 2
G10 P2 X0 Y0 Z0 ; set tool 2 axis offsets
;G10 P2 R0 S0 ; set initial tool 2 active and standby temperatures to 0C; Custom settings are not defined
M501 ; Load saved parameters from non-volatile memory -
by the way, Thank you for the time you are spending on this for me.
-
@GeorgeM said in Added Duex5 - Really need some help:
If I delete them in M92 it will not work.
What exactly does it do?
Where are your motors plugged in?
With the U stuff completely removed and the Duex disconnected what do you get when you send M98 P"config.g"?
-
When I try to home it stays busy and the arrow circles spins and then I get a homing error.
Same with either x or y. Same if I comment out the raising of z before I home.Motors are plugged into:
X in 0
Y in 1
Z in 2
E in 3 or E0
U in 4 or E1Well what do you know. With the duex removed and U removed from M92, it homed correctly.
With the duex reconnected and U removed from M92 - no movement and driver 5 error is back. -
I need to leave for about 90 minutes
-
@GeorgeM said in Added Duex5 - Really need some help:
Well what do you know. With the duex removed and U removed from M92, it homed correctly.
With the duex reconnected and U removed from M92 - no movement and driver 5 error is back.The first point I expected. The second point is still perplexing.
What happens with duex connected and M92 U removed?
-
@Phaedrux said in Added Duex5 - Really need some help:
What happens with duex connected and M92 U removed?
With the duex reconnected and U removed from M92 - no movement and driver 5 error is back.
-
As a sanity check, I configured X to use driver 5. When doing so I get no movement from X motor.
-
How have you the Duex wired?
https://duet3d.dozuki.com/Wiki/Duex2_and_Duex5_Features#Section_Wiring
-
@Phaedrux said in Added Duex5 - Really need some help:
How have you the Duex wired?
https://duet3d.dozuki.com/Wiki/Duex2_and_Duex5_Features#Section_Wiring
Exactly like that.
-
I think you have a failed driver 5 on your Duex. When was it purchased and from where?
-
@Phaedrux said in Added Duex5 - Really need some help:
I think you have a failed driver 5 on your Duex. When was it purchased and from where?
June 26 from Filastruder. I contacted Tim there and gave him the link to this thread.
-
Well at least our endeavour wasn't totally fruitless.