Duet 3 rrf3 example config (#334)

* Duet 3 RRF3.1.1 example config

Work in progress example config.

* Update homez.g

* Correct homeall.g uploaded

* M566 typo corrected

* Delete old config - get ready for new

* Duet 3 6HC + 3HC example config

Still work in progrss - hasn't been cleaned yet

* Create readme.md

* Update readme.md

* Fixed macro call in homez.g

* Fixed macro call in homeall.g

* Fixing comments (with a proper github client this time).

* Fixed current on Z axis

thanks oc_geek :)

* Limit to Z axis

thanks oc_geek

* Corrected microswitch Y offset.

* Mesh macros correction

Home Z should not be needed after mesh

* Update move_over_microswitch.g

Co-authored-by: TheDorje <45540765+TheDorje@users.noreply.github.com>
Co-authored-by: KiloQubit <69389593+KiloQubit@users.noreply.github.com>
This commit is contained in:
DorjeDorf 2021-07-17 19:45:43 +02:00 committed by GitHub
parent 256ff119a7
commit 7c0107a104
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
39 changed files with 496 additions and 0 deletions

View File

@ -35,6 +35,7 @@ like so:
| Creator | Config title | Description | V0 | V1.8 | V2.4 | VSW |
| --- | --- | --- | --- | --- | --- | --- |
| DorjeDorf | [Duet 3 Config](./reprapfirmware/DorjeDorf) | RRF 3.3 example config | :x: | :x: | :heavy_check_mark: | :x: |
| fulg | [Duet 2 Config](./reprapfirmware/fulg) | RRF 2.05 example config | :x: | :x: | :heavy_check_mark: | :x: |
---

View File

@ -0,0 +1,2 @@
g1 x135 y145 z10 f3600
g30 s-3

View File

@ -0,0 +1 @@
G1 X150 Y5 Z150

View File

@ -0,0 +1,9 @@
M104 S255
G28
G1 X150 Y5 Z150
M109 S255
G1 E10 F300
G1 E-2 F600
G1 E-80 F2000
M400
M117 Filament unloaded

View File

@ -0,0 +1,3 @@
; Home, but only if homing is needed
if !move.axes[0].homed || !move.axes[1].homed
G28 XY

View File

@ -0,0 +1,3 @@
; Home, but only if homing is needed
if !move.axes[2].homed
G28 Z

View File

@ -0,0 +1 @@
G1 X207 Y304 F6000 ; move above the endstop switch

View File

@ -0,0 +1 @@
M913 X100 Y100 ; restore AB current to 100%

View File

@ -0,0 +1 @@
M913 X60 Y60 ; Set AB current to 60%

View File

@ -0,0 +1,4 @@
if fans[5].actualValue == 1
M106 P5 S0
else
M106 P5 S1

View File

@ -0,0 +1,20 @@
; Go to the starting point for nozzle_brush and start heating (if not already at temp).
G1 X50 Y305 Z10 F5400
M104 S200
; Drop to cleaning height and wait for temp
G1 Z4.55
M109 S200
; Start cleaning moves
G1 X100 F5400
G1 X50
G1 X100
G1 X50
G1 X100
G1 X50
G1 X70
; Raise nozzle and finish cleaning
G1 Z10
M400

View File

@ -0,0 +1,63 @@
G1 Z5 F3000
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5
G30 K0 S-1
G1 Z5

View File

@ -0,0 +1,7 @@
; StealthCop calibration
G4 P150
M17
G4 P150
G1 X1 Y1 Z1
G4 P150
M18

View File

@ -0,0 +1,3 @@
M557 X15:285 Y25:275 S250
G28 Z
G29

View File

@ -0,0 +1,3 @@
M557 X15:285 Y25:275 S40
G28 Z
G29

View File

@ -0,0 +1 @@
M106 P7 S0.5

View File

@ -0,0 +1 @@
M106 P7 S0

View File

@ -0,0 +1,13 @@
; Prime the hotend
G92 E0 ; reset extruder
G1 X240 Y297 Z0.3 F5000.0 ; move to start-line position
;Heat up and wait until nozzle is at temp
M104 S{global.hotend_temp}
M109 S{global.hotend_temp}
G1 X300 Y297 Z0.3 F1500.0 E10 ; draw 1st line
G1 X300 Y297.6 Z0.3 F5000.0 ; move to side a little
G1 X240 Y297.6 Z0.3 F1500.0 E15 ; draw 2nd line
G1 X200 Y297.6 Z0.1 F600 ; wipe
G92 E0 ; reset extruder

