Many issues after upgrading to 3.0 RC-12
-
I have just finished running the upgrade to get from 2.05 up to 3.0 RC-12. Currently, I have quite a few issues that I am struggling to get through. I am using the reprap firmware configuration tool, although I have a feeling that it is not yet working correctly for this firmware?
- The first was the X and Y axis refusing to home. I was able to fix the X axis after changing to the following: M574 X1 S1 P"!xstop" ( X now works)
- Y axis still will not home. After clicking home, the bed will drop a bit, and the Y axis will move towards the endstop about 5mm and then say "Error G0/G1: Insufficient axis homed"
- Another issue is one I have always had... not sure how to fix. My X endstop is actually OFF the bed, meaning the home would be actually +15mm from the endstop. Not sure how to correctly set this in firmware?
Here is my endstop config (note that currently only my X will home correctly):
; Endstops M574 X1 S1 P"!xstop" ; configure active-low endstop for low end on X via pin xstop M574 Y1 S1 P"!ystop" ; configure active-low endstop for low end on Y via pin ystop M574 Z1 S2 ; configure Z-probe endstop for low end on Z
Next issue is the BLTouch. If I hold in the Y endstop to trick it into thinking it has homed correctly, the Z will attempt to home. The BLTouch will deploy correctly and the bed will start to raise, however the BLTouch will never trigger as detected. So the hotend would crash into the bed.
Any help appreciated. Sitting here confused for a few hours already, especially with the endstops.
(will post configs below, char limit)
-
Here is my old 2.x config:
; Configuration file for Duet WiFi (firmware version 2.03) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v2.1.4 on Tue Dec 17 2019 00:47:57 GMT-0500 (Eastern Standard Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Hypercube" ; set printer name M564 H0 ;allow movement before homing M667 S1 ; select CoreXY mode ; Network M550 Phypercube ; Set machine name M552 S1; Enable network M552 S1; P0 M586 P1 S1 ; enable FTP M586 P2 S1 ; enable Telnet ;M551 P"............" ; 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 Z400.00 E86:86 ; set steps per mm M566 X1600 Y1600 Z12 E120:120 ; Set maximum instantaneous speed changes (mm/min) M203 X8000 Y8000 Z180 E1200:1200 ; Set maximum speeds (mm/min) M201 X4000 Y4000 Z250 E2000:2000 ; Set accelerations (mm/s^2) M906 X800 Y800 Z800 E900:900 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 X300 Y300 Z230 S0 ; set axis maxima ; Endstops M574 X0 Y0 S0 ; set active low endstops M574 Z1 S2 ; set endstops controlled by probe ; Z-Probe M307 H7 A-1 C-1 D-1 ; disable heater on PWM channel for BLTouch M558 P9 H5 F500 T4000 X0 Y0 Z1 ; set Z probe type to bltouch and the dive height + speeds M558 P9 H5 F100 T2000 G31 P25 X20 Y5 Z2 ; set Z probe trigger value, offset and trigger height M557 X20:275 Y5:275 S92 ; define mesh grid ; Heaters M143 S280 ; Set maximum heater temperature to 260C M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0 M305 P1 T100000 B4725 C0.0000000706 R4700 ; Set thermistor + ADC parameters for heater 1 M305 P2 T100000 B4725 C0.0000000706 R4700 ; Set thermistor + ADC parameters for heater 2 ; Fans M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off M106 P2 S1 I0 F500 H1:2 T100 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on ; Tools M563 P0 D0 H1 ; 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 D1 H2 ; Define tool 1 G10 P1 X-18.5 Y.7 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
-
@TheBasedDoge You could try removing the "!" so it looks like this.
M574 X1 S1 P"xstop" ; _RRF3 M574 Y1 S1 P"ystop" ; _RRF3
HTH
Paul
-
Here is my new 3 config so far
; Configuration file for Duet WiFi (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v2.1.8 on Sun May 10 2020 13:55:08 GMT-0400 (Eastern Daylight Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Hypercube" ; set printer name M667 S1 ; 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 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 Z400.00 E86.00:86.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 X800 Y800 Z800 E800:800 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 X300 Y0 Z0 S0 ; set axis maxima ; Endstops M574 X1 S1 P"!xstop" ; configure active-low endstop for low end on X via pin xstop M574 Y1 S1 P"!ystop" ; configure active-low 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.heater7" ; create servo pin 0 for BLTouch M558 P9 C"zprobe.in+zprobe.mod" H2 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X20 Y5 Z2.5 ; set Z probe trigger value, offset and trigger height M557 X15:300 Y15:300 S20 ; 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 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 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 M143 H1 S280 ; set temperature limit for heater 1 to 280C M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M308 S2 P"e1temp" Y"thermistor" T100000 B4725 C7.06e-8 ; 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 heater and set PWM limit ; Fans M950 F0 C"Part Fan" 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"Hotend" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 S1 H1:2 T100 ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P0 S"Right Nozzle" 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 S"Left Nozzle" D1 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 M575 P1 B57600 S1 ;paneldue settings ;M564 H0 ;allow movement before homing
-
@PaulHew If I do this the endstop is inverted, it thinks its triggered until I click it. The actual endstops seem to be working fine. It's just that when I home it it won't actually travel more than 5mm into the homing direction for some reason
-
@TheBasedDoge
Z-ProbeMy CoreXY config for reference
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.605 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
I have edited yours, try this.
; Z-Probe M558 P9 C"^zprobe.in" H5 F120 T6000 A5 S0.02 ; set Z probe type to bltouch and the dive height M950 S0 C"exp.heater7" ; create servo pin 0 for BLTouchG31 P500 X20 Y5 Z2.5 ; set Z probe trigger value, offset and trigger height M557 X15:300 Y15:300 S20 ; define mesh grid
-
@TheBasedDoge Are your endstops on the Duex board?
-
Everything is plugged into the Duet itself. I have no extra add on boards.
The Z-Probe modification you posted I think did the trick, it seemed to probe fine if I do homeall while manually holding down the y endstop. Still having the y issue.
-
@TheBasedDoge try homing the axis individually first. HomeX HomeY HomeZ. Homeall might need some work.
Have you posted homeall? -
; homeall.g
; called to home all axes
;
; generated by RepRapFirmware Configuration Tool v2.1.8 on Sun May 10 2020 13:55:08 GMT-0400 (Eastern Daylight Time)
G91 ; relative positioning
G1 H2 Z2 F6000 ; lift Z relative to current position
G1 H1 X-305 Y-5 F3600 ; move quickly to X or Y endstop and stop there (first pass)
G1 H1 X-305 ; home X axis
G1 H1 Y-5 ; home Y axis
G1 X5 Y5 F6000 ; go back a few mm
G1 H1 X-305 F300 ; move slowly to X axis endstop once more (second pass)
G1 H1 Y-5 ; then move slowly to Y axis endstop
G90 ; absolute positioning
G1 X-5 Y10 F6000 ; go to first bed probe point and home Z
G30 ; home Z by probing the bed; Uncomment the following lines to lift Z after probing
;G91 ; relative positioning
;G1 Z2 F100 ; lift Z relative to current position
;G90 ; absolute positioningMaybe this is the issue. I don't know why Y says -5 but x is -305?
-
Just incase your axis is over the other side of the bed, it needs to know how far it can go. It is only a homing move, not bed dimensions!
As I mentioned. try home 1 axis at a time, please. then we can tweak homeall
-
Ok for individual homes:
Homex - works fine
Homey - error, insufficient axis homed
homez - error, needs to home y. -
without you finger on x and Y?
-
My X and Y endstops
;Endstop Configuration M574 X1 S1 P"xstop" ; _RRF3 M574 Y1 S1 P"ystop" ; _RRF3
-
if the endstops are not engaged what does it say in
Machine specific - Endstops? in DWC -
Yeah, that is without my finger on any endstops.
But just to see what would happen, i did this.
Changed:
G1 H1 Y-5 ; home Y axis
G1 X5 Y5 F6000 ; go back a few mm
G1 H1 X-305 F300 ; move slowly to X axis endstop once more (second pass)
G1 H1 Y-5 ; then move slowly to Y axis endstopTo:
G1 H1 Y-305 ; home Y axis
G1 X5 Y5 F6000 ; go back a few mm
G1 H1 X-305 F300 ; move slowly to X axis endstop once more (second pass)
G1 H1 Y-305 ; then move slowly to Y axis endstopnow it's working! I changed it in homey also.
oh its working in machine specific - endstop also... it changes correctly based on the trigger
-
Well, another problem of course. The fans are not working:
New fan code:
; Fans
M950 F0 C"Part" 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"Hotend" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 S1 H1:2 T100 ; set fan 1 value. Thermostatic control is turned onold 2.x fan code which worked
; Fans
M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
M106 P2 S1 I0 F500 H1:2 T100 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on -
my fans for comparison
; Fans M950 F0 C"fan0" ;Part Cooling Fan M106 P0 H-1 ; M950 F1 C"fan1" Q500 ;Hotend Fan M106 P1 S1 H1 T40 ; M950 F2 C"fan2" ;_RRF3_ define fan2 M106 P2 H-1
-
That worked for part fan, hotend fan is still not working for some reason. I also have dual extrusion. The only change i made was adding H1:2
; Fans
M950 F0 C"fan0" ;Part Cooling Fan
M106 P0 H-1
;
M950 F1 C"fan1" Q500 ;Hotend Fan
M106 P1 S1 H1:2 T40EDIT: ah nevermind, im dumb. I had the fan plugged into the fan2 the entire time
-
Ok, I am making progress on getting everything working, still a few issues.
Does anyone know how I can tell the duet to home X, hit the endstop, move over 15mm and tell that to be the X home position? reason being, my endstop for X is actually too far off the bed.