RepRapFirmware 3.0beta12 now available
-
The following items connected to expansion boards work in beta 12:
- Stepper motors, temperature sensors (inc. thermocouple and PT100 but not DHT), heaters (but not heater protections, and not heaters controlled by sensors on a different board), fans (including tacho readings, but excluding fans thermostatically controlled by sensors on a different board).
In the current committed source code, endstop switches are also working; but I need to add a safety feature before I release that.
The following are either not implemented on expansion boards or implementation is in progress, and therefore not working yet:
- GPIO output (M42), servo output (M280), trigger inputs, stall detection endstops, Z probes, reporting of stepper driver errors and warnings, additional diagnostics inc. crash reports.
Assuming no component shortages, I estimate that first deliveries to the 3HC to customers will be 5 to 6 weeks from next Monday. So we may just miss delivery before Christmas, in which case deliveries won't start until after New Year. We'll have a better idea next week and we may open a pre-order.
-
@dc42 thanks for this detailed answer, End of the year sounds Great ! I will that closed to a Christmas Beer
-
Endstops are now working on expansion boards, using the main+expansion firmware builds at https://www.dropbox.com/sh/3azy1njy3ayjsbp/AACquxr2m00eV568RZg5QG5wa?dl=0.
-
I still miss a fix for the tool changer scripts, that the Z axis is not moving while tool changing. Also happens on 2.xx
-
@smoki3 said in RepRapFirmware 3.0beta12 now available:
I still miss a fix for the tool changer scripts, that the Z axis is not moving while tool changing. Also happens on 2.xx
Please provide a link to the post where you described this. Or, if it is in a thread with lost of other stuff, start a new thread.
-
@dc42 said in RepRapFirmware 3.0beta12 now available:
@smoki3 said in RepRapFirmware 3.0beta12 now available:
I still miss a fix for the tool changer scripts, that the Z axis is not moving while tool changing. Also happens on 2.xx
Please provide a link to the post where you described this. Or, if it is in a thread with lost of other stuff, start a new thread.
Bug in 2.03, 2.04RC1 and latest 3.0 beta: https://forum.duet3d.com/topic/11343/new-reprapfirmware-3-0-early-beta/30
Its already on the bug list. but its a bit hidden. You may have fogotten
I copied the conversation in this thread:
https://forum.duet3d.com/topic/12920/tool-change-moving-in-axis-without-calling-them
-
Thanks, I'll put further responses i that thread.
-
@dc42 yes :)! I hope I don’t miss the pre-order
-
M308 S1 Y"rtdmax31865" P"spi.cs1" A"RTD1" M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M143 H1 S360 ; set temperature limit for heater 1 to 360C M307 H1 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit M308 S2 Y"rtdmax31865" P"spi.cs2" A"RTD2" M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2 M143 H2 S360 ; set temperature limit for heater 2 to 360C M307 H2 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit
Does the above look right for a pair of PT100 sensors plugged into the PT100 Daughter board on a Duet 2 Wifi?
The second tool appears correct, but the first is stuck at ~210°C (even though it's cool to the touch).
I'm also struggling to work out how to have a fan be thermostatically controlled by
mcutemp
, which I'm pretty sure I had in V2 (though, I may be mistaken). -
-
@keyz182 said in RepRapFirmware 3.0beta12 now available:
M308 S1 Y"rtdmax31865" P"spi.cs1" A"RTD1" M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M143 H1 S360 ; set temperature limit for heater 1 to 360C M307 H1 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit M308 S2 Y"rtdmax31865" P"spi.cs2" A"RTD2" M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2 M143 H2 S360 ; set temperature limit for heater 2 to 360C M307 H2 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit
Does the above look right for a pair of PT100 sensors plugged into the PT100 Daughter board on a Duet 2 Wifi?
The second tool appears correct, but the first is stuck at ~210°C (even though it's cool to the touch).
Yes, that looks correct. What reading do you get if you connect the 100R resistor to the second input instead of the PT100?
I'm also struggling to work out how to have a fan be thermostatically controlled by
mcutemp
, which I'm pretty sure I had in V2 (though, I may be mistaken).Create a sensor for mcutemp, then use that sensor number ni the H parameter of your M106 command. In RRF3 the M106 H parameter refers to a sensor number, not a heater number.
-
@dc42 said in RepRapFirmware 3.0beta12 now available:
@keyz182 said in RepRapFirmware 3.0beta12 now available:
M308 S1 Y"rtdmax31865" P"spi.cs1" A"RTD1" M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M143 H1 S360 ; set temperature limit for heater 1 to 360C M307 H1 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit M308 S2 Y"rtdmax31865" P"spi.cs2" A"RTD2" M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2 M143 H2 S360 ; set temperature limit for heater 2 to 360C M307 H2 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit
Does the above look right for a pair of PT100 sensors plugged into the PT100 Daughter board on a Duet 2 Wifi?
The second tool appears correct, but the first is stuck at ~210°C (even though it's cool to the touch).
Yes, that looks correct. What reading do you get if you connect the 100R resistor to the second input instead of the PT100?
Just been fiddling around - it appears it may be a connection issue (reading varies a lot, even going up to 2000C based on touching the wire), so going to check/rewire that first. Will check the 100R if I have one.
I'm also struggling to work out how to have a fan be thermostatically controlled by
mcutemp
, which I'm pretty sure I had in V2 (though, I may be mistaken).Create a sensor for mcutemp, then use that sensor number ni the H parameter of your M106 command. In RRF3 the M106 H parameter refers to a sensor number, not a heater number.
Ahh, gotcha. Thanks.
-
@dc42
Yup, it was a bad connection Added a dab of solder to the crimped connections to firm them up a bit and all is good.MCU temp is working perfectly now too. Had missed the bit about M106 H now being sensor rather than heater. I see it's in the notes on the wiki for M106 now. I added this
(this refers to sensor number in RRF_3)
to the end of theHnn:nn:nn
description on there just to highlight it a little more if that's OK? -
New issue - porting over my sensorless homing settings.
config.g
M915 X Y S4 F0 H200 R1
homeall.g
G91 ; relative positioning M913 X45 Y45 ; drop motor currents to 45% M915 X Y S4 R0 F0 ; set X and Y to sensitivity 2, do nothing when stall, unfiltered G1 H2 X20 Y20 Z5 F6000 ; lift Z relative to current position G1 H1 X-281 Y-325 F6000 ; move quickly to X or Y endstop and stop there (first pass) G4 P150 G1 X20 Y20 ; move away from home G4 P150 G1 H1 X-281 F3600 ; home X axis G4 P150 G1 H1 Y-325 F3600 ; home Y axis G4 P150 G1 X20 Y20 F6000 ; go back a few mm M400 ; make sure everything has stopped before we reset the motor currents M913 X100 Y100 ; reset motor currents G90 ; absolute positioning G1 X125 Y150 F3600 ; Move to bed centre G4 P500 ; pause G91 ; relative positioning ; BLTouch Z G30 ; Do a single probe to home our Z axis G90 ; Make sure we are in absolute mode G1 Z10 F360 ; Rapidly move the Z axis to Z=10.
It gets up to the second
G1
, but as soon as it hits an axes (aka the "endstop") it stops homing and ignores the rest of the script. -
There is a known issue with stall detect homing in the RRF3 beta releases up to and including beta 12. The more recent build on Dropbox includes a change that may fix it.
-
Gotcha. The dropbox build also fails in the same way unfortunately.
-
Thanks, on my list to look at after FormNext.
-
@keyz182, is this a Cartesian or a CoreXY machine?
Please post your complete config.g file.
-
@dc42 said in RepRapFirmware 3.0beta12 now available:
@keyz182, is this a Cartesian or a CoreXY machine?
Please post your complete config.g file.
I'm back on 2.04 for now as I had to get some printing done. That's done, so will be able to test 3.0 again this week now.
Below is the 3.0
config.g
I last tested with.; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"ThreeDee" ; 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 S0 ; physical drive 3 goes forwards M569 P4 S0 ; 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 Z1600.00 E425.00:425.00 ; set steps per mm M566 X900.00 Y900.00 Z12.00 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min) M203 X30000.00 Y30000.00 Z360.00 E7200.00:7200.00 ; set maximum speeds (mm/min) M201 X3000.00 Y3000.00 Z20.00 E6600.00:6600.00 ; set accelerations (mm/s^2) M906 X1500 Y1500 Z1500 E1200:1200 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X-1 Y-15 Z0 S1 ; set axis minima M208 X275 Y305 Z290 S0 ; set axis maxima ; Stall Detection M915 X Y S4 F0 H200 R1 ; Endstops M574 X1 S3 ; configure sensorless endstop for low end on X M574 Y1 S3 ; configure sensorless endstop for low end on Y M574 Z1 S2 ; configure Z-probe endstop for low end on Z ; Z-Probe M558 P9 C"^exp.heater3" H3 F100 T5000 A5 S0.02 ; set Z probe type to bltouch and the dive height + speeds M950 S0 C"exp.e3stop" ; create servo/gpio 0 on endstop 3 pin on expansion connector M280 P0 S10 ; send control signal to BLTouch through servo/gpio 0 ;G31 P25 X0 Y0 Z2.55 ; set Z probe trigger value, offset and trigger height G31 P25 X15 Y33 Z2.55 ; set Z probe trigger value, offset and trigger height M557 X10:265 Y10:295 S30 ; define mesh grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B4725 C7.06e-8 ; 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 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit M308 S1 Y"rtdmax31865" P"spi.cs1" A"RTD1" M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M143 H1 S360 ; set temperature limit for heater 1 to 360C M307 H1 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit M308 S2 Y"rtdmax31865" P"spi.cs2" A"RTD2" M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2 M143 H2 S360 ; set temperature limit for heater 2 to 360C M307 H2 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit ; Sensors M308 S3 Y"mcutemp" A"mcutemp" ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 C"PartFan" ; 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 S0 H1:2 T45 C"ExtruderFan" ; set fan 1 value. Thermostatic control is turned on M950 F2 C"fan2" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P2 S0 H3 T45 C"DuetCooling" ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P0 S"Left" 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"Right" 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 are not defined ; Heater 5 LEDs M950 P0 C"exp.heater5" M42 P0 S0 ; Pressure Advance M572 D0 S0.02 ; Retraction Settings M207 S0.2 F4800 T4800 Z0.10 ; Distance 4.5mm, Speed 6500, de-retract 3500, extra distance 0.025, zhop 0.4 ;DAA M593 F60 ; Miscellaneous M501 ; load saved parameters from non-volatile memory
-
@keyz182 said in RepRapFirmware 3.0beta12 now available:
@dc42 said in RepRapFirmware 3.0beta12 now available:
@keyz182, is this a Cartesian or a CoreXY machine?
Please post your complete config.g file.
I'm back on 2.04 for now as I had to get some printing done. That's done, so will be able to test 3.0 again this week now.
Below is the 3.0
config.g
I last tested with.; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"ThreeDee" ; 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 S0 ; physical drive 3 goes forwards M569 P4 S0 ; 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 Z1600.00 E425.00:425.00 ; set steps per mm M566 X900.00 Y900.00 Z12.00 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min) M203 X30000.00 Y30000.00 Z360.00 E7200.00:7200.00 ; set maximum speeds (mm/min) M201 X3000.00 Y3000.00 Z20.00 E6600.00:6600.00 ; set accelerations (mm/s^2) M906 X1500 Y1500 Z1500 E1200:1200 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X-1 Y-15 Z0 S1 ; set axis minima M208 X275 Y305 Z290 S0 ; set axis maxima ; Stall Detection M915 X Y S4 F0 H200 R1 ; Endstops M574 X1 S3 ; configure sensorless endstop for low end on X M574 Y1 S3 ; configure sensorless endstop for low end on Y M574 Z1 S2 ; configure Z-probe endstop for low end on Z ; Z-Probe M558 P9 C"^exp.heater3" H3 F100 T5000 A5 S0.02 ; set Z probe type to bltouch and the dive height + speeds M950 S0 C"exp.e3stop" ; create servo/gpio 0 on endstop 3 pin on expansion connector M280 P0 S10 ; send control signal to BLTouch through servo/gpio 0 ;G31 P25 X0 Y0 Z2.55 ; set Z probe trigger value, offset and trigger height G31 P25 X15 Y33 Z2.55 ; set Z probe trigger value, offset and trigger height M557 X10:265 Y10:295 S30 ; define mesh grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B4725 C7.06e-8 ; 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 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit M308 S1 Y"rtdmax31865" P"spi.cs1" A"RTD1" M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M143 H1 S360 ; set temperature limit for heater 1 to 360C M307 H1 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit M308 S2 Y"rtdmax31865" P"spi.cs2" A"RTD2" M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2 M143 H2 S360 ; set temperature limit for heater 2 to 360C M307 H2 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit ; Sensors M308 S3 Y"mcutemp" A"mcutemp" ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 C"PartFan" ; 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 S0 H1:2 T45 C"ExtruderFan" ; set fan 1 value. Thermostatic control is turned on M950 F2 C"fan2" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P2 S0 H3 T45 C"DuetCooling" ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P0 S"Left" 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"Right" 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 are not defined ; Heater 5 LEDs M950 P0 C"exp.heater5" M42 P0 S0 ; Pressure Advance M572 D0 S0.02 ; Retraction Settings M207 S0.2 F4800 T4800 Z0.10 ; Distance 4.5mm, Speed 6500, de-retract 3500, extra distance 0.025, zhop 0.4 ;DAA M593 F60 ; Miscellaneous M501 ; load saved parameters from non-volatile memory
Also, it's CoreXY