diff --git a/src/Intro.tsx b/src/Intro.tsx
index 1a068bd..34edb57 100644
--- a/src/Intro.tsx
+++ b/src/Intro.tsx
@@ -9,7 +9,6 @@ export const Intro: FunctionComponent = () => {
return (
-
Hello!
This tool can generate sweet calibration towers for
@@ -32,9 +31,7 @@ export const Intro: FunctionComponent = () => {
Slicer Setup
- We need to be able to figure out when a new layer starts and when the
- print is over. You'll need to make a couple of changes to your slicer to
- get going.
+ You'll need to make a couple of changes to your slicer to get going.
Layer Change
@@ -47,9 +44,8 @@ export const Intro: FunctionComponent = () => {
;LAYER:[layer_num]
- Using something else? Something like the line above
- needs to appear after every layer change with the new layer number,
- starting from zero.
+ Using something else? The line above needs to appear
+ after every layer change with the new layer number, starting from zero.
Print End
@@ -68,9 +64,48 @@ export const Intro: FunctionComponent = () => {
;PRINT_END
- Using something else? Something like the line above
- needs to appear just as the print is about to end, before any actions
- like homing or turning off fans.
+ Using something else? The line above needs to appear
+ just as the print is about to end, before any actions like homing or
+ turning off fans.
+
+
Retraction
+
+ Using Cura?
+
+ -
+ Uncheck Relative Extrusion.
+
+ -
+ Uncheck Enable Coasting.
+
+ -
+ Set Outer Wall Wipe Distance to 0.
+
+ -
+ Set Infill Wipe Distance to 0.
+
+
+
+
+ Using PrusaSlicer or Slic3r?
+
+ -
+ Enable Expert settings mode.
+
+ -
+ Under Printer Settings ➤ General, check{" "}
+ use relative E distances.
+
+ -
+ Under Printer Settings ➤ Extruder 1, uncheck{" "}
+ Wipe while retracting.
+
+
+
+
+ Using something else? You must enable{" "}
+ relative extrusion and disable any{" "}
+ coasting or wiping moves.
);
diff --git a/src/gcode/__tests__/processor.ts b/src/gcode/__tests__/processor.ts
index 45a4ce5..26980c3 100644
--- a/src/gcode/__tests__/processor.ts
+++ b/src/gcode/__tests__/processor.ts
@@ -111,7 +111,6 @@ describe("GCodeProcessor", () => {
);
const lines = processor.process(mockFile);
- console.log(lines);
expect(lines).toEqual([
";LAYER:0",
";LAYER:1",
diff --git a/src/gcode/transformers/__tests__/retract.ts b/src/gcode/transformers/__tests__/retract.ts
index 2d64b45..9eddf16 100644
--- a/src/gcode/transformers/__tests__/retract.ts
+++ b/src/gcode/transformers/__tests__/retract.ts
@@ -28,7 +28,7 @@ describe("retract distance", () => {
expect(transformer.onLayer(location)).toBeInstanceOf(TransformerActionNoOp);
});
- it("replaces retraction", () => {
+ it("replaces retraction in either order", () => {
const transformer = new RetractTransformer({
distanceRange: { start: 1, step: 0.25, stop: 5 },
});
@@ -37,7 +37,7 @@ describe("retract distance", () => {
transformer.onLine("M82", location);
const actionBack = transformer.onLine("G1 E-69.69 F420", location);
- const actionForward = transformer.onLine("G1 E69.69 F420", location);
+ const actionForward = transformer.onLine("G1 F420 E69.69", location);
expect(actionBack).toBeInstanceOf(TransformerActionReplace);
expect((actionBack as TransformerActionReplace).lines).toMatchObject([
diff --git a/src/gcode/transformers/retract.ts b/src/gcode/transformers/retract.ts
index f933689..7ea90ee 100644
--- a/src/gcode/transformers/retract.ts
+++ b/src/gcode/transformers/retract.ts
@@ -34,7 +34,7 @@ export class RetractTransformer extends GCodeTransformer {
this.speedRange = opts.speedRange;
this.retractRegex = opts.retractRegex
? opts.retractRegex
- : /G(0|1) E(?