add prusa MK3S profile
This commit is contained in:
parent
5822cddedf
commit
965f5a1041
4 changed files with 194 additions and 8 deletions
1
app.js
1
app.js
|
|
@ -367,6 +367,7 @@ function initModule(mod, file, dir) {
|
||||||
addCORS: addCorsHeaders,
|
addCORS: addCorsHeaders,
|
||||||
redirect: http.redirect,
|
redirect: http.redirect,
|
||||||
reply404: http.reply404,
|
reply404: http.reply404,
|
||||||
|
decodePost: http.decodePost,
|
||||||
reply: quickReply
|
reply: quickReply
|
||||||
},
|
},
|
||||||
ws: {
|
ws: {
|
||||||
|
|
|
||||||
179
src/kiri-dev/fdm/Prusa.i3.MK3S+
Normal file
179
src/kiri-dev/fdm/Prusa.i3.MK3S+
Normal file
|
|
@ -0,0 +1,179 @@
|
||||||
|
{
|
||||||
|
"noclone": false,
|
||||||
|
"mode": "FDM",
|
||||||
|
"internal": 0,
|
||||||
|
"imageURL": "",
|
||||||
|
"imageScale": 0.75,
|
||||||
|
"imageAnchor": 0,
|
||||||
|
"bedHeight": 2.5,
|
||||||
|
"bedWidth": 250,
|
||||||
|
"bedDepth": 210,
|
||||||
|
"bedRound": false,
|
||||||
|
"bedBelt": false,
|
||||||
|
"resolutionX": 1600,
|
||||||
|
"resolutionY": 900,
|
||||||
|
"deviceZMax": 0,
|
||||||
|
"maxHeight": 210,
|
||||||
|
"originCenter": false,
|
||||||
|
"extrudeAbs": false,
|
||||||
|
"spindleMax": 0,
|
||||||
|
"gcodeFan": [
|
||||||
|
"M106 S{fan_speed}"
|
||||||
|
],
|
||||||
|
"gcodeTrack": [
|
||||||
|
"M73 P{progress}"
|
||||||
|
],
|
||||||
|
"gcodeLayer": [
|
||||||
|
";; LAYER {layer} of {layers}",
|
||||||
|
"M117 Layer {layer} of {layers}"
|
||||||
|
],
|
||||||
|
"gcodePre": [
|
||||||
|
"M104 S160 ; set extruder temp",
|
||||||
|
"M140 S{bed_temp} ; set bed temp",
|
||||||
|
"M190 S{bed_temp} ; wait for bed temp",
|
||||||
|
"G28 W ; home all without mesh bed level",
|
||||||
|
"G80 ; mesh bed leveling",
|
||||||
|
"G90 ; set absolute positioning mode",
|
||||||
|
"M83 ; set relative positioning for extruder",
|
||||||
|
"M900 K0.04 ; linear advance",
|
||||||
|
"G1 F1000 ; set feedrate",
|
||||||
|
"G1 Y-3.0 Z0.5 ; park outside print area",
|
||||||
|
"M104 S{temp} ; set extruder actual required temp",
|
||||||
|
"M109 S{temp} ; wait for extruder actual required temp",
|
||||||
|
"G1 X60.0 E9.0 ; purge line",
|
||||||
|
"G1 X100.0 E12.5 ; purge line",
|
||||||
|
"M117 Printing"
|
||||||
|
],
|
||||||
|
"gcodePost": [
|
||||||
|
"G0 E-1 F900 ; retract slightly",
|
||||||
|
"M104 S0 ; turn off nozzle heat",
|
||||||
|
"M140 S0 ; turn off bed heat",
|
||||||
|
"M107 ; turn off fan",
|
||||||
|
"G0 F3000 ; set feedrate",
|
||||||
|
"G0 Y210 Z210 ; serve up print",
|
||||||
|
"G4 ; wait",
|
||||||
|
"M84 ; disable steppers",
|
||||||
|
"M117 Print Done"
|
||||||
|
],
|
||||||
|
"gcodeProc": "",
|
||||||
|
"gcodeDwell": [],
|
||||||
|
"gcodeSpindle": [],
|
||||||
|
"gcodeChange": [],
|
||||||
|
"gcodeFExt": "gcode",
|
||||||
|
"gcodeSpace": true,
|
||||||
|
"gcodeStrip": false,
|
||||||
|
"gcodeLaserOn": [],
|
||||||
|
"gcodeLaserOff": [],
|
||||||
|
"extruders": [
|
||||||
|
{
|
||||||
|
"extFilament": 1.75,
|
||||||
|
"extNozzle": 0.4,
|
||||||
|
"extSelect": [
|
||||||
|
"T0"
|
||||||
|
],
|
||||||
|
"extDeselect": [],
|
||||||
|
"extOffsetX": 0,
|
||||||
|
"extOffsetY": 0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"new": false,
|
||||||
|
"deviceName": "Prusa i3 MK3S+",
|
||||||
|
"fwRetract": false,
|
||||||
|
"extras": {
|
||||||
|
"palette": {
|
||||||
|
"printer": "3612e108c25c",
|
||||||
|
"ping": null,
|
||||||
|
"feed": null,
|
||||||
|
"push": null,
|
||||||
|
"offset": null,
|
||||||
|
"heat": null,
|
||||||
|
"cool": null,
|
||||||
|
"press": null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"profiles": [
|
||||||
|
{
|
||||||
|
"processName": "MK3S+ PLA",
|
||||||
|
"sliceHeight": 0.2,
|
||||||
|
"sliceShells": 3,
|
||||||
|
"sliceShellOrder": "in-out",
|
||||||
|
"sliceLayerStart": "center",
|
||||||
|
"sliceFillAngle": 45,
|
||||||
|
"sliceFillOverlap": 0.35,
|
||||||
|
"sliceFillSparse": 0.1,
|
||||||
|
"sliceFillType": "hex",
|
||||||
|
"sliceAdaptive": false,
|
||||||
|
"sliceMinHeight": 0,
|
||||||
|
"sliceSupportDensity": 0.25,
|
||||||
|
"sliceSupportOffset": 0.4,
|
||||||
|
"sliceSupportGap": 0,
|
||||||
|
"sliceSupportSize": 6,
|
||||||
|
"sliceSupportArea": 0.25,
|
||||||
|
"sliceSupportExtra": 0,
|
||||||
|
"sliceSupportAngle": 1,
|
||||||
|
"sliceSupportNozzle": 0,
|
||||||
|
"sliceSolidMinArea": 5,
|
||||||
|
"sliceSolidLayers": 2,
|
||||||
|
"sliceBottomLayers": 2,
|
||||||
|
"sliceTopLayers": 3,
|
||||||
|
"firstLayerRate": 10,
|
||||||
|
"firstLayerPrintMult": 1,
|
||||||
|
"firstLayerYOffset": 0,
|
||||||
|
"firstLayerBrim": 0,
|
||||||
|
"firstLayerBeltLead": 200,
|
||||||
|
"firstLayerFanSpeed": 0,
|
||||||
|
"outputTemp": 205,
|
||||||
|
"outputBedTemp": 70,
|
||||||
|
"outputFanSpeed": 255,
|
||||||
|
"outputFeedrate": 80,
|
||||||
|
"outputFinishrate": 30,
|
||||||
|
"outputSeekrate": 150,
|
||||||
|
"outputShellMult": 1,
|
||||||
|
"outputFillMult": 1.1,
|
||||||
|
"outputSparseMult": 1.1,
|
||||||
|
"outputRetractDist": 4,
|
||||||
|
"outputRetractSpeed": 60,
|
||||||
|
"outputRetractWipe": 2,
|
||||||
|
"outputRetractDwell": 0,
|
||||||
|
"outputShortPoly": 50,
|
||||||
|
"outputMinSpeed": 1,
|
||||||
|
"outputCoastDist": 0.05,
|
||||||
|
"outputLayerRetract": false,
|
||||||
|
"zHopDistance": 0.1,
|
||||||
|
"antiBacklash": 0,
|
||||||
|
"outputOriginCenter": false,
|
||||||
|
"sliceFillWidth": 1,
|
||||||
|
"sliceFillRate": 0,
|
||||||
|
"sliceSupportEnable": false,
|
||||||
|
"firstSliceHeight": 0.2,
|
||||||
|
"firstLayerFillRate": 35,
|
||||||
|
"firstLayerLineMult": 1,
|
||||||
|
"firstLayerNozzleTemp": 0,
|
||||||
|
"firstLayerBedTemp": 0,
|
||||||
|
"firstLayerBrimTrig": 0,
|
||||||
|
"firstLayerBrimGap": 0,
|
||||||
|
"outputRaft": false,
|
||||||
|
"outputRaftSpacing": 0.2,
|
||||||
|
"outputBrimCount": 0,
|
||||||
|
"outputBrimOffset": 2,
|
||||||
|
"outputPurgeTower": 0,
|
||||||
|
"outputInvertX": false,
|
||||||
|
"outputInvertY": false,
|
||||||
|
"arcTolerance": 0,
|
||||||
|
"ranges": [],
|
||||||
|
"outputLoops": 0,
|
||||||
|
"firstLayerBrimIn": 0,
|
||||||
|
"firstLayerBeltBump": 0,
|
||||||
|
"outputBeltFirst": false,
|
||||||
|
"sliceFillRepeat": 4,
|
||||||
|
"sliceLineWidth": 0,
|
||||||
|
"sliceSupportSpan": 5,
|
||||||
|
"sliceSupportOutline": true,
|
||||||
|
"firstLayerFlatten": 0,
|
||||||
|
"outputDraftShield": false,
|
||||||
|
"outputAvoidGaps": true,
|
||||||
|
"sliceDetectThin": "off",
|
||||||
|
"beltAnchor": 200
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -1034,15 +1034,16 @@ gapp.register("kiri.init", [], (root, exports) => {
|
||||||
removeLocalDevice(getSelectedDevice());
|
removeLocalDevice(getSelectedDevice());
|
||||||
showDevices();
|
showDevices();
|
||||||
};
|
};
|
||||||
ui.deviceExport.onclick = function() {
|
ui.deviceExport.onclick = function(event) {
|
||||||
let exp = api.util.b64enc({
|
const record = {
|
||||||
version: kiri.version,
|
version: kiri.version,
|
||||||
device: selected,
|
device: selected,
|
||||||
process: api.process.code(),
|
process: api.process.code(),
|
||||||
code: devs[selected],
|
code: devs[selected],
|
||||||
time: Date.now()
|
time: Date.now()
|
||||||
});
|
};
|
||||||
deviceExport(exp, selected);
|
let exp = api.util.b64enc(record);
|
||||||
|
api.device.export(exp, selected, { event, record });
|
||||||
};
|
};
|
||||||
|
|
||||||
ui.deviceList.innerHTML = '';
|
ui.deviceList.innerHTML = '';
|
||||||
|
|
@ -1514,6 +1515,9 @@ gapp.register("kiri.init", [], (root, exports) => {
|
||||||
space.platform.setRound(true);
|
space.platform.setRound(true);
|
||||||
space.useDefaultKeys(api.feature.on_key === undefined || api.feature.on_key_defaults);
|
space.useDefaultKeys(api.feature.on_key === undefined || api.feature.on_key_defaults);
|
||||||
|
|
||||||
|
// api augmentation with local functions
|
||||||
|
api.device.export = deviceExport;
|
||||||
|
|
||||||
Object.assign(ui, {
|
Object.assign(ui, {
|
||||||
tracker: tracker,
|
tracker: tracker,
|
||||||
container: container,
|
container: container,
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@
|
||||||
// dep: kiri.api
|
// dep: kiri.api
|
||||||
gapp.register("kiri.tools", [], (root, exports) => {
|
gapp.register("kiri.tools", [], (root, exports) => {
|
||||||
|
|
||||||
|
const { Vector3, Quaternion } = THREE;
|
||||||
const { kiri } = root;
|
const { kiri } = root;
|
||||||
const { api } = kiri;
|
const { api } = kiri;
|
||||||
|
|
||||||
|
|
@ -11,6 +12,7 @@ const { api } = kiri;
|
||||||
let pgeo = new THREE.CircleGeometry(8, 30);
|
let pgeo = new THREE.CircleGeometry(8, 30);
|
||||||
let pmat = new THREE.MeshBasicMaterial({color: 0xff0000, opacity: 0.5, transparent: true});
|
let pmat = new THREE.MeshBasicMaterial({color: 0xff0000, opacity: 0.5, transparent: true});
|
||||||
let pmesh = new THREE.Mesh(pgeo, pmat);
|
let pmesh = new THREE.Mesh(pgeo, pmat);
|
||||||
|
|
||||||
// circle outline
|
// circle outline
|
||||||
let pi = pgeo.index.array;
|
let pi = pgeo.index.array;
|
||||||
let pp = pgeo.attributes.position.array;
|
let pp = pgeo.attributes.position.array;
|
||||||
|
|
@ -88,9 +90,9 @@ api.event.on('mouse.hover', (ev) => {
|
||||||
pmesh.position.x = point.x - opos.x + norm.x * 0.1;
|
pmesh.position.x = point.x - opos.x + norm.x * 0.1;
|
||||||
pmesh.position.y = -point.z - opos.y + norm.y * 0.1;
|
pmesh.position.y = -point.z - opos.y + norm.y * 0.1;
|
||||||
pmesh.position.z = point.y + norm.z * 0.1;
|
pmesh.position.z = point.y + norm.z * 0.1;
|
||||||
let q = new THREE.Quaternion().setFromUnitVectors(
|
let q = new Quaternion().setFromUnitVectors(
|
||||||
new THREE.Vector3(0,0,1),
|
new Vector3(0,0,1),
|
||||||
new THREE.Vector3(norm.x,norm.y,norm.z)
|
new Vector3(norm.x,norm.y,norm.z)
|
||||||
);
|
);
|
||||||
pmesh.setRotationFromQuaternion(q);
|
pmesh.setRotationFromQuaternion(q);
|
||||||
}
|
}
|
||||||
|
|
@ -104,7 +106,7 @@ api.event.on('mouse.hover.up', (ev) => {
|
||||||
if (!object) {
|
if (!object) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
let q = new THREE.Quaternion().setFromUnitVectors(lastface.normal, new THREE.Vector3(0,0,-1));
|
let q = new Quaternion().setFromUnitVectors(lastface.normal, new Vector3(0,0,-1));
|
||||||
api.selection.rotate(q);
|
api.selection.rotate(q);
|
||||||
endit();
|
endit();
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue