From 57b880071faafd19c8f0c55a5ec534e4c1f33e9c Mon Sep 17 00:00:00 2001
From: E3D-Online Ltd <josh+git@e3d-online.com>
Date: Wed, 17 Mar 2021 16:47:40 +0000
Subject: [PATCH] Add files via upload

---
 rrf3.x/sys/bed.g     | 11 +++++++++++
 rrf3.x/sys/brush.g   | 19 +++++++++++++++++++
 rrf3.x/sys/cancel.g  |  6 ++++++
 rrf3.x/sys/homeall.g | 12 ++++++++++++
 rrf3.x/sys/homec.g   | 17 +++++++++++++++++
 rrf3.x/sys/homex.g   | 19 +++++++++++++++++++
 rrf3.x/sys/homey.g   | 19 +++++++++++++++++++
 rrf3.x/sys/homez.g   | 16 ++++++++++++++++
 rrf3.x/sys/pause.g   |  4 ++++
 rrf3.x/sys/prime.g   | 31 +++++++++++++++++++++++++++++++
 rrf3.x/sys/purge.g   | 31 +++++++++++++++++++++++++++++++
 rrf3.x/sys/resume.g  |  7 +++++++
 rrf3.x/sys/sleep.g   |  2 ++
 rrf3.x/sys/stop.g    |  2 ++
 rrf3.x/sys/tfree0.g  | 25 +++++++++++++++++++++++++
 rrf3.x/sys/tfree1.g  | 26 ++++++++++++++++++++++++++
 rrf3.x/sys/tfree2.g  | 26 ++++++++++++++++++++++++++
 rrf3.x/sys/tfree3.g  | 26 ++++++++++++++++++++++++++
 rrf3.x/sys/tpost0.g  | 10 ++++++++++
 rrf3.x/sys/tpost1.g  | 10 ++++++++++
 rrf3.x/sys/tpost2.g  | 10 ++++++++++
 rrf3.x/sys/tpost3.g  | 10 ++++++++++
 rrf3.x/sys/tpre0.g   | 28 ++++++++++++++++++++++++++++
 rrf3.x/sys/tpre1.g   | 26 ++++++++++++++++++++++++++
 rrf3.x/sys/tpre2.g   | 26 ++++++++++++++++++++++++++
 rrf3.x/sys/tpre3.g   | 27 +++++++++++++++++++++++++++
 26 files changed, 446 insertions(+)
 create mode 100644 rrf3.x/sys/bed.g
 create mode 100644 rrf3.x/sys/brush.g
 create mode 100644 rrf3.x/sys/cancel.g
 create mode 100644 rrf3.x/sys/homeall.g
 create mode 100644 rrf3.x/sys/homec.g
 create mode 100644 rrf3.x/sys/homex.g
 create mode 100644 rrf3.x/sys/homey.g
 create mode 100644 rrf3.x/sys/homez.g
 create mode 100644 rrf3.x/sys/pause.g
 create mode 100644 rrf3.x/sys/prime.g
 create mode 100644 rrf3.x/sys/purge.g
 create mode 100644 rrf3.x/sys/resume.g
 create mode 100644 rrf3.x/sys/sleep.g
 create mode 100644 rrf3.x/sys/stop.g
 create mode 100644 rrf3.x/sys/tfree0.g
 create mode 100644 rrf3.x/sys/tfree1.g
 create mode 100644 rrf3.x/sys/tfree2.g
 create mode 100644 rrf3.x/sys/tfree3.g
 create mode 100644 rrf3.x/sys/tpost0.g
 create mode 100644 rrf3.x/sys/tpost1.g
 create mode 100644 rrf3.x/sys/tpost2.g
 create mode 100644 rrf3.x/sys/tpost3.g
 create mode 100644 rrf3.x/sys/tpre0.g
 create mode 100644 rrf3.x/sys/tpre1.g
 create mode 100644 rrf3.x/sys/tpre2.g
 create mode 100644 rrf3.x/sys/tpre3.g

