add support for firmware retractions G10/G11 #fixes #114
This commit is contained in:
parent
341eed54e7
commit
36893a32aa
6 changed files with 25 additions and 2 deletions
|
|
@ -261,6 +261,7 @@
|
||||||
bedHeight: 2.5,
|
bedHeight: 2.5,
|
||||||
bedRound: false,
|
bedRound: false,
|
||||||
bedBelt: false,
|
bedBelt: false,
|
||||||
|
fwRetract: false,
|
||||||
originCenter: false,
|
originCenter: false,
|
||||||
maxHeight: 150,
|
maxHeight: 150,
|
||||||
gcodePre: [],
|
gcodePre: [],
|
||||||
|
|
|
||||||
|
|
@ -740,6 +740,7 @@
|
||||||
UI.deviceBelt.checked = dev.bedBelt;
|
UI.deviceBelt.checked = dev.bedBelt;
|
||||||
UI.deviceRound.checked = dev.bedRound;
|
UI.deviceRound.checked = dev.bedRound;
|
||||||
UI.deviceOrigin.checked = dev.outputOriginCenter || dev.originCenter;
|
UI.deviceOrigin.checked = dev.outputOriginCenter || dev.originCenter;
|
||||||
|
UI.fwRetract.checked = dev.fwRetract;
|
||||||
|
|
||||||
// add extruder selection buttons
|
// add extruder selection buttons
|
||||||
if (dev.extruders) {
|
if (dev.extruders) {
|
||||||
|
|
@ -781,6 +782,7 @@
|
||||||
UI.deviceOrigin,
|
UI.deviceOrigin,
|
||||||
UI.deviceRound,
|
UI.deviceRound,
|
||||||
UI.deviceBelt,
|
UI.deviceBelt,
|
||||||
|
UI.fwRetract,
|
||||||
UI.gcodeFan,
|
UI.gcodeFan,
|
||||||
UI.gcodeTrack,
|
UI.gcodeTrack,
|
||||||
UI.gcodeLayer,
|
UI.gcodeLayer,
|
||||||
|
|
@ -1586,6 +1588,7 @@
|
||||||
deviceOrigin: UC.newBoolean(LANG.dv_orgc_s, onBooleanClick, {title:LANG.dv_orgc_l, modes:FDM_LASER_SLA}),
|
deviceOrigin: UC.newBoolean(LANG.dv_orgc_s, onBooleanClick, {title:LANG.dv_orgc_l, modes:FDM_LASER_SLA}),
|
||||||
deviceRound: UC.newBoolean(LANG.dv_bedc_s, onBooleanClick, {title:LANG.dv_bedc_l, modes:FDM, trigger:true, show:isNotBelt}),
|
deviceRound: UC.newBoolean(LANG.dv_bedc_s, onBooleanClick, {title:LANG.dv_bedc_l, modes:FDM, trigger:true, show:isNotBelt}),
|
||||||
deviceBelt: UC.newBoolean(LANG.dv_belt_s, onBooleanClick, {title:LANG.dv_belt_l, modes:FDM, trigger:true, show:() => !UI.deviceRound.checked}),
|
deviceBelt: UC.newBoolean(LANG.dv_belt_s, onBooleanClick, {title:LANG.dv_belt_l, modes:FDM, trigger:true, show:() => !UI.deviceRound.checked}),
|
||||||
|
fwRetract: UC.newBoolean(LANG.dv_retr_s, onBooleanClick, {title:LANG.dv_retr_l, modes:FDM}),
|
||||||
|
|
||||||
extruder: UC.newGroup(LANG.dv_gr_ext, $('device2'), {group:"dext", inline:true, modes:FDM}),
|
extruder: UC.newGroup(LANG.dv_gr_ext, $('device2'), {group:"dext", inline:true, modes:FDM}),
|
||||||
extFilament: UC.newInput(LANG.dv_fila_s, {title:LANG.dv_fila_l, convert:UC.toFloat, modes:FDM}),
|
extFilament: UC.newInput(LANG.dv_fila_s, {title:LANG.dv_fila_l, convert:UC.toFloat, modes:FDM}),
|
||||||
|
|
|
||||||
|
|
@ -2224,6 +2224,7 @@
|
||||||
settings.device.bedBelt = UI.deviceBelt.checked;
|
settings.device.bedBelt = UI.deviceBelt.checked;
|
||||||
settings.device.bedRound = UI.deviceRound.checked;
|
settings.device.bedRound = UI.deviceRound.checked;
|
||||||
settings.device.originCenter = UI.deviceOrigin.checked;
|
settings.device.originCenter = UI.deviceOrigin.checked;
|
||||||
|
settings.device.fwRetract = UI.fwRetract.checked;
|
||||||
SDB.setItem('ws-settings', JSON.stringify(settings));
|
SDB.setItem('ws-settings', JSON.stringify(settings));
|
||||||
API.event.emit('settings.saved', settings);
|
API.event.emit('settings.saved', settings);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -348,6 +348,13 @@
|
||||||
pos[tok.charAt(0)] = parseFloat(tok.substring(1));
|
pos[tok.charAt(0)] = parseFloat(tok.substring(1));
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
|
case 'G10':
|
||||||
|
console.log('retract');
|
||||||
|
seq.last().retract = true;
|
||||||
|
break;
|
||||||
|
case 'G11':
|
||||||
|
console.log('unretract');
|
||||||
|
break;
|
||||||
case 'G0':
|
case 'G0':
|
||||||
G0G1(true, line);
|
G0G1(true, line);
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@
|
||||||
gcodeLayer = device.gcodeLayer,
|
gcodeLayer = device.gcodeLayer,
|
||||||
gcodeTrack = device.gcodeTrack,
|
gcodeTrack = device.gcodeTrack,
|
||||||
tool = 0,
|
tool = 0,
|
||||||
|
fwRetract = device.fwRetract,
|
||||||
isDanger = settings.controller.danger,
|
isDanger = settings.controller.danger,
|
||||||
isBelt = device.bedBelt,
|
isBelt = device.bedBelt,
|
||||||
bedType = isBelt ? "belt" : "fixed",
|
bedType = isBelt ? "belt" : "fixed",
|
||||||
|
|
@ -238,7 +239,11 @@
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
retracted = retDist;
|
retracted = retDist;
|
||||||
moveTo({e:-retracted}, retSpeed, `e-retract ${retDist}`);
|
if (fwRetract) {
|
||||||
|
append('G10');
|
||||||
|
} else {
|
||||||
|
moveTo({e:-retracted}, retSpeed, `e-retract ${retDist}`);
|
||||||
|
}
|
||||||
if (zhop) moveTo({z:zpos + zhop}, seekMMM, "z-hop start");
|
if (zhop) moveTo({z:zpos + zhop}, seekMMM, "z-hop start");
|
||||||
time += (retDist / retSpeed) * 60 * 2; // retraction time
|
time += (retDist / retSpeed) * 60 * 2; // retraction time
|
||||||
}
|
}
|
||||||
|
|
@ -440,7 +445,11 @@
|
||||||
// when enabled, resume previous Z
|
// when enabled, resume previous Z
|
||||||
if (zhop && pos.z != zpos) moveTo({z:zpos}, seekMMM, "z-hop end");
|
if (zhop && pos.z != zpos) moveTo({z:zpos}, seekMMM, "z-hop end");
|
||||||
// re-engage retracted filament
|
// re-engage retracted filament
|
||||||
moveTo({e:retracted}, retSpeed, `e-engage ${retracted}`);
|
if (fwRetract) {
|
||||||
|
append('G11');
|
||||||
|
} else {
|
||||||
|
moveTo({e:retracted}, retSpeed, `e-engage ${retracted}`);
|
||||||
|
}
|
||||||
retracted = 0;
|
retracted = 0;
|
||||||
// optional dwell after re-engaging filament to allow pressure to build
|
// optional dwell after re-engaging filament to allow pressure to build
|
||||||
if (retDwell) dwell(retDwell);
|
if (retDwell) dwell(retDwell);
|
||||||
|
|
|
||||||
|
|
@ -102,6 +102,8 @@ kiri.lang['en-us'] = {
|
||||||
dv_bedc_l: "device bed is circular",
|
dv_bedc_l: "device bed is circular",
|
||||||
dv_belt_s: "belt bed",
|
dv_belt_s: "belt bed",
|
||||||
dv_belt_l: "continuous printing bed",
|
dv_belt_l: "continuous printing bed",
|
||||||
|
dv_retr_s: "firmware retract",
|
||||||
|
dv_retr_l: ["device fimware supports G10/G11"],
|
||||||
dv_fanp_s: "fan power",
|
dv_fanp_s: "fan power",
|
||||||
dv_fanp_l: "set cooling fan power",
|
dv_fanp_l: "set cooling fan power",
|
||||||
dv_prog_s: "progress",
|
dv_prog_s: "progress",
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue