- **Tools**
   - **PCB Exposure:**
      - (Add) Able to choose the size midpoint rounding method (#520)
      - (Fix) Allow to flash alone D03 commands (#520)
      - (Fix) Correct line thickness to have at least 1px error (#523)
   - (Improvement) Layer arithmetic: Use ; to split and start a new arithmetic operation
- (Add) Cmd: Convert command now allow to pass 'auto' as target type to auto convert specific files, valid for SL1 files configured with FILEFORMAT_xxx (#522)
- (Add) GCode: Command to sync and wait for movement completion [Only enabled for cws format] (#514)
- (Add) VDT: Transition layer count
- (Upgrade) AvaloniaUI from 0.10.16 to 0.10.17
This commit is contained in:
Tiago Conceição
2022-07-29 18:10:48 +01:00
parent 315ce3bc0d
commit 0805133048
34 changed files with 1122 additions and 291 deletions
+20
View File
@@ -40,7 +40,10 @@ public class GCodeBuilder : BindableBase
public GCodeCommand CommandMoveG0 { get; } = new("G0", "Z{0} F{1}", "Move Z");
public GCodeCommand CommandMoveG1 { get; } = new("G1", "Z{0} F{1}", "Move Z");
public GCodeCommand CommandSyncMovements { get; } = new("G4", "P0", "Sync movements", false);
public GCodeCommand CommandWaitG4 { get; } = new("G4", "P{0}", "Delay");
public GCodeCommand CommandShowImageM6054 = new("M6054", "\"{0}\"", "Show image");
public GCodeCommand CommandClearImage = new(";<Slice> Blank"); // Clear image
public GCodeCommand CommandTurnLEDM106 { get; } = new("M106", "S{0}", "Turn LED");
@@ -321,6 +324,7 @@ public class GCodeBuilder : BindableBase
AppendLightOffM106();
AppendClearImage();
AppendHomeZG28();
AppendSyncMovements();
AppendLineIfCanComment(EndStartGCodeComments);
AppendLine();
}
@@ -376,6 +380,8 @@ public class GCodeBuilder : BindableBase
var time = ConvertFromSeconds(seconds);
if (seconds > 0) AppendWaitG4($"0{time}", "Sync movement");
}
AppendSyncMovements();
}
}
}
@@ -403,6 +409,7 @@ public class GCodeBuilder : BindableBase
}
}
AppendSyncMovements();
AppendMotorsOff();
AppendLineIfCanComment(EndEndGCodeComments);
}
@@ -450,6 +457,11 @@ public class GCodeBuilder : BindableBase
AppendLine(CommandHomeG28);
}
public void AppendSyncMovements()
{
AppendLine(CommandSyncMovements);
}
public void AppendMoveGx(float z, float feedRate)
{
if(_layerMoveCommand == GCodeMoveCommands.G0)
@@ -490,6 +502,8 @@ public class GCodeBuilder : BindableBase
AppendWaitG4($"0{time}", "Sync movement");
}
AppendSyncMovements();
if (waitAfterLift > 0)
{
AppendWaitG4(waitAfterLift, "Wait after lift");
@@ -510,6 +524,8 @@ public class GCodeBuilder : BindableBase
AppendWaitG4($"0{time}", "Sync movement");
}
AppendSyncMovements();
if (waitAfterRetract > 0)
{
AppendWaitG4(waitAfterRetract, "Wait after retract");
@@ -547,6 +563,8 @@ public class GCodeBuilder : BindableBase
AppendWaitG4($"0{time}", "Sync movement");
}
AppendSyncMovements();
if (waitAfterLift > 0)
{
AppendWaitG4(waitAfterLift, "Wait after lift");
@@ -567,6 +585,8 @@ public class GCodeBuilder : BindableBase
AppendWaitG4($"0{time}", "Sync movement");
}
AppendSyncMovements();
if (waitAfterRetract > 0)
{
AppendWaitG4(waitAfterRetract, "Wait after retract");