<?xml version="1.0"?>
<PrintDeviceCapabilities
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:psk="http://schemas.microsoft.com/windows/2003/08/printing/printschemakeywords"
    xmlns:psk3d="http://schemas.microsoft.com/3dmanufacturing/2013/01/pskeywords3d"
    xmlns:psk3dx="http://schemas.microsoft.com/3dmanufacturing/2014/11/pskeywords3dextended"
    xmlns:pskv="http://schemas.microsoft.com/3dmanufacturing/2014/11/pskeywordsvendor"
    xmlns:psf="http://schemas.microsoft.com/windows/2003/08/printing/printschemaframework"
    xmlns:psf2="http://schemas.microsoft.com/windows/2013/12/printing/printschemaframework2"
    xmlns="http://schemas.microsoft.com/windows/2013/12/printing/printschemaframework2"
    version="2">
  <!-- Dremel Idea Builder 3D printer capabilities 5/05/2015 mischero@microsoft.com-->
  <CapabilitiesChangeID xsi:type="xsd:string">{9F58AF07-DCB6-4865-8CA3-A52EA5DCB05F}</CapabilitiesChangeID>

  <psk3d:Job3DOutputArea psf2:psftype="Property">
    <psk3d:Job3DOutputAreaWidth>220000</psk3d:Job3DOutputAreaWidth>
    <psk3d:Job3DOutputAreaDepth>150000</psk3d:Job3DOutputAreaDepth>
    <psk3d:Job3DOutputAreaHeight>141000</psk3d:Job3DOutputAreaHeight>
  </psk3d:Job3DOutputArea>

  <psk3d:Job3DMaterials psf2:psftype="Property">

    <!-- The current driver will use the last material in this list -->
    <psk3d:GenericPLA>
      <psk:DisplayName>White PLA</psk:DisplayName>
      <psk3d:Job3DMaterialType>psk3d:PLA</psk3d:Job3DMaterialType>
      <psk3d:MaterialColor>#FFFFFFFF</psk3d:MaterialColor>

      <psk3dx:platformtemperature>0</psk3dx:platformtemperature>
      <psk3dx:filamentdiameter>1750</psk3dx:filamentdiameter>
      <psk3dx:filamentcalibrationoverride>1.0</psk3dx:filamentcalibrationoverride>
      <psk3dx:extrudertemperature>207</psk3dx:extrudertemperature>
      <psk3dx:autocenter>0</psk3dx:autocenter>
    </psk3d:GenericPLA>
  </psk3d:Job3DMaterials>

  <psk3dx:customStatus>Slicing</psk3dx:customStatus>
  <psk3dx:userprompt>Confirm the 3D printer is calibrated and ready for the next print.</psk3dx:userprompt>
  <psk3dx:MS3DPrinter>
    <psk3dx:customcommands>
      <psk3dx:precommands>
        <psk3dx:command>; Start Dremel Precommands Updated 2015-06-04</psk3dx:command>
        <psk3dx:command>M104 S$extrudertemperature$ T0</psk3dx:command>
        <psk3dx:command>M140 S$platformtemperature$</psk3dx:command>
        <psk3dx:command>G90</psk3dx:command>
        <psk3dx:command>G28</psk3dx:command>
        <psk3dx:command>M132 X Y Z A B </psk3dx:command>
        <psk3dx:command>G1 Z100 F3300 </psk3dx:command>
        <psk3dx:command>G1 X-110.5 Y-74 F6000 </psk3dx:command>
        <psk3dx:command>M6 T0</psk3dx:command>
        <psk3dx:command>M106</psk3dx:command>
        <psk3dx:command>M907 X100 Y100 Z40 A80</psk3dx:command>
        <psk3dx:command>G1 Z0.6 F3300 </psk3dx:command>
        <psk3dx:command>G4 P2000</psk3dx:command>
        <psk3dx:command>G92 E0</psk3dx:command>
        <psk3dx:command>; Clean Nozzle</psk3dx:command>
        <psk3dx:command>G1 X-112.0 Y-20.0 Z5.0 F3000</psk3dx:command>
        <psk3dx:command>G1 Y-68.0 Z0.3</psk3dx:command>
        <psk3dx:command>G1 X-112.0 Y75.0 F500 E20</psk3dx:command>
        <psk3dx:command>G1 E18 F3000</psk3dx:command>
        <psk3dx:command>G92 E0</psk3dx:command>
        <psk3dx:command>; Reset the Center</psk3dx:command>
        <psk3dx:command>G1 X0 Y0 F15000</psk3dx:command>
        <psk3dx:command>G92 X110.0 Y75.0</psk3dx:command>
        <psk3dx:command>G1 E2</psk3dx:command>
        <psk3dx:command>G92 E0</psk3dx:command>
        <psk3dx:command>; End Dremel/FlashForge Precommands</psk3dx:command>

      </psk3dx:precommands>
      <psk3dx:postcommands>
        <psk3dx:command>; Start Dremel/FlashForge Postcommands</psk3dx:command>
        <psk3dx:command>M107</psk3dx:command>
        <psk3dx:command>M104 S0 T0</psk3dx:command>
        <psk3dx:command>GG1 Z140 F3300 </psk3dx:command>
        <psk3dx:command>G28 X0 Y0 </psk3dx:command>
        <psk3dx:command>M132 X Y Z A B </psk3dx:command>
        <psk3dx:command>G91</psk3dx:command>
        <psk3dx:command>M18</psk3dx:command>
        <psk3dx:command>; End Dremel/FlashForge Postcommands</psk3dx:command>
      </psk3dx:postcommands>
    </psk3dx:customcommands>
    <psk3dx:print>
      <psk3dx:medium default="true">
        <!-- model parameters -->
        <psk3dx:layerthickness>250</psk3dx:layerthickness>
        <!-- layer thickness (micron) -->
        <psk3dx:maxlayerthickness>500</psk3dx:maxlayerthickness>
        <!-- maximum  layer thickness (micron) -->
        <psk3dx:minlayerthickness>100</psk3dx:minlayerthickness>
        <!-- minimum layer thickness (micron) -->
        <psk3dx:pathwidth>400</psk3dx:pathwidth>
        <!-- path width (micron) -->
        <psk3dx:shells>3</psk3dx:shells>
        <!-- number of perimeters (zero would make the infill visible) -->
        <psk3dx:shelloffset>50</psk3dx:shelloffset>
        <!-- offset of the shells (micron) -->
        <psk3dx:topsurfacelayers>4</psk3dx:topsurfacelayers>
        <!-- number of solid top surface layers -->
        <psk3dx:bottomsurfacelayers>4</psk3dx:bottomsurfacelayers>
        <!-- number of solid bottom surface layers -->
        <psk3dx:fill>0.1</psk3dx:fill>
        <!-- sparse infill fraction (between 0 and 1, inclusive) -->
        <psk3dx:fillangle>45</psk3dx:fillangle>
        <!-- intial fill angle (degrees) -->
        <psk3dx:filloverlap>1.0</psk3dx:filloverlap>
        <!-- infill overlap (between 0 and 1 of the path width, inclusive) -->
        <psk3dx:speed>70000</psk3dx:speed>
        <!-- speed of normal printing movements (micron/s) -->
        <psk3dx:speedouter>40000</psk3dx:speedouter>
        <!-- speed of outer perimeter (micron/s) -->
        <psk3dx:speedfirst>20000</psk3dx:speedfirst>
        <!-- speed of first layer (micron/s), supercedes speedOuter -->
        <psk3dx:speedtravel>120000</psk3dx:speedtravel>
        <!-- speed of non-extrusion moves (micron/s) -->
        <psk3dx:speedretract>30000</psk3dx:speedretract>
        <!-- speed of filament retraction (micron/s) -->
        <psk3dx:retraction>1500</psk3dx:retraction>
        <!-- amount of retraction (micron) -->
        <psk3dx:supportorientationoptimization>0</psk3dx:supportorientationoptimization>
        <!-- Apply the best orientation -->
        <psk3dx:supportoverhangangle>45</psk3dx:supportoverhangangle>
        <!-- The minimum overhang angle to generate support -->
        <psk3dx:supportzgap>350</psk3dx:supportzgap>
        <!-- The Z gap in micron -->
        <psk3dx:supportxygap>400</psk3dx:supportxygap>
        <!-- The XY gap in micron -->
        <psk3dx:supportfill>0.2</psk3dx:supportfill>
        <!-- sparse infill fraction for support (between 0 and 1, inclusive) -->
        <psk3dx:raftlayers>2</psk3dx:raftlayers>
        <!-- number of solid raft layers -->
        <psk3dx:raftlayerthickness>600</psk3dx:raftlayerthickness>
        <!-- layer thickness of the raft (micron) -->
        <psk3dx:raftpathwidth>2000</psk3dx:raftpathwidth>
        <!-- path width of raft (micron) -->
        <psk3dx:raftfill>0.6</psk3dx:raftfill>
        <!-- sparse infill fraction for support (between 0 and 1, inclusive) -->
        <psk3dx:raftoffset>2000</psk3dx:raftoffset>
        <!-- size of the raft (micron) -->
        <psk3dx:raftzgap>350</psk3dx:raftzgap>
        <!-- The Z gap (micron) -->
        <psk3dx:raftspeedfirst>20000</psk3dx:raftspeedfirst>
        <!-- speed of raft first layer (micron/s) -->
        <psk3dx:coolingtime>5</psk3dx:coolingtime>
        <!-- cooling time for a layer (second) -->
        <psk3dx:mincoolingspeed>1000</psk3dx:mincoolingspeed>
        <!-- the minimum cooling speed for a layer (micron/s) -->
        <psk3dx:bridgingspeed>10000</psk3dx:bridgingspeed>
        <!-- the speed for bridging (micron/s) -->
      </psk3dx:medium>
      <psk3dx:high default="false">
        <!-- model parameters -->
        <psk3dx:layerthickness>100</psk3dx:layerthickness>
        <!-- layer thickness (micron) -->
        <psk3dx:maxlayerthickness>500</psk3dx:maxlayerthickness>
        <!-- maximum  layer thickness (micron) -->
        <psk3dx:minlayerthickness>100</psk3dx:minlayerthickness>
        <!-- minimum layer thickness (micron) -->
        <psk3dx:pathwidth>400</psk3dx:pathwidth>
        <!-- path width (micron) -->
        <psk3dx:shells>3</psk3dx:shells>
        <!-- number of perimeters (zero would make the infill visible) -->
        <psk3dx:shelloffset>50</psk3dx:shelloffset>
        <!-- offset of the shells (micron) -->
        <psk3dx:topsurfacelayers>4</psk3dx:topsurfacelayers>
        <!-- number of solid top surface layers -->
        <psk3dx:bottomsurfacelayers>4</psk3dx:bottomsurfacelayers>
        <!-- number of solid bottom surface layers -->
        <psk3dx:fill>0.1</psk3dx:fill>
        <!-- sparse infill fraction (between 0 and 1, inclusive) -->
        <psk3dx:fillangle>45</psk3dx:fillangle>
        <!-- intial fill angle (degrees) -->
        <psk3dx:filloverlap>1.0</psk3dx:filloverlap>
        <!-- infill overlap (between 0 and 1 of the path width, inclusive) -->
        <psk3dx:speed>70000</psk3dx:speed>
        <!-- speed of normal printing movements (micron/s) -->
        <psk3dx:speedouter>30000</psk3dx:speedouter>
        <!-- speed of outer perimeter (micron/s) -->
        <psk3dx:speedfirst>20000</psk3dx:speedfirst>
        <!-- speed of first layer (micron/s), supercedes speedOuter -->
        <psk3dx:speedtravel>120000</psk3dx:speedtravel>
        <!-- speed of non-extrusion moves (micron/s) -->
        <psk3dx:supportorientationoptimization>0</psk3dx:supportorientationoptimization>
        <!-- Apply the best orientation -->
        <psk3dx:supportoverhangangle>45</psk3dx:supportoverhangangle>
        <!-- The minimum overhang angle to generate support -->
        <psk3dx:supportzgap>350</psk3dx:supportzgap>
        <!-- The Z gap in micron -->
        <psk3dx:supportxygap>400</psk3dx:supportxygap>
        <!-- The XY gap in micron -->
        <psk3dx:supportfill>0.2</psk3dx:supportfill>
        <!-- sparse infill fraction for support (between 0 and 1, inclusive) -->
        <psk3dx:raftlayers>2</psk3dx:raftlayers>
        <!-- number of solid raft layers -->
        <psk3dx:raftlayerthickness>600</psk3dx:raftlayerthickness>
        <!-- layer thickness of the raft (micron) -->
        <psk3dx:raftpathwidth>2000</psk3dx:raftpathwidth>
        <!-- path width of raft (micron) -->
        <psk3dx:raftfill>0.6</psk3dx:raftfill>
        <!-- sparse infill fraction for support (between 0 and 1, inclusive) -->
        <psk3dx:raftoffset>2000</psk3dx:raftoffset>
        <!-- size of the raft (micron) -->
        <psk3dx:raftzgap>350</psk3dx:raftzgap>
        <!-- The Z gap (micron) -->
        <psk3dx:raftspeedfirst>20000</psk3dx:raftspeedfirst>
        <!-- speed of raft first layer (micron/s) -->
        <psk3dx:coolingtime>5</psk3dx:coolingtime>
        <!-- cooling time for a layer (second) -->
        <psk3dx:mincoolingspeed>1000</psk3dx:mincoolingspeed>
        <!-- the minimum cooling speed for a layer (micron/s) -->
        <psk3dx:bridgingspeed>10000</psk3dx:bridgingspeed>
        <!-- the speed for bridging (micron/s) -->
      </psk3dx:high>
      <psk3dx:draft default="false">
        <!-- model parameters -->
        <psk3dx:layerthickness>350</psk3dx:layerthickness>
        <!-- layer thickness (micron) -->
        <psk3dx:maxlayerthickness>500</psk3dx:maxlayerthickness>
        <!-- maximum  layer thickness (micron) -->
        <psk3dx:minlayerthickness>100</psk3dx:minlayerthickness>
        <!-- minimum layer thickness (micron) -->
        <psk3dx:pathwidth>560</psk3dx:pathwidth>
        <!-- path width (micron) -->
        <psk3dx:shells>2</psk3dx:shells>
        <!-- number of perimeters (zero would make the infill visible) -->
        <psk3dx:shelloffset>50</psk3dx:shelloffset>
        <!-- offset of the shells (micron) -->
        <psk3dx:topsurfacelayers>4</psk3dx:topsurfacelayers>
        <!-- number of solid top surface layers -->
        <psk3dx:bottomsurfacelayers>4</psk3dx:bottomsurfacelayers>
        <!-- number of solid bottom surface layers -->
        <psk3dx:fill>0.1</psk3dx:fill>
        <!-- sparse infill fraction (between 0 and 1, inclusive) -->
        <psk3dx:fillangle>45</psk3dx:fillangle>
        <!-- intial fill angle (degrees) -->
        <psk3dx:filloverlap>1.0</psk3dx:filloverlap>
        <!-- infill overlap (between 0 and 1 of the path width, inclusive) -->
        <psk3dx:speed>100000</psk3dx:speed>
        <!-- speed of normal printing movements (micron/s) -->
        <psk3dx:speedouter>75000</psk3dx:speedouter>
        <!-- speed of outer perimeter (micron/s) -->
        <psk3dx:speedfirst>30000</psk3dx:speedfirst>
        <!-- speed of first layer (micron/s), supercedes speedOuter -->
        <psk3dx:speedtravel>150000</psk3dx:speedtravel>
        <!-- speed of non-extrusion moves (micron/s) -->
        <psk3dx:speedretract>40000</psk3dx:speedretract>
        <!-- speed of filament retraction (micron/s) -->
        <psk3dx:retraction>1500</psk3dx:retraction>
        <!-- amount of retraction (micron) -->
        <psk3dx:supportorientationoptimization>0</psk3dx:supportorientationoptimization>
        <!-- Apply the best orientation -->
        <psk3dx:supportoverhangangle>45</psk3dx:supportoverhangangle>
        <!-- The minimum overhang angle to generate support -->
        <psk3dx:supportzgap>500</psk3dx:supportzgap>
        <!-- The Z gap in micron -->
        <psk3dx:supportxygap>450</psk3dx:supportxygap>
        <!-- The XY gap in micron -->
        <psk3dx:supportfill>0.2</psk3dx:supportfill>
        <!-- sparse infill fraction for support (between 0 and 1, inclusive) -->
        <psk3dx:raftlayers>2</psk3dx:raftlayers>
        <!-- number of solid raft layers -->
        <psk3dx:raftlayerthickness>500</psk3dx:raftlayerthickness>
        <!-- layer thickness of the raft (micron) -->
        <psk3dx:raftpathwidth>1500</psk3dx:raftpathwidth>
        <!-- path width of raft (micron) -->
        <psk3dx:raftfill>0.5</psk3dx:raftfill>
        <!-- sparse infill fraction for support (between 0 and 1, inclusive) -->
        <psk3dx:raftoffset>2000</psk3dx:raftoffset>
        <!-- size of the raft (micron) -->
        <psk3dx:raftzgap>400</psk3dx:raftzgap>
        <!-- The Z gap (micron) -->
        <psk3dx:raftspeedfirst>15000</psk3dx:raftspeedfirst>
        <!-- speed of raft first layer (micron/s) -->
        <psk3dx:coolingtime>5</psk3dx:coolingtime>
        <!-- cooling time for a layer (second) -->
        <psk3dx:mincoolingspeed>1000</psk3dx:mincoolingspeed>
        <!-- the minimum cooling speed for a layer (micron/s) -->
        <psk3dx:bridgingspeed>10000</psk3dx:bridgingspeed>
        <!-- the speed for bridging (micron/s) -->
      </psk3dx:draft>
    </psk3dx:print>
  </psk3dx:MS3DPrinter>

</PrintDeviceCapabilities>