diff --git a/rrf3.x/sys/bed.g b/rrf3.x/sys/bed.g
new file mode 100644
index 0000000..53081bd
--- /dev/null
+++ b/rrf3.x/sys/bed.g
@@ -0,0 +1,11 @@
+; Bed Mesh Leveling
+
+G1 S2 Z3 F5000		; lift Z 3mm
+
+G29
+
+;disable mesh leveling, needs to be enabled at the start of your print and disabled again when finished.
+G29 S2
+
+; Park the head
+G1 X150 Y-49 F50000
diff --git a/rrf3.x/sys/brush.g b/rrf3.x/sys/brush.g
new file mode 100644
index 0000000..dae40ba
--- /dev/null
+++ b/rrf3.x/sys/brush.g
@@ -0,0 +1,19 @@
+;Drop Bed
+G91
+G1 Z2 F2000
+G90
+
+;brush in
+G1 X-32.5 Y124 F50000
+G1 X-35.5 Y155 F50000
+G1 X-38.5 Y124 F50000
+G1 X-41.5 Y155 F50000
+
+;Brush Out
+G1 X-41.5 Y155 F50000
+G1 X-32.5 Y150 F50000
+G1 X-41.5 Y145 F50000
+G1 X-32.5 Y140 F50000
+G1 X-41.5 Y135 F50000
+G1 X-32.5 Y130 F50000
+G1 X-41.5 Y125 F50000
diff --git a/rrf3.x/sys/cancel.g b/rrf3.x/sys/cancel.g
new file mode 100644
index 0000000..1dc6587
--- /dev/null
+++ b/rrf3.x/sys/cancel.g
@@ -0,0 +1,6 @@
+; purge tool
+;M98 P"purge.g"
+
+; park tool
+T-1
+
diff --git a/rrf3.x/sys/homeall.g b/rrf3.x/sys/homeall.g
new file mode 100644
index 0000000..e0010d0
--- /dev/null
+++ b/rrf3.x/sys/homeall.g
@@ -0,0 +1,12 @@
+; homeall.g
+; called to home all axes
+
+M98 P"homec.g"			; Home C (ToolHead)
+
+M98 P"homey.g"			; Home Y
+
+M98 P"homex.g"			; Home X
+
+M98 P"homez.g"			; Home Z
+
+G1 X150 Y-49 F15000		; Park
\ No newline at end of file
diff --git a/rrf3.x/sys/homec.g b/rrf3.x/sys/homec.g
new file mode 100644
index 0000000..a315ae1
--- /dev/null
+++ b/rrf3.x/sys/homec.g
@@ -0,0 +1,17 @@
+; homec.g
+; called to home the C axis (coupler)
+
+G91
+M400
+;M913 C60					; XY MOTORS TO 60% CURRENT
+;G1 H2 C30 F5000
+;M400
+M913 C60					; XY MOTORS TO 60% CURRENT
+G1 H2 C-1000 F10000
+G92 C-125
+G90
+M913 C100					; XY MOTORS TO 100% CURRENT
+G1 C0 F10000
+
+;Open Coupler
+M98 P"/macros/Coupler - Unlock"
\ No newline at end of file
diff --git a/rrf3.x/sys/homex.g b/rrf3.x/sys/homex.g
new file mode 100644
index 0000000..98da700
--- /dev/null
+++ b/rrf3.x/sys/homex.g
@@ -0,0 +1,19 @@
+; homex.g
+; called to home the x axis
+
+G91 							; use relative positioning
+
+G1 H2 X0.5 Y-0.5 F10000			; energise motors to ensure they are not stalled
+
+M400 							; make sure everything has stopped before we change the motor currents
+M913 X20 Y20 					; drop motor currents to 25%
+M915 H200 X Y S3 R0 F0 			; set X and Y to sensitivity 3, do nothing when stall, unfiltered
+
+G1 H2 Z3 F5000					; lift Z 3mm
+G1 H1 X-400 F3000 				; move left 400mm, stopping at the endstop
+G1 H1 X2 F2000 					; move away from end
+G1 H2 Z-3 F1200					; lower Z
+G90 							; back to absolute positioning
+
+M400 							; make sure everything has stopped before we reset the motor currents
+M913 X100 Y100 					; motor currents back to 100%
diff --git a/rrf3.x/sys/homey.g b/rrf3.x/sys/homey.g
new file mode 100644
index 0000000..98bb70f
--- /dev/null
+++ b/rrf3.x/sys/homey.g
@@ -0,0 +1,19 @@
+; homey.g
+; called to home the Y axis
+
+G91 						; use relative positioning
+
+G1 H2 X0.5 Y-0.5 F10000		; energise motors to ensure they are not stalled
+
+M400 						; make sure everything has stopped before we change the motor currents
+M913 X20 Y20 				; drop motor currents to 20%
+M915 H200 X Y S3 R0 F0 		; set X and Y to sensitivity 3, do nothing when stall, unfiltered
+
+G1 H2 Z3 F5000				; lift Z 3mm
+G1 H1 Y-400 F3000 			; move to the front 400mm, stopping at the endstop
+G1 H1 Y2 F2000 				; move away from end
+G1 H2 Z-3 F1200				; lower Z
+G90 						; back to absolute positioning
+
+M400 						; make sure everything has stopped before we reset the motor currents
+M913 X100 Y100 				; motor currents back to 100%
diff --git a/rrf3.x/sys/homez.g b/rrf3.x/sys/homez.g
new file mode 100644
index 0000000..bb8cacb
--- /dev/null
+++ b/rrf3.x/sys/homez.g
@@ -0,0 +1,16 @@
+; homez.g
+; called to home the Z axis
+
+M98 P"/macros/Coupler - Unlock"	; Open Coupler
+
+G91 							; Relative mode
+G1 H2 Z5 F5000					; Lower the bed
+G90								; back to absolute positioning
+
+G1 X150 Y100 F50000				; Position the endstop above the bed centre
+
+M558 F1000
+G30
+M558 F300
+G30
+
diff --git a/rrf3.x/sys/pause.g b/rrf3.x/sys/pause.g
new file mode 100644
index 0000000..d656a96
--- /dev/null
+++ b/rrf3.x/sys/pause.g
@@ -0,0 +1,4 @@
+G91 					; use relative positioning
+G1 S2 Z5 F5000			; lift Z 5mm
+G90 					; back to absolute positioning
+G1 X-10 Y200 F50000		; move out the way.
diff --git a/rrf3.x/sys/prime.g b/rrf3.x/sys/prime.g
new file mode 100644
index 0000000..fde98ec
--- /dev/null
+++ b/rrf3.x/sys/prime.g
@@ -0,0 +1,31 @@
+;brush in
+G1 X-32.5 Y124 F50000
+G1 X-35.5 Y155 F50000
+G1 X-38.5 Y124 F50000
+G1 X-41.5 Y155 F50000
+
+;Park for prime/purge
+G1 X-37.5 Y176 F50000
+
+;Prime
+G92 E0
+G1 E10 F200
+G1 F50
+G1 E5 F50
+G1 E-0.25 F200
+G92 E0
+;G4 S2
+
+;Run Out
+G1 X-37.5 Y160 F50000
+
+;Brush Out
+G1 X-41.5 Y155 F50000
+G1 X-32.5 Y150 F50000
+G1 X-41.5 Y145 F50000
+G1 X-32.5 Y140 F50000
+G1 X-41.5 Y135 F50000
+G1 X-32.5 Y130 F50000
+G1 X-41.5 Y125 F50000
+
+
diff --git a/rrf3.x/sys/purge.g b/rrf3.x/sys/purge.g
new file mode 100644
index 0000000..15b476c
--- /dev/null
+++ b/rrf3.x/sys/purge.g
@@ -0,0 +1,31 @@
+;brush in
+G1 X-41.5 Y125 F50000
+G1 X-32.5 Y130 F50000
+G1 X-41.5 Y135 F50000
+G1 X-32.5 Y140 F50000
+G1 X-41.5 Y145 F50000
+G1 X-32.5 Y150 F50000
+G1 X-41.5 Y155 F50000
+
+;Park for prime/purge
+G1 X-37.5 Y176 F50000
+
+;Purge
+G92 E0
+G1 F200
+G1 E12 F200
+G92 E0
+G1 E-8 F2750
+G4 S4
+
+;Run Out
+G1 X-37.5 Y160 F50000
+
+;Brush Out
+G1 X-41.5 Y155 F50000
+G1 X-38.5 Y124 F50000
+G1 X-35.5 Y155 F50000
+G1 X-32.5 Y124 F50000
+
+
+
diff --git a/rrf3.x/sys/resume.g b/rrf3.x/sys/resume.g
new file mode 100644
index 0000000..747272a
--- /dev/null
+++ b/rrf3.x/sys/resume.g
@@ -0,0 +1,7 @@
+; Resume macro file
+; TODO do a prime/wipe cycle here to get rid of any filament that has oozed out
+
+G1 R1 X0 Y0 Z2 F5000 		; go to 5mm above position of the last print move
+G1 R1 X0 Y0 Z0 				; go back to the last print move
+M83 						; relative extruder moves
+G1 E3 F3600 				; extrude 3mm of filament
\ No newline at end of file
diff --git a/rrf3.x/sys/sleep.g b/rrf3.x/sys/sleep.g
new file mode 100644
index 0000000..476d276
--- /dev/null
+++ b/rrf3.x/sys/sleep.g
@@ -0,0 +1,2 @@
+; sleep.g
+; called when M1 (Sleep) is being processed
diff --git a/rrf3.x/sys/stop.g b/rrf3.x/sys/stop.g
new file mode 100644
index 0000000..f963dd4
--- /dev/null
+++ b/rrf3.x/sys/stop.g
@@ -0,0 +1,2 @@
+; stop.g
+; called when M0 (Stop) is run (e.g. when a print from SD card is cancelled)
diff --git a/rrf3.x/sys/tfree0.g b/rrf3.x/sys/tfree0.g
new file mode 100644
index 0000000..2939d2d
--- /dev/null
+++ b/rrf3.x/sys/tfree0.g
@@ -0,0 +1,25 @@
+; tfree0.g
+; called when tool 0 is freed
+
+;Drop the bed
+G91
+G1 Z4 F1000
+G90
+
+;Purge nozzle
+;M98 P"purge.g"
+
+;Move In
+G53 G1 X-10.5 Y150 F50000
+G53 G1 X-10.5 Y200 F50000
+G53 G1 X-10.5 Y220 F50000
+G53 G1 X-10.5 Y242 F5000
+
+;Open Coupler
+M98 P"/macros/Coupler - Unlock"
+
+;fan off
+M106 P2 S0
+
+;Move Out
+G53 G1 X-10.5 Y175 F50000
diff --git a/rrf3.x/sys/tfree1.g b/rrf3.x/sys/tfree1.g
new file mode 100644
index 0000000..cb2037b
--- /dev/null
+++ b/rrf3.x/sys/tfree1.g
@@ -0,0 +1,26 @@
+; tfree1.g
+; called when tool 1 is freed
+
+;Drop the bed
+G91
+G1 Z4 F1000
+G90
+
+;Purge nozzle
+;M98 P"purge.g"
+
+;Move In
+G53 G1 X79.5 Y150 F50000
+G53 G1 X79.5 Y200 F50000
+G53 G1 X79.5 Y220 F50000
+G53 G1 X79.5 Y242 F5000
+
+;Open Coupler
+M98 P"/macros/Coupler - Unlock"
+
+;fan off
+M106 P4 S0
+
+;Move Out
+G53 G1 X79.5 Y175 F50000
+
diff --git a/rrf3.x/sys/tfree2.g b/rrf3.x/sys/tfree2.g
new file mode 100644
index 0000000..588f0d5
--- /dev/null
+++ b/rrf3.x/sys/tfree2.g
@@ -0,0 +1,26 @@
+; tfree2.g
+; called when tool 2 is freed
+
+;Drop the bed
+G91
+G1 Z4 F1000
+G90
+
+;Purge nozzle
+;M98 P"purge.g"
+
+;Move In
+G53 G1 X214.5 Y150 F50000
+G53 G1 X214.5 Y200 F50000
+G53 G1 X214.5 Y220 F50000
+G53 G1 X214.5 Y243 F5000
+
+;Open Coupler
+M98 P/macros/Coupler - Unlock
+
+;fan off
+M106 P6 S0
+
+;Move Out
+G53 G1 X214.5 Y175 F50000
+
diff --git a/rrf3.x/sys/tfree3.g b/rrf3.x/sys/tfree3.g
new file mode 100644
index 0000000..b951dbe
--- /dev/null
+++ b/rrf3.x/sys/tfree3.g
@@ -0,0 +1,26 @@
+; tfree3.g
+; called when tool 3 is freed
+
+;Drop the bed
+G91
+G1 Z4 F1000
+G90
+
+;Purge nozzle
+;M98 P"purge.g"
+
+;Move In
+G53 G1 X304.5 Y150 F50000
+G53 G1 X304.5 Y200 F50000
+G53 G1 X304.5 Y220 F50000
+G53 G1 X304.5 Y243 F5000
+
+;Open Coupler
+M98 P"/macros/Coupler - Unlock"
+
+;fan off
+M106 P8 S0
+
+;Move Out
+G53 G1 X304.5 Y175 F50000
+
diff --git a/rrf3.x/sys/tpost0.g b/rrf3.x/sys/tpost0.g
new file mode 100644
index 0000000..a1a9888
--- /dev/null
+++ b/rrf3.x/sys/tpost0.g
@@ -0,0 +1,10 @@
+; tpost0.g
+; called after tool 0 has been selected
+
+;heatup
+M116 P0
+
+;prime nozzle
+;M98 P"prime.g"
+
+M106 R1	; restore print cooling fan speed
\ No newline at end of file
diff --git a/rrf3.x/sys/tpost1.g b/rrf3.x/sys/tpost1.g
new file mode 100644
index 0000000..6986d1f
--- /dev/null
+++ b/rrf3.x/sys/tpost1.g
@@ -0,0 +1,10 @@
+; tpost1.g
+; called after tool 1 has been selected
+
+;heatup
+M116 P1
+
+;prime nozzle
+;M98 P"prime.g"
+
+M106 R1	; restore print cooling fan speed
\ No newline at end of file
diff --git a/rrf3.x/sys/tpost2.g b/rrf3.x/sys/tpost2.g
new file mode 100644
index 0000000..d363043
--- /dev/null
+++ b/rrf3.x/sys/tpost2.g
@@ -0,0 +1,10 @@
+; tpost2.g
+; called after tool 2 has been selected
+
+;heatup
+M116 P2
+
+;prime nozzle
+;M98 P"prime.g"
+
+M106 R1	; restore print cooling fan speed
\ No newline at end of file
diff --git a/rrf3.x/sys/tpost3.g b/rrf3.x/sys/tpost3.g
new file mode 100644
index 0000000..4518723
--- /dev/null
+++ b/rrf3.x/sys/tpost3.g
@@ -0,0 +1,10 @@
+; tpost3.g
+; called after tool 3 has been selected
+
+;heatup
+M116 P3
+
+;prime nozzle
+;M98 P"prime.g"
+
+M106 R1	; restore print cooling fan speed
\ No newline at end of file
diff --git a/rrf3.x/sys/tpre0.g b/rrf3.x/sys/tpre0.g
new file mode 100644
index 0000000..ddcc060
--- /dev/null
+++ b/rrf3.x/sys/tpre0.g
@@ -0,0 +1,28 @@
+; tpre0.g
+; called before tool 0 is selected
+
+;Unlock Coupler
+M98 P"/macros/Coupler - Unlock"
+
+;Move to location
+G1 X-10.5 Y200 F50000
+
+;Move in
+G1 X-10.5 Y230 F50000
+
+;Collect
+G1 X-10.5 Y242 F2500
+
+;Close Coupler
+M98 P"/macros/Coupler - Lock"
+
+;WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING!
+;if you are using non-standard length hotends ensure the bed is lowered enough BEFORE undocking the tool!
+G91
+G1 Z10 F1000
+G90
+
+;Move Out
+G1 X-10.5 Y150 F4000
+
+
diff --git a/rrf3.x/sys/tpre1.g b/rrf3.x/sys/tpre1.g
new file mode 100644
index 0000000..ec74f96
--- /dev/null
+++ b/rrf3.x/sys/tpre1.g
@@ -0,0 +1,26 @@
+; tpre1.g
+; called before tool 1 is selected
+
+;Unlock Coupler
+M98 P"/macros/Coupler - Unlock"
+
+;Move to location
+G1 X79.5 Y200 F50000
+
+;Move in
+G1 X79.5 Y230 F50000
+
+;Collect
+G1 X79.5 Y242 F2500
+
+;Close Coupler
+M98 P"/macros/Coupler - Lock"
+
+;WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING!
+;if you are using non-standard length hotends ensure the bed is lowered enough BEFORE undocking the tool!
+G91
+G1 Z10 F1000
+G90
+
+;Move Out
+G1 X79.5 Y150 F4000
diff --git a/rrf3.x/sys/tpre2.g b/rrf3.x/sys/tpre2.g
new file mode 100644
index 0000000..3318998
--- /dev/null
+++ b/rrf3.x/sys/tpre2.g
@@ -0,0 +1,26 @@
+; tpre2.g
+; called before tool 2 is selected
+
+;Unlock Coupler
+M98 P"/macros/Coupler - Unlock"
+
+;Move to location
+G1 X214.5 Y200 F50000
+
+;Move in
+G1 X214.5 Y230 F50000
+
+;Collect
+G1 X214.5 Y243 F2500
+
+;Close Coupler
+M98 P"/macros/Coupler - Lock"
+
+;WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING!
+;if you are using non-standard length hotends ensure the bed is lowered enough BEFORE undocking the tool!
+G91
+G1 Z10 F1000
+G90
+
+;Move Out
+G1 X214.5 Y150 F4000
diff --git a/rrf3.x/sys/tpre3.g b/rrf3.x/sys/tpre3.g
new file mode 100644
index 0000000..b300f24
--- /dev/null
+++ b/rrf3.x/sys/tpre3.g
@@ -0,0 +1,27 @@
+; tpre3.g
+; called before tool 3 is selected
+
+;Unlock Coupler
+M98 P"/macros/Coupler - Unlock"
+
+;Move to location
+G1 X304.5 Y200 F50000
+
+;Move in
+G1 X304.5 Y230 F50000
+
+;Collect
+G1 X304.5 Y243 F2500
+
+;Close Coupler
+M98 P"/macros/Coupler - Lock"
+
+;WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING!
+;if you are using non-standard length hotends ensure the bed is lowered enough BEFORE undocking the tool!
+G91
+G1 Z10 F1000
+G90
+
+;Move Out
+G1 X304.5 Y150 F4000
+
-- 
GitLab