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,
|
||||
bedRound: false,
|
||||
bedBelt: false,
|
||||
fwRetract: false,
|
||||
originCenter: false,
|
||||
maxHeight: 150,
|
||||
gcodePre: [],
|
||||
|
|
|
|||
|
|
@ -740,6 +740,7 @@
|
|||
UI.deviceBelt.checked = dev.bedBelt;
|
||||
UI.deviceRound.checked = dev.bedRound;
|
||||
UI.deviceOrigin.checked = dev.outputOriginCenter || dev.originCenter;
|
||||
UI.fwRetract.checked = dev.fwRetract;
|
||||
|
||||
// add extruder selection buttons
|
||||
if (dev.extruders) {
|
||||
|
|
@ -781,6 +782,7 @@
|
|||
UI.deviceOrigin,
|
||||
UI.deviceRound,
|
||||
UI.deviceBelt,
|
||||
UI.fwRetract,
|
||||
UI.gcodeFan,
|
||||
UI.gcodeTrack,
|
||||
UI.gcodeLayer,
|
||||
|
|
@ -1586,6 +1588,7 @@
|
|||
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}),
|
||||
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}),
|
||||
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.bedRound = UI.deviceRound.checked;
|
||||
settings.device.originCenter = UI.deviceOrigin.checked;
|
||||
settings.device.fwRetract = UI.fwRetract.checked;
|
||||
SDB.setItem('ws-settings', JSON.stringify(settings));
|
||||
API.event.emit('settings.saved', settings);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -348,6 +348,13 @@
|
|||
pos[tok.charAt(0)] = parseFloat(tok.substring(1));
|
||||
});
|
||||
break;
|
||||
case 'G10':
|
||||
console.log('retract');
|
||||
seq.last().retract = true;
|
||||
break;
|
||||
case 'G11':
|
||||
console.log('unretract');
|
||||
break;
|
||||
case 'G0':
|
||||
G0G1(true, line);
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@
|
|||
gcodeLayer = device.gcodeLayer,
|
||||
gcodeTrack = device.gcodeTrack,
|
||||
tool = 0,
|
||||
fwRetract = device.fwRetract,
|
||||
isDanger = settings.controller.danger,
|
||||
isBelt = device.bedBelt,
|
||||
bedType = isBelt ? "belt" : "fixed",
|
||||
|
|
@ -238,7 +239,11 @@
|
|||
return;
|
||||
}
|
||||
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");
|
||||
time += (retDist / retSpeed) * 60 * 2; // retraction time
|
||||
}
|
||||
|
|
@ -440,7 +445,11 @@
|
|||
// when enabled, resume previous Z
|
||||
if (zhop && pos.z != zpos) moveTo({z:zpos}, seekMMM, "z-hop end");
|
||||
// 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;
|
||||
// optional dwell after re-engaging filament to allow pressure to build
|
||||
if (retDwell) dwell(retDwell);
|
||||
|
|
|
|||
|
|
@ -102,6 +102,8 @@ kiri.lang['en-us'] = {
|
|||
dv_bedc_l: "device bed is circular",
|
||||
dv_belt_s: "belt 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_l: "set cooling fan power",
|
||||
dv_prog_s: "progress",
|
||||
|
|
|
|||
Loading…
Reference in a new issue