; Configuration file for Duet WiFi (firmware version 1.21) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v2 on Sat May 25 2019 18:49:41 GMT-0700 (Pacific Daylight Time) ; updated manually to reflect changes for RRF3 ; General preferences M111 S0 ; Debug off G21 ; work in mm G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves ; Network M550 P"Duet" ; Set machine name M552 S1 ; Enable network ;*** Access point is configured manually via M587 M586 P0 S1 ; Enable HTTP M586 P1 S0 ; Disable FTP M586 P2 S0 ; Disable Telnet ; Drives M569 P0 S0 ; Physical drive 0 goes backwards (x) M569 P1 S0 ; Physical drive 1 goes backwards (y) M569 P2 S1 ; Physical drive 2 goes forwards (not used) M569 P3 S1 ; Physical drive 3 goes forwards (E0) M569 P4 S0 ; Physical drive 4 goes backwards (E1) M569 P5 S1 ; Physical drive 5 goes forwards (Z) M569 P6 S1 ; Physical drive 6 goes forwards (second Z) M92 X80.20 Y80.15 Z406.00:406.00 E96.5:105 ; Set steps per mm - checked against Marlin config extruder 0 and extruder 1 are specified M350 X16 Y16 Z16:16 E256:256 I1 ; Configure microstepping with interpolation for x,y,z,E0 and E1 ; map axis M584 X0 Y1 Z5:6 E3:4 ; define that driver 0 is x, driver 1 is y, driver 2 (normally z) is unused, two independant z drivers are used, 5 and 6 on the duex5 expansion board and extruders are drivers 3 and 4 M671 x-30:530 Y250:250 S3 ; define where the two different z screws are located (x -30 and 530, y at 250 and 250), S is the maximum correction to be applied in mm ;The M92 commands to set steps/mm should either come after any M350 command to set microstepping, or else the M92 parameters should be correct for the default x16 microstepping. This is because when you change microstepping, the steps/mm are automatically adjusted to take account of the change in microstepping. M566 X900.00 Y900.00 Z15.00:15.00 E1000:1000 ; Set maximum instantaneous speed changes (mm/min) (jerk) M203 X30000.00 Y12000.00 Z1000.00:1000.00 E1000:1000 ; Set maximum speeds (mm/min) M201 X3000.00 Y3000.00 Z10:10 E1000:1000 ; Set accelerations (mm/s^2) M906 X1500.00 Y1500.00 Z1000.00:1000.00 E1000:1000 I50 ; Set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X-10 Y0 Z-0 S1 ; Set axis minima, this is what the axis are set to after homing M208 X500 Y510 Z480 S0 ; Set axis maxima ++++++++++++++++++++ does not account for x offset of second extruder ; set up BlTouch M950 H3 C"nil" M950 H4 C"nil" M950 H5 C"nil" M950 H6 C"nil" M950 H7 C"nil" M574 Z0 C"nil" ; not needed in rrf3 M307 H7 A-1 C-1 D-1 ; Disable the 7th Heater to free up PWM channel 5 on the Duex board. ; set up probe type M950 S0 C"exp.heater7" ; create servo/gpio 0 on heater 3 on expansion connector M558 P9 C"zprobe.in+zprobe.mod" H3 F60 T6000 A10 R0.75 S0.005 B1 ; Set Z probe type/mode 9. H=Dive Height. F=Speed the bed moves, ; T= speed between probe points, A10 = probe up to 10 times ; R0.75 = allow settlement time, S0.005 = two consecutive probes need ; to be within 0.005 mm, ; B1 = turn off heat for the actual probing ;M280 P3 S10 I1 ; send control signal to BlTouch through servo/gpio 0 ; set up offset of probe to nozzle 1 ; X is negative if probe is in front of nozzle towards front of printer ; Y is negative if probe is towards y=0 of nozzle ; We start with a Z offset of 0.0mm in regards to actual probe activation and factual distance. ; This value will be adjust later on, to match our setup. ; Important: It is important to have Z-offset at 0 before calibrating. ; P is the value needed to trigger the BLTouch. Doesn't seem to matter ... G31 P25 X-12 Y-28 Z2.9 ; P probe trigger value, offset in relation to nozzle. And trigger height adjustment ; new version x - -11.5, y -27.5 plus 'bend' allowance' ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B3950 ; configure sensor 0 as thermistor on pin bedtemp M308 S3 P"e2temp" Y"thermistor" A"bed sense 2" T100000 B3950 ; configure alternate or second bed heat sensor 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 P"e0temp" Y"thermistor" T100000 B3950 ; 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 S0.6 ; disable bang-bang mode for the nozzle heater and set PWM limit M308 S2 P"e1temp" Y"thermistor" T100000 B3950 ; configure sensor 2 as thermistor on pin e0temp M950 H2 C"e1heat" T2 ; create nozzle heater output on e0heat and map it to sensor 2 M143 H2 S280 ; set temperature limit for heater 2 to 280C M307 H2 B0 S0.6 ; disable bang-bang mode for the nozzle heater and set PWM limit ; Fans ; FAN1 is set up as a thermostatically-controlled fan by default because it is typically used to control the hot end heatsink fan. ; To use it as a normal controlled fan, you must first cancel thermostatic mode by sending M106 P1 H-1. ; note that fan1 is heatsink fan, fan 0 is first tool fan M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 ************************ ; set fan 0 value . M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 S1 H1:2 T45 ; set fan 1 value. Thermostatic control is turned on. This fan turns on if either heater1 or heater2 is over 45 degrees ; Tools M563 S"Nozzle 0" 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 M563 S"Nozzle 1" P1 D1 H2 F0 ; define tool 1 G10 P1 X20 Y0 Z0 ; set tool 1 axis offsets G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C ;G10 P1 X19 Y-2 Z0 ; set tool 1 axis offsets X is offset by 20 mm ... heat break slighty bent so offset is more like 19 for x and 1 for y ; still trying to set up the offset proper - now trying 21 and -2. Note that removal and re-installation will require changing these figures as the bend will be in a different direction ; set up filament sensors M591 D0 P1 C"e0stop" S1 ; enable (S1) filament sensor (normal switch) on Extruder 0 , connected to E0 sensor M591 D1 P1 C"e1stop" S1 ; enable (S1) filament sensor (normal switch) on Extruder 1 , connected to E1 sensor ; Automatic power saving M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss ; Custom settings are not configured ; Mesh grid M557 X0:485 Y0:465 p7:7 ; Set mesh grid to start sampling at x0 y0 + offset of probe and go to x500 and y500 plus probe offset, sample 7 * 7 matrix ;G29 S1 P"heightmap.csv" ; Load height map file heightmap.csv and enable compensation ;G29 doesn't belong here as no z=0 height has been established - moved to homez or homeall ;M376 H10 ; taper off mesh compensation within 10 mm ; set up default heater parameters from config-override.g ; M501 to load values stored in config-override.g should be at or near the end, so that the commands in config-override.g don't get overridden themselves. ; Miscellaneous ; ; for pressure advance calibration use ; http://www.sternwolken.de/tmpup/3dprint/pressureadvance2.py ; change parameters as needed and then run python3 pressureadvance2.py > output.gcode ; M501 ; Load saved parameters from non-volatile memory M572 D0 S0.9 ; set extruder 0 pressure advance M572 D1 S2.1 ; set extruder 1 pressure advance M912 P0 S-10 ; Processor temperature is about 10 degrees lower than un-calibrated reading says T0 ; Select first tool ; Endstops M574 X1 S1 P"xstop" ; configure active-high (S1)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 ; Z endstop is the z probe both Z0 and Z1 seem to work to activate probe and not use regular endstop, home to minimum ************************************************************************************************************************************** ; old code from RRF 2 ; set up for piezo z probe ;M558 P8 I1 R0.3 F600 H10 T3000 ; Digital mode (P5), active high (I1), delay (R0.3), speed (F600), dive height (H5), probe up to 4 times (A4) for at least two consecutive consistent ;readings,travel speed (T8000) ;M558 P1 I1 R0.3 F300 H5 A4 T8000 ;M558 P1 I1 R0.3 F300 H5 T8000 ;;G31 P500 X11.0 Y0.5 Z1.65 ; set threshold and offsets ;The XYZ parameters in the M558 command define which axes the Z probe is used to home (0 = Z probe not used to home this ;axis, 1 = Z probe used). By default, RepRapFirmware for the Duet 0.8/0.8.5 (but not ;the Duet 2) uses the Z probe to home ;the X and Z axes. ;The H parameter defines the Z probe dive height, which is the height above the trigger height from which probing starts. ;The default is 3mm or 5mm depending on firmware version. You may wish to increase it ;during initial calibration. ;G31 X0 Y0 Z-0.18 P474 ;probe X, Y, Z offsets (all zero = first nozzle), might use x+10 for the spot between the nozzles, Trigger point of probe ; G31 must come after M558 ; Z should normally be slightly negative as the probe triggers just below zero ; correct for proper MMU temperature ***************************************************************************************************************************************