kopia lustrzana https://github.com/OpenBuilds/OpenBuilds-CONTROL
update
rodzic
fbc0b41360
commit
28b41fc57f
|
|
@ -1,4 +1,5 @@
|
|||
v1.0.216: Internal Testing Build
|
||||
v1.0.220: New XYZ and Custom Probe wizards, new Probe Button on Main toolbar, fixed File Assocation Opening (Bug #119 ), added loaded Filename to titlebar (Issue #116), changed Keybinding for Devtools to ctrl+shift+i, added shortcut key F6 to jump to console (Issue #112)
|
||||
v1.0.216-219: Internal Testing versions only
|
||||
v1.0.215: Fixed bug with Z Plate retract where plate is thicker than 10mm
|
||||
v1.0.214: Fixed bug with Z-Zero plate probing routine, added Z Plate thickness setting back
|
||||
v1.0.213: Updated Authenticode Signing certificate
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
<ul class="tabs-holder">
|
||||
<li><a id="controlTab" href="#section-two" onclick="manualcontrolPanel();"><i class="fas fa-fw fa-play"></i> Control</a></li>
|
||||
<li id="grblSettings" style="display: none;"><a id="grblTab" href="#section-grbl" onclick="grblPanel();"><i class="fas fa-fw fa-sliders-h"></i> Grbl Settings</a></li>
|
||||
<li><a href="#section-troubleshooting" onclick="troubleshootingPanel();"><i class="fas fa-fw fa-file-medical-alt"></i> Troubleshooting</a></li>
|
||||
<li><a href="#section-troubleshooting" id="troubleshootingTab" onclick="troubleshootingPanel();"><i class="fas fa-fw fa-file-medical-alt"></i> Troubleshooting</a></li>
|
||||
</ul>
|
||||
<div class="content-holder">
|
||||
<div class="section" id="section-grbl">
|
||||
|
|
@ -133,30 +133,23 @@
|
|||
<button class="button alert" style="display:none;" onclick="closePort()" id="disconnectBtn" type="button" style="margin: 5px;">Disconnect</button>
|
||||
<button class="button small secondary disabled" disabled style="display:none;" id="flashBtn" type="button" style="margin: 5px;">please wait...</button>
|
||||
<button class="button small primary float-right" onclick="socket.emit('opendriverspage', true);" id="driverBtn" type="button" style="margin: 5px;">Install Drivers</button>
|
||||
<div class="ribbon-group" id="grblButtons">
|
||||
<hr>
|
||||
<button class="ribbon-icon-button" onclick="sendGcode(String.fromCharCode(0x18))">
|
||||
<span class="icon">
|
||||
<span class="mif-loop"></span>
|
||||
</span>
|
||||
<span class="caption">Restart Grbl</span>
|
||||
</button>
|
||||
|
||||
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
<span class="title">Machine Interface</span>
|
||||
</div>
|
||||
<div class="group" id="grblButtons" style="display: none;">
|
||||
<div class="ribbon-group">
|
||||
<button class="ribbon-icon-button" onclick="sendGcode(String.fromCharCode(0x18))">
|
||||
<span class="icon">
|
||||
<span class="mif-loop"></span>
|
||||
</span>
|
||||
<span class="caption">Reset</span>
|
||||
</button>
|
||||
<br>
|
||||
<button class="ribbon-icon-button" onclick="sendGcode('$$'); sendGcode('$I');">
|
||||
<span class="icon">
|
||||
<span class="mif-cogs"></span>
|
||||
</span>
|
||||
<span class="caption">Settings</span>
|
||||
</button>
|
||||
</div>
|
||||
<span class="title" id="firmwarename"></span>
|
||||
</div>
|
||||
|
||||
<div class="group">
|
||||
<div>
|
||||
<button id="openGcodeBtn" class="ribbon-button dropdown-toggle" title="Open a GCODE file">
|
||||
|
|
@ -171,7 +164,7 @@
|
|||
</ul>
|
||||
</div>
|
||||
|
||||
<button id="runBtn" class="ribbon-button" onclick="socket.emit('runJob', {data: editor.getValue(), isJob: true});" title="Run a Job">
|
||||
<button id="runBtn" class="ribbon-button" onclick="socket.emit('runJob', {data: editor.getValue(), isJob: true, fileName : loadedFileName});" title="Run a Job">
|
||||
<span class="icon">
|
||||
<i class="fas fa-play"></i>
|
||||
</span>
|
||||
|
|
@ -208,6 +201,18 @@
|
|||
</span>
|
||||
<span class="caption">Stop<br>Job</span>
|
||||
</button>
|
||||
|
||||
<button id="grblProbeMenu" class="ribbon-button" onclick="openProbeDialog();" disabled>
|
||||
<span class="icon">
|
||||
<span class="fa-layers fa-fw">
|
||||
<i class="fas fa-podcast fa-rotate-180"></i>
|
||||
</span>
|
||||
</span>
|
||||
<span class="caption grblmode">Probe</span>
|
||||
<span class="badge bg-green fg-white">New!</span>
|
||||
</button>
|
||||
|
||||
|
||||
<button id="chkSize" class="ribbon-button">
|
||||
<span class="icon">
|
||||
<i class="far fa-square"></i>
|
||||
|
|
@ -284,12 +289,10 @@
|
|||
</span>
|
||||
</span>
|
||||
<span class="caption">Wizards<br>& Tools</span>
|
||||
<span class="badge bg-red fg-white">New!</span>
|
||||
</button>
|
||||
<ul class="ribbon-dropdown grblmode" data-role="dropdown" data-duration="100">
|
||||
<li><a href="#" onclick="populateSurfaceToolForm();"><i class="fas fa-exchange-alt"></i> Surfacing / Flattening Wizard</a></li>
|
||||
<li><a href="#" onclick="jogWidget();"><i class="fas fa-mobile-alt"></i> Mobile Jog Widget</a></li>
|
||||
<li class="disabled grblProbeMenu" onclick="openProbeDialog();"><a href="#"><span class="fas fa-podcast fa-rotate-180 icon"></span> Probing Wizards</a></li>
|
||||
<li class="divider fg-lightGray"></li>
|
||||
<li class="disabled grblCalibrationMenu" onclick="xstepscalibrate();"><a href="#"><i class="fas fa-wrench fa-fw"></i> Calibrate X-Axes Steps/mm</a></li>
|
||||
<li class="disabled grblCalibrationMenu" onclick="ystepscalibrate();"><a href="#"><i class="fas fa-wrench fa-fw"></i> Calibrate Y-Axes Steps/mm</a></li>
|
||||
|
|
@ -441,8 +444,8 @@
|
|||
<li><a href="#" onclick="sendGcode( 'G0 X0')"><span class="fas fa-chart-line fg-red icon"></span>Goto X0 (Work Coord) (G0 X0)</a></li>
|
||||
<li id="gotoXzeroMpos"><a href="#" onclick="sendGcode( 'G53 G0 X0')"><span class="fas fa-chart-line fg-red icon"></span>Goto X0 (Machine Coord) (G53 G0 X0)</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="needsXYZProbe"><a href="#" onclick="openProbeXDialog()"><span class="fas fa-podcast fa-rotate-180 fg-red icon"></span>Probe X-Zero Wizard</a></li>
|
||||
<li class="needsXYZProbe"><a href="#" onclick="openProbeDialog()"><span class="fas fa-podcast fa-rotate-180 fg-red icon"></span>Probe XYZ-Zero Wizard</a></li>
|
||||
<li class="needsXYZProbe"><a href="#" onclick="openProbeXDialog()"><span class="fas fa-podcast fa-rotate-180 fg-red icon"></span>Probe X-Zero Wizard <span class="badge inline bg-red fg-white">New!</span></a></li>
|
||||
<li class="needsXYZProbe"><a href="#" onclick="openProbeDialog()"><span class="fas fa-podcast fa-rotate-180 fg-red icon"></span>Probe XYZ-Zero Wizard <span class="badge inline bg-red fg-white">New!</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
|
|
@ -476,8 +479,8 @@
|
|||
<li><a href="#" onclick="sendGcode( 'G0 Y0')"><span class="fas fa-chart-line fg-green icon"></span>Goto Y0 (Work Coord) (G0 Y0)</a></li>
|
||||
<li id="gotoYzeroMpos"><a href="#" onclick="sendGcode( 'G53 G0 Y0')"><span class="fas fa-chart-line fg-green icon"></span>Goto Y0 (Machine Coord) (G53 G0 Y0)</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="needsXYZProbe"><a href="#" onclick="openProbeYDialog()"><span class="fas fa-podcast fa-rotate-180 fg-green icon"></span>Probe Y-Zero Wizard</a></li>
|
||||
<li class="needsXYZProbe"><a href="#" onclick="openProbeDialog()"><span class="fas fa-podcast fa-rotate-180 fg-green icon"></span>Probe XYZ-Zero Wizard</a></li>
|
||||
<li class="needsXYZProbe"><a href="#" onclick="openProbeYDialog()"><span class="fas fa-podcast fa-rotate-180 fg-green icon"></span>Probe Y-Zero Wizard <span class="badge inline bg-red fg-white">New!</span></a></li>
|
||||
<li class="needsXYZProbe"><a href="#" onclick="openProbeDialog()"><span class="fas fa-podcast fa-rotate-180 fg-green icon"></span>Probe XYZ-Zero Wizard <span class="badge inline bg-red fg-white">New!</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
|
|
@ -512,8 +515,8 @@
|
|||
<li id="gotoZzeroMpos"><a href="#" onclick="sendGcode( 'G53 G0 Z0')"><span class="fas fa-chart-line fg-blue icon"></span>Goto Z0 (Machine Coord) (G53 G0 Z0)</a></li>
|
||||
<li class="divider"></li>
|
||||
<!-- <li><a href="#" onclick="z0probe()()"><span class="fas fa-podcast fa-rotate-180 fg-blue icon"></span>Probe Z-Zero Wizard</a></li> -->
|
||||
<li><a href="#" onclick="openProbeZDialog()"><span class="fas fa-podcast fa-rotate-180 fg-blue icon"></span>Probe Z-Zero Wizard</a></li>
|
||||
<li class="needsXYZProbe"><a href="#" onclick="openProbeDialog()"><span class="fas fa-podcast fa-rotate-180 fg-blue icon"></span>Probe XYZ-Zero Wizard</a></li>
|
||||
<li><a href="#" onclick="openProbeZDialog()"><span class="fas fa-podcast fa-rotate-180 fg-blue icon"></span>Probe Z-Zero Wizard <span class="badge inline bg-red fg-white">New!</span></a></li>
|
||||
<li class="needsXYZProbe"><a href="#" onclick="openProbeDialog()"><span class="fas fa-podcast fa-rotate-180 fg-blue icon"></span>Probe XYZ-Zero Wizard <span class="badge inline bg-red fg-white">New!</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
|
|
@ -748,12 +751,12 @@
|
|||
<div id="console"></div>
|
||||
<div class="fixed-bottom m-3 mb-9">
|
||||
<form class="inline-form" id="commandform" autocomplete="off">
|
||||
<input data-prepend=" <i class='fas fa-terminal'></i>" data-role="input" data-clear-button="false" data-role="input" id="command" type="text" autocomplete="on" class=" dark needs-connection"
|
||||
style="width: calc(100vw - 170px);" data-editable="true" />
|
||||
<button id="sendCommand" class="button dark needs-connection" type="button" data-role="hint" data-hint-position="top" data-hint-text="Execute Command" data-cls-hint="bg-light fg-dark drop-shadow">
|
||||
<input title="Tip: Press F6 anywhere on the CONTROL window to quickly jump to this input" data-prepend=" <i class='fas fa-terminal'></i>" data-role="input" data-clear-button="false" data-role="input" id="command"
|
||||
type="text" autocomplete="on" class=" dark needs-connection" style="width: calc(100vw - 170px);" data-editable="true" />
|
||||
<button id="sendCommand" class="button dark needs-connection" type="button" title="Execute command">
|
||||
<i class="fa fa-play" style="margin-right: 10px;"></i> Send
|
||||
</button>
|
||||
<button class="button dark emptylog" type="button" onclick="$('#console').empty();" data-role="hint" data-hint-position="top" data-hint-text="Empty console log" data-cls-hint="bg-light fg-dark drop-shadow">
|
||||
<button class="button dark emptylog" type="button" onclick="$('#console').empty();" title="Clear the Log screen">
|
||||
<i class="fa fa-trash"></i>
|
||||
</button>
|
||||
</form>
|
||||
|
|
@ -772,7 +775,8 @@
|
|||
<button title="Redo" class="button dark" onclick="editor.execCommand('redo')"><i class="fas fa-redo"></i> Redo</button>
|
||||
<button title="Go to End" class="button dark" onclick="editor.execCommand('gotoend')"><i class="fas fa-chevron-down"></i></button>
|
||||
<button title="Go to Start" class="button dark" onclick="editor.execCommand('gotostart')"><i class="fas fa-chevron-up"></i></button>
|
||||
<button title="Clear Editor" class="button dark" onclick="editor.execCommand('selectall'); editor.execCommand('del'); parseGcodeInWebWorker(editor.getValue());"><i class="fas fa-eraser"></i> Clear</button>
|
||||
<button title="Clear Editor" class="button dark" onclick="editor.execCommand('selectall'); editor.execCommand('del'); parseGcodeInWebWorker(editor.getValue()); loadedFileName = ''; setWindowTitle()"><i class="fas fa-eraser"></i>
|
||||
Clear</button>
|
||||
<!-- </form> -->
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -1204,7 +1208,7 @@
|
|||
<small id="changelogupdate"></small>
|
||||
</div>
|
||||
<div class="dialog-actions">
|
||||
<button class="button js-dialog-close">Not right now please</button>
|
||||
<button class="button js-dialog-close">Not right now (snooze for 1hr)</button>
|
||||
<button class="button success js-dialog-close" onclick="socket.emit('applyUpdate', true)">OK, Proceed with Update</button>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -1461,7 +1465,7 @@
|
|||
|
||||
<label>Probe Type: </label>
|
||||
|
||||
<a class="button" id="context_toggle"><span id="probetypebtn"><span class="icon"><img src="./img/xyzprobe/ztouch.png" /></span>OpenBuilds Z Touch Plate</a>
|
||||
<a class="button" id="context_toggle"><span id="probetypebtn"><span class="icon"><img src="./img/xyzprobe/xyztouch.png" /></span> OpenBuilds XYZ Probe</a>
|
||||
<ul class="d-menu context" data-role="dropdown" data-toggle-element="#context_toggle">
|
||||
<li onclick="probetype('xyz');"><a href="#"><span class="icon"><img src="./img/xyzprobe/xyztouch.png" /></span> OpenBuilds XYZ Probe</a></li>
|
||||
<li onclick="probetype('z');"><a href="#"><span class="icon"><img src="./img/xyzprobe/ztouch.png" /></span>OpenBuilds Z Touch Plate</a></li>
|
||||
|
|
|
|||
|
|
@ -50,7 +50,6 @@ function grblSettings(data) {
|
|||
// $('#grblFirmwareBtn').removeAttr('disabled');
|
||||
$('#grblSettings').show()
|
||||
$('.grblCalibrationMenu').removeClass("disabled")
|
||||
$('.grblProbeMenu').removeClass("disabled")
|
||||
|
||||
|
||||
if (grblParams['$22'] == 1) {
|
||||
|
|
@ -417,7 +416,8 @@ function grblSaveSettings() {
|
|||
console.log("commands", commands)
|
||||
socket.emit('runJob', {
|
||||
data: commands,
|
||||
isJob: false
|
||||
isJob: false,
|
||||
fileName: ""
|
||||
});
|
||||
grblParams = {};
|
||||
|
||||
|
|
|
|||
|
|
@ -521,7 +521,8 @@ $(document).ready(function() {
|
|||
}
|
||||
socket.emit('runJob', {
|
||||
data: moves,
|
||||
isJob: false
|
||||
isJob: false,
|
||||
fileName: ""
|
||||
});
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -67,19 +67,17 @@ function bindKeys() {
|
|||
|
||||
// Bind for Electron Devtools
|
||||
document.addEventListener('keydown', function(evt) {
|
||||
if (evt.which === 123) {
|
||||
try {
|
||||
var focusedWindow = require('electron').remote.getCurrentWindow();
|
||||
if (focusedWindow.isDevToolsOpened()) {
|
||||
focusedWindow.closeDevTools();
|
||||
} else {
|
||||
focusedWindow.openDevTools();
|
||||
}
|
||||
} catch (error) {
|
||||
console.warn(error);
|
||||
}
|
||||
} else if (evt.which === 116) {
|
||||
if (evt.which === 116) {
|
||||
// F5 - reload interface
|
||||
location.reload();
|
||||
} else if (evt.which === 117) {
|
||||
// F6 - switch to serial console and focus on Console Input
|
||||
$("#controlTab").click();
|
||||
$("#consoletab").click();
|
||||
$("#command").focus();
|
||||
} else if (evt.which === 112) {
|
||||
// F1 - troubleshooting
|
||||
$("#troubleshootingTab").click();
|
||||
}
|
||||
});
|
||||
|
||||
|
|
@ -301,7 +299,8 @@ function bindKeys() {
|
|||
if (laststatus.comms.connectionStatus == 1 || laststatus.comms.connectionStatus == 2) {
|
||||
socket.emit('runJob', {
|
||||
data: editor.getValue(),
|
||||
isJob: true
|
||||
isJob: true,
|
||||
fileName: ""
|
||||
});
|
||||
} else if (laststatus.comms.connectionStatus == 3) {
|
||||
socket.emit('pause', true);
|
||||
|
|
@ -418,7 +417,9 @@ function keyboardShortcutsEditor() {
|
|||
<input type="text" class="keyboardshortcutinput" readonly id="stepPnewKey" value="` + keyboardShortcuts.stepP + `" onclick="$('.keyboardshortcutinput').removeClass('alert').removeClass('newKeyAssignment'); $('#stepPnewKey').addClass('alert').addClass('newKeyAssignment')">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
</div>`
|
||||
|
||||
Metro.dialog.create({
|
||||
|
|
|
|||
|
|
@ -1,7 +1,32 @@
|
|||
var gcode;
|
||||
var loadedFileName = "";
|
||||
var editor;
|
||||
var isJogWidget = false;
|
||||
|
||||
function setWindowTitle(status) {
|
||||
|
||||
var string = "OpenBuilds CONTROL"
|
||||
|
||||
if (status) {
|
||||
string += " v" + status.driver.version
|
||||
} else {
|
||||
string += " v" + laststatus.driver.version
|
||||
}
|
||||
|
||||
|
||||
if (loadedFileName.length > 0) {
|
||||
string += " / " + loadedFileName
|
||||
}
|
||||
|
||||
if (!nostatusyet && laststatus.comms.interfaces.activePort) {
|
||||
string += " / connected to " + laststatus.comms.interfaces.activePort
|
||||
}
|
||||
|
||||
$('#windowtitle').html(string)
|
||||
|
||||
|
||||
}
|
||||
|
||||
function getChangelog() {
|
||||
$("#changelog").empty()
|
||||
var template2 = `<ul>`
|
||||
|
|
@ -31,7 +56,6 @@ function getChangelog() {
|
|||
|
||||
$(document).ready(function() {
|
||||
|
||||
|
||||
initDiagnostics(); // run second time to ensure checkboxes are ticked
|
||||
|
||||
if (!isJogWidget) {
|
||||
|
|
@ -107,6 +131,10 @@ $(document).ready(function() {
|
|||
$('#splash').fadeOut(500);
|
||||
}, 100)
|
||||
|
||||
setInterval(function() {
|
||||
setWindowTitle();
|
||||
}, 1000)
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
|
@ -135,6 +163,8 @@ function loadFile(f) {
|
|||
r.readAsText(f);
|
||||
r.onload = function(event) {
|
||||
editor.session.setValue(this.result);
|
||||
loadedFileName = f.name;
|
||||
setWindowTitle()
|
||||
if (webgl) {
|
||||
printLog('<span class="fg-red">[ GCODE Parser ]</span><span class="fg-green"> GCODE File Loaded, please wait while we render a preview... </span>');
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -41,9 +41,6 @@ $(document).ready(function() {
|
|||
console.log("Enabling XYZ Probing")
|
||||
$(".needsXYZProbe").show()
|
||||
}
|
||||
} else {
|
||||
console.log("Disabling XYZ Probing")
|
||||
$(".needsXYZProbe").hide()
|
||||
}
|
||||
});
|
||||
|
||||
|
|
@ -73,11 +70,10 @@ function openProbeDialog() {
|
|||
}, 100)
|
||||
}
|
||||
} else {
|
||||
probetype("z")
|
||||
setTimeout(function() {
|
||||
probezplatetab()
|
||||
probexyztab()
|
||||
$(".probetabxyz").removeClass("active")
|
||||
$("#probezplatetab").addClass("active")
|
||||
$("#probexyztab").addClass("active")
|
||||
}, 100)
|
||||
}
|
||||
}
|
||||
|
|
@ -100,8 +96,11 @@ function openProbeXDialog() {
|
|||
}, 100)
|
||||
}
|
||||
} else {
|
||||
probetype("z");
|
||||
// error - needs XYZ probe
|
||||
setTimeout(function() {
|
||||
probextab()
|
||||
$(".probetabxyz").removeClass("active")
|
||||
$("#probextab").addClass("active")
|
||||
}, 100)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -123,8 +122,11 @@ function openProbeYDialog() {
|
|||
}, 100)
|
||||
}
|
||||
} else {
|
||||
probetype("z");
|
||||
// error - needs XYZ probe
|
||||
setTimeout(function() {
|
||||
probeytab()
|
||||
$(".probetabxyz").removeClass("active")
|
||||
$("#probeytab").addClass("active")
|
||||
}, 100)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -146,8 +148,11 @@ function openProbeZDialog() {
|
|||
}, 100)
|
||||
}
|
||||
} else {
|
||||
probetype("z");
|
||||
// error - needs XYZ probe
|
||||
setTimeout(function() {
|
||||
probeztab()
|
||||
$(".probetabxyz").removeClass("active")
|
||||
$("#probeztab").addClass("active")
|
||||
}, 100)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -457,7 +462,8 @@ function runProbeNew() {
|
|||
socket.emit('runJob', {
|
||||
data: xmacro,
|
||||
isJob: false,
|
||||
completedMsg: "Probe Complete: Remove the Probe Clip and Probe Plate before continuing... "
|
||||
completedMsg: "Probe Complete: Remove the Probe Clip and Probe Plate before continuing... ",
|
||||
fileName: ""
|
||||
});
|
||||
|
||||
}
|
||||
|
|
@ -480,7 +486,8 @@ function runProbeNew() {
|
|||
socket.emit('runJob', {
|
||||
data: ymacro,
|
||||
isJob: false,
|
||||
completedMsg: "Probe Complete: Remove the Probe Clip and Probe Plate before continuing... "
|
||||
completedMsg: "Probe Complete: Remove the Probe Clip and Probe Plate before continuing... ",
|
||||
fileName: ""
|
||||
});
|
||||
}
|
||||
|
||||
|
|
@ -504,7 +511,8 @@ function runProbeNew() {
|
|||
socket.emit('runJob', {
|
||||
data: zmacro,
|
||||
isJob: false,
|
||||
completedMsg: "Probe Complete: Remove the Probe Clip and Probe Plate before continuing... "
|
||||
completedMsg: "Probe Complete: Remove the Probe Clip and Probe Plate before continuing... ",
|
||||
fileName: ""
|
||||
});
|
||||
|
||||
}
|
||||
|
|
@ -531,7 +539,8 @@ function runProbeNew() {
|
|||
socket.emit('runJob', {
|
||||
data: zmacro,
|
||||
isJob: false,
|
||||
completedMsg: "Probe Complete: Remove the Probe Clip and Probe Plate before continuing... "
|
||||
completedMsg: "Probe Complete: Remove the Probe Clip and Probe Plate before continuing... ",
|
||||
fileName: ""
|
||||
});
|
||||
|
||||
}
|
||||
|
|
@ -561,7 +570,7 @@ function runProbeNew() {
|
|||
G10 P1 L20 X` + xoffset + ` ; set X as offset and half endmill diameter
|
||||
G0 X` + (xoffset - 2).toFixed(3) + `
|
||||
G0 Z` + (zoffset + 5) + ` ; retract
|
||||
|
||||
|
||||
; Probe Y
|
||||
G0 X15 Y-20 ; position to front side and move right a little to be closer to center of edge
|
||||
G0 Z0 ; drop down to be next to plate
|
||||
|
|
@ -583,7 +592,8 @@ function runProbeNew() {
|
|||
socket.emit('runJob', {
|
||||
data: xyzmacro,
|
||||
isJob: false,
|
||||
completedMsg: "Probe Complete: Remove the Probe Clip and Probe Plate before continuing... "
|
||||
completedMsg: "Probe Complete: Remove the Probe Clip and Probe Plate before continuing... ",
|
||||
fileName: ""
|
||||
});
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -117,7 +117,8 @@ function runGcodeSection(startline, endline) {
|
|||
console.log(newGcodeString)
|
||||
socket.emit('runJob', {
|
||||
data: newGcodeString,
|
||||
isJob: true
|
||||
isJob: true,
|
||||
fileName: ""
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
11
app/js/ui.js
11
app/js/ui.js
|
|
@ -122,6 +122,7 @@ function setControlBar(val, status) {
|
|||
$('#runToolsBtn').hide().attr('disabled', true);
|
||||
$('#runBtn').hide().attr('disabled', true);
|
||||
}
|
||||
$('#grblProbeMenu').show().attr('disabled', true);
|
||||
$('#chkSize').show().attr('disabled', true);
|
||||
$('#resumeBtn').hide().attr('disabled', true);
|
||||
$('#pauseBtn').hide().attr('disabled', true);
|
||||
|
|
@ -135,9 +136,9 @@ function setControlBar(val, status) {
|
|||
$('#homeBtn').hide().attr('disabled', true);
|
||||
}
|
||||
}
|
||||
|
||||
$('.estop').hide()
|
||||
} else if (val == 1 || val == 2) { // Connected, but not Playing yet
|
||||
$('#grblProbeMenu').show().attr('disabled', false);
|
||||
if (typeof ace !== 'undefined') {
|
||||
if (toolchanges.length) {
|
||||
$('#runToolsBtn').show().attr('disabled', editor.session.getLength() < 2);
|
||||
|
|
@ -176,6 +177,8 @@ function setControlBar(val, status) {
|
|||
}
|
||||
$('.estop').show()
|
||||
} else if (val == 3) { // Busy Streaming GCODE
|
||||
$('#grblProbeMenu').show().attr('disabled', true);
|
||||
|
||||
if (toolchanges.length) {
|
||||
$('#runToolsBtn').hide().attr('disabled', true);
|
||||
$('#runBtn').hide().attr('disabled', true);
|
||||
|
|
@ -198,6 +201,8 @@ function setControlBar(val, status) {
|
|||
}
|
||||
$('.estop').show()
|
||||
} else if (val == 4) { // Paused
|
||||
$('#grblProbeMenu').show().attr('disabled', true);
|
||||
|
||||
if (toolchanges.length) {
|
||||
$('#runToolsBtn').hide().attr('disabled', true);
|
||||
$('#runBtn').hide().attr('disabled', true);
|
||||
|
|
@ -220,6 +225,8 @@ function setControlBar(val, status) {
|
|||
}
|
||||
$('.estop').show()
|
||||
} else if (val == 5) { // Alarm State
|
||||
$('#grblProbeMenu').show().attr('disabled', true);
|
||||
|
||||
if (toolchanges.length) {
|
||||
$('#runToolsBtn').show().attr('disabled', true);
|
||||
$('#runBtn').hide().attr('disabled', true);
|
||||
|
|
@ -243,6 +250,8 @@ function setControlBar(val, status) {
|
|||
}
|
||||
$('.estop').show()
|
||||
} else if (val == 6) { // Firmware Upgrade State
|
||||
$('#grblProbeMenu').show().attr('disabled', true);
|
||||
|
||||
if (toolchanges.length) {
|
||||
$('#runToolsBtn').hide().attr('disabled', true);
|
||||
$('#runBtn').hide().attr('disabled', true);
|
||||
|
|
|
|||
|
|
@ -78,8 +78,10 @@ function initSocket() {
|
|||
|
||||
socket.on('gcodeupload', function(data) {
|
||||
printLog("Received new GCODE from API")
|
||||
editor.session.setValue(data);
|
||||
parseGcodeInWebWorker(data)
|
||||
editor.session.setValue(data.gcode);
|
||||
loadedFileName = data.filename;
|
||||
setWindowTitle()
|
||||
parseGcodeInWebWorker(data.gcode)
|
||||
$('#controlTab').click()
|
||||
if (webgl) {
|
||||
$('#gcodeviewertab').click();
|
||||
|
|
@ -299,7 +301,8 @@ function initSocket() {
|
|||
socket.on('status', function(status) {
|
||||
|
||||
if (nostatusyet) {
|
||||
$('#windowtitle').html("OpenBuilds CONTROL v" + status.driver.version)
|
||||
// $('#windowtitle').html("OpenBuilds CONTROL v" + status.driver.version)
|
||||
setWindowTitle(status)
|
||||
if (status.driver.operatingsystem == "rpi") {
|
||||
$('#windowtitlebar').hide();
|
||||
}
|
||||
|
|
|
|||
21
index.js
21
index.js
|
|
@ -172,7 +172,7 @@ if (isElectron()) {
|
|||
// repeat every minute
|
||||
setTimeout(function() {
|
||||
io.sockets.emit('updateready', availversion);
|
||||
}, 15 * 60 * 1000) // 15 mins
|
||||
}, 60 * 60 * 1000) // 60 mins
|
||||
updateIsDownloading = false;
|
||||
});
|
||||
} else {
|
||||
|
|
@ -1682,7 +1682,11 @@ function readFile(path) {
|
|||
} = require('electron')
|
||||
shell.openExternal('https://cam.openbuilds.com')
|
||||
} else { // GCODE
|
||||
io.sockets.emit('gcodeupload', data);
|
||||
var payload = {
|
||||
gcode: data,
|
||||
filename: path
|
||||
}
|
||||
io.sockets.emit('gcodeupload', payload);
|
||||
uploadedgcode = data;
|
||||
return data
|
||||
}
|
||||
|
|
@ -2166,9 +2170,18 @@ if (isElectron()) {
|
|||
electronApp.on('second-instance', (event, commandLine, workingDirectory) => {
|
||||
//Someone tried to run a second instance, we should focus our window.
|
||||
// debug_log('SingleInstance')
|
||||
// debug_log(commandLine)
|
||||
|
||||
function checkFileType(fileName) {
|
||||
var fileNameLC = fileName.toLowerCase();
|
||||
if (fileNameLC.endsWith('.obc') || fileName.endsWith('.gcode') || fileName.endsWith('.gc') || fileName.endsWith('.tap') || fileName.endsWith('.nc') || fileName.endsWith('.cnc')) {
|
||||
return fileName;
|
||||
}
|
||||
}
|
||||
|
||||
debug_log(commandLine)
|
||||
lauchGUI = true;
|
||||
var openFilePath = commandLine[1];
|
||||
|
||||
var openFilePath = commandLine.find(checkFileType);
|
||||
if (openFilePath !== "") {
|
||||
readFile(openFilePath);
|
||||
if (openFilePath !== undefined) {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "OpenBuildsCONTROL",
|
||||
"version": "1.0.219-internal-test",
|
||||
"version": "1.0.220",
|
||||
"license": "AGPL-3.0",
|
||||
"description": "Machine Interface Driver for OpenBuilds",
|
||||
"author": "github.com/openbuilds <webmaster@openbuilds.com>",
|
||||
|
|
|
|||
Ładowanie…
Reference in New Issue