View File

@ -0,0 +1,12 @@
set global.bed_temp = 0
set global.hotend_temp = 0
M106 S0 ; turn off cooling fan
M106 P4 S1 ; turn on exhaust fan
M104 S0 ; turn off extruder
M140 S0 ; turn off bed
M290 S0 ; Reset babystepping
G1 X0 Y250 F1000 ; prepare for part removal
M84 ; disable motors

View File

@ -0,0 +1,26 @@
; Clear mesh settings
M561
; Clear PA
M572 D0 S0
; Start heating the bed
M140 S{global.bed_temp}
; Home if needed
M98 P"0:/macros/Home/Home_xy"
M98 P"0:/macros/Home/Home_z"
; Wait until the bed is hot
M190 S{global.bed_temp}
; Perform QGL and prime nozzle.
G32
M98 P"0:/macros/Bed center point"
; Load Mesh Map
G29 S1
; Prime the nozzle and get ready for printing
M98 P"0:/macros/Print/Prime Nozzle"

View File

@ -0,0 +1,19 @@
This is my config for the Voron 2.4 based on Duet 6HC and 3HC.
If you have any questions - ping me on voron discord.
This is a config that will work on RRF 3.3 (I'm running RC3). Earlier ones might complain about how the probe are configured (two speeds probing was introduced in 3.3).
Code needed in slicer to start printing is:
```
set global.bed_temp = <temp here>
set global.hotend_temp = <temp heree>
M98 P"0:/macros/Print/Print start"
```
Code needed to end the print is:
```
M98 P"0:/macros/Print/Print end"
```

View File

@ -0,0 +1,48 @@
; bed.g
; called to perform automatic bed compensation via G32
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:52 GMT+0200 (Central European Summer Time)
M561 ; clear any bed transform
; Home, but only if homing is needed
if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed
G28
M98 P"/macros/Home/z_current_low.g"
while true
if iterations = 5
abort "Too many auto calibration attempts"
G30 K0 P0 X15 Y25 Z-99999 ; probe near front left belt
if result != 0
continue
G30 K0 P1 X15 Y265 Z-99999 ; probe near back left belt
if result != 0
continue
G30 K0 P2 X255 Y265 Z-99999 ; probe near back right belt
if result != 0
continue
G30 K0 P3 X255 Y25 Z-99999 S4 ; probe near front right belt
if result != 0
continue
if move.calibration.initial.deviation <= 0.01
break
; If there were too many errors or the deviation is too high - abort and notify user
echo "Repeating calibration because deviation is too high (" ^ move.calibration.initial.deviation ^ "mm)"
; end loop
echo "Auto calibration successful, deviation", move.calibration.initial.deviation ^ "mm"
M98 P"/macros/Home/z_current_high.g"
; Perform nozzle cleaning
M98 P"/macros/Maintenance/nozzle_brush.g"
; rehome z
G28 Z

View File

@ -0,0 +1,3 @@
; stop.g
; called when a print is cancelled after a pause.
M98 P"0:/macros/Print/Print end"

View File

@ -0,0 +1,130 @@
; Configuration file for Duet 3 (firmware version 3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:52 GMT+0200 (Central European Summer Time)
; General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"Voron" ; set printer name
M669 K1 ; select CoreXY mode
; Network
M552 P0.0.0.0 S1 ; enable network and acquire dynamic address via DHCP
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 T1 S0 ; disable Telnet
; Wait a bit so boards can sync up
G4 S5
; Drives for XY
M569 P0.4 S1 ; A motor
M569 P0.5 S1 ; B motor
; Drives for Z
M569 P0.0 S0 ; Front left
M569 P0.1 S1 ; Back left
M569 P0.2 S0 ; Back right
M569 P0.3 S1 ; Front right
; Drive for extruder
M569 P2.0 S0 ; physical drive 1.0 goes forwards
; Drive mappings
M584 X0.4 Y0.5 Z0.0:0.1:0.2:0.3 E2.0 ; set drive mapping
; General drive config like speeds, accel, jerk, etc
M350 X16 Y16 Z16:16:16:16 E16 I1 ; configure microstepping with interpolation
M92 X80.00 Y80.00 Z400.00 E410.00 ; set steps per mm
M566 X600.00 Y600.00 Z60.00 E8000.00 ; set maximum instantaneous speed changes (mm/min)
M203 X18000.00 Y18000.00 Z3000 E15000 ; set maximum speeds (mm/min)
M201 X1500.00 Y1500.00 Z350.00 E1800.00 ; set accelerations (mm/s^2)
M204 P1500 T2000 ; set printing acceleration and travel acceleration
M906 X1200 Y1200 Z1200 E600 I60 ; set motor currents (mA) and motor idle factor in per cent
M84 S30
; Axis Limits
M208 X1 Y0 Z0 S1 ; set axis minima
M208 X301 Y305 Z265 S0 ; set axis maxima
; Endstops
M574 X2 S1 P"!io1.in" ; X Hall effect endstop
M574 Y2 S1 P"!io2.in" ; Y Hall effect endstop
M574 Z0 P"nil" ; No endstop
; Z microswitch
M558 K1 P8 C"io3.in" I1 H2 F350:60 T18000 A10 S0.01 R0.2 ; set Z probe type to switch and the dive height + speeds
G31 K1 P500 X0 Y0 Z-0.17 ; set Z probe trigger value, offset and trigger height -0.8
; Z-Probe
M558 K0 P8 C"io4.in" I1 H5 F350:120 T18000 A5 S0.01 R0.2 ; set Z probe type to switch and the dive height + speeds
G31 K0 P500 X0 Y25 Z1.98 ; set Z probe trigger value, offset and trigger height
M671 X354:354:-53:-53 Y0:370:370:0 S20 ; Define Z belts locations (Front_Left, Back_Left, Back_Right, Front_Right)
M557 X15:285 Y25:275 S40 ; define mesh grid
; Hotbed
M308 S0 P"temp0" Y"thermistor" T100000 B4138 ; Thermistor
M950 H0 C"out0" T0 ; Heater
M307 H0 R0.799 C380.0 D4.51 S0.60 V24.0 ; Heater 0 model for 3.x
M140 H0 ; Map heated bed to heater 0
M143 H0 S120 ; Set temperature limit for heater 0 to 120C
M570 H0 T3 ; Start screaming if temp falls 3C below set temp.
; Hotend
M308 S1 P"temp1" Y"pt1000" ; PT1000 on main board
M950 H1 C"out1" T1 ; Heater
; Mosquitto
M307 H1 R2.921 C156.5 D5.20 S1.00 V24.0
; DHT22 sensor
M308 S10 P"0.spi.cs1" Y"dht22" A"Chamber Temp" ; Temperature (connected to cs0 port on the temp daughterboard slot
M308 S11 P"S10.1" Y"dhthumidity" A"Chamber Hum[%]" ; Humidity
; Main fans
M950 F0 C"2.out6" Q500 ; Part cooling fan
M106 P0 S0 H-1 C"Part Fan" ; Default off; thermostatic control off
M950 F1 C"out7" Q500 ; Hotend cooling fan
M106 P1 S1 H1 T45 C"Hotend Fan" ; Default on; thermistatic control on above 45C
; Aux fans (option to control daughter board fans based on main board temp sensor coming in RRF3.3, for now has to be manual)
M950 F2 C"out8" Q500 ; Electronics compartment fan 1
M106 P2 S1 H0 T45 C"Electronics Fan 1" ; Default off; thermistatic control on above 45C
M950 F3 C"out9" Q500 ; Electronics compartment fan 2
M106 P3 S1 H0 T45 C"Electronics Fan 2" ; Default off; thermistatic control on above 45C
M950 F4 C"!out4+out4.tach" ; Noctua exhaust filter fan
M106 P4 S0 H-1 C"Exhaust Fan" ; Default off
M950 F7 C"out5+out5.tach" Q500 ; Electronics compartment fan 1
M106 P7 S0 H-1 C"Nevermore" ; Default off; thermistatic control on above 45C
; 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
; Push buttons and their config
M950 J5 C"io5.in" ; Left button - light
M581 P5 T5 ; when button pushed, execute trigger5.g
M950 J6 C"io7.in" ; Left button - heat up
M950 F5 C"io6.out" ; configure the relay as fan
M106 F5 S0 H-1 C"Light"
M581 P6 T6 ; When pushed - trigger relay switch on io6.out
; Custom settings are not defined
M593 F37.3 ; DAA
; Calibration of the MCU temp sensor
M912 P0 S-9.2
; Miscellaneous
M911 S22 R23 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
M575 P1 S1 B57600 ; enable support for PanelDue
; Prepare global vars for print macros
global bed_temp = 0
global hotend_temp = 0

View File

@ -0,0 +1,25 @@
; homeall.g
; called to home all axes
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:52 GMT+0200 (Central European Summer Time)
G91 ; relative positioning
G1 H2 Z10 F6000 ; lift Z relative to current position
G1 H1 X355 Y305 F1800 ; move quickly to X or Y endstop and stop there (first pass)
G1 H1 X355 ; home X axis
G1 H1 Y355 ; home Y axis
G1 X-5 Y-5 F6000 ; go back a few mm
G1 H1 X355 F360 ; move slowly to X axis endstop once more (second pass)
G1 H1 Y355 ; then move slowly to Y axis endstop
G90 ; absolute positioning
M98 P"/macros/Home/move_over_microswitch.g" ; move above the endstop switch
M98 P"/macros/Home/z_current_low.g"
G30 K1 Z-99999
M98 P"/macros/Home/z_current_high.g"
; Uncomment the following lines to lift Z after probing
;G91 ; relative positioning
;G1 Z5 F100 ; lift Z relative to current position
;G90 ; absolute positioning

View File

@ -0,0 +1,12 @@
; homex.g
; called to home the X axis
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:52 GMT+0200 (Central European Summer Time)
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 X305 F1800 ; move quickly to X axis endstop and stop there (first pass)
G1 X-5 F6000 ; go back a few mm
G1 H1 X305 F360 ; move slowly to X axis endstop once more (second pass)
G1 H2 Z-5 F6000 ; lower Z again
G90 ; absolute positioning

View File

@ -0,0 +1,12 @@
; homey.g
; called to home the Y axis
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:52 GMT+0200 (Central European Summer Time)
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 Y305 F1800 ; move quickly to Y axis endstop and stop there (first pass)
G1 Y-5 F6000 ; go back a few mm
G1 H1 Y305 F360 ; move slowly to Y axis endstop once more (second pass)
G1 H2 Z-5 F6000 ; lower Z again
G90 ; absolute positioning

View File

@ -0,0 +1,11 @@
; homez.g
; called to home the Z axis
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:52 GMT+0200 (Central European Summer Time)
M98 P"/macros/Home/z_current_low.g"
G91 ; relative positioning
G1 H2 Z10 F6000 ; lift Z relative to current position
G90 ; absolute positioning
M98 P"/macros/Home/move_over_microswitch.g" ; move above the endstop switch
G30 K1 Z-99999
M98 P"/macros/Home/z_current_high.g"

View File

@ -0,0 +1,11 @@
; pause.g
; called when a print from SD card is paused
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:52 GMT+0200 (Central European Summer Time)
M83 ; relative extruder moves
G1 E-2 F3600 ; retract 10mm of filament
G91 ; relative positioning
G1 Z5 F360 ; lift Z by 5mm
G90 ; absolute positioning
G1 X0 Y300 F6000 ; go to X=0 Y=0

View File

@ -0,0 +1,9 @@
; resume.g
; called before a print from SD card is resumed
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:52 GMT+0200 (Central European Summer Time)
G1 R1 X0 Y0 Z5 F6000 ; go to 5mm above position of the last print move
G1 R1 X0 Y0 ; go back to the last print move
M83 ; relative extruder moves
G1 E2 F3600 ; extrude 3mm of filament

View File

@ -0,0 +1,5 @@
; sleep.g
; called when M1 (Sleep) is being processed
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:53 GMT+0200 (Central European Summer Time)

View File

@ -0,0 +1,6 @@
; stop.g
; called when M0 (Stop) is run (e.g. when a print from SD card is cancelled)
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:53 GMT+0200 (Central European Summer Time)
M98 P"0:/macros/Print/Print end"

View File

@ -0,0 +1,5 @@
; tfree0.g
; called when tool 0 is freed
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:53 GMT+0200 (Central European Summer Time)

View File

@ -0,0 +1,7 @@
; tpost0.g
; called after tool 0 has been selected
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:53 GMT+0200 (Central European Summer Time)
; Wait for set temperatures to be reached
; M116 P0

View File

@ -0,0 +1,5 @@
; tpre0.g
; called before tool 0 is selected
;
; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:53 GMT+0200 (Central European Summer Time)

View File

@ -0,0 +1,2 @@
; Toggle lights
M98 P"/macros/Maintenance/Lights"

View File

@ -0,0 +1,9 @@
; Start electronics bay fans
M106 P4 S0
M106 P2 S1
M106 P3 S1
; Preheating the bed
M140 S105
G32
M117 Preheating bed to 105C and starting QGL