504 lines
33 KiB
HTML
504 lines
33 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<head>
|
|
<title>Ormerod Control v0.65</title>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
|
<!-- Bootstrap -->
|
|
<link href="//netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
|
|
<link href="//reprappro.github.io/OrmerodWebControl/css/main.css" rel="stylesheet" type="text/css" />
|
|
<link href="//reprappro.github.io/OrmerodWebControl/favicon.ico" rel="icon" type="image/x-icon" />
|
|
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
|
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
|
<!--[if lt IE 9]>
|
|
<script src="//oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
|
|
<script src="//oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
|
|
<![endif]-->
|
|
</head>
|
|
<body>
|
|
<!-- Wrap all page content here -->
|
|
<div id="wrap">
|
|
<nav class="navbar navbar-default" role="navigation">
|
|
<!-- Brand and toggle get grouped for better mobile display -->
|
|
<div class="navbar-header">
|
|
<a class="navbar-brand" href="#"><strong>RepRapPro Ormerod</strong> <small>- <span id="hostLocation"></span></small></a>
|
|
</div>
|
|
<!-- Collect the nav links, forms, and other content for toggling -->
|
|
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
|
|
<div class="col-md-1">
|
|
<form class="navbar-form navbar-left">
|
|
<button type="button" id="printGfile" class="btn btn-default disabled" title="Drop a G file here to Print it
|
|
direct from the Web Interface">G Print Drop/Click</button>
|
|
</form>
|
|
</div>
|
|
<div class="col-md-5 col-md-offset-1">
|
|
<form class="navbar-form navbar-left">
|
|
<div class="input-group">
|
|
<div class="input-group-btn" id='sendG'>
|
|
<button type="button" id='txtinput' class="btn btn-default">Send GCode</button>
|
|
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown"><span class="caret"></span></button>
|
|
<ul class="dropdown-menu">
|
|
<li><a href="#" id='gLink' title="Set Z Zero">G92 Z0</a></li>
|
|
<li><a href="#" id='gLink' title="Show Config">G1 X0 Y0</a></li>
|
|
<li><a href="#" id='gLink' title="Show Config">G1 Z0</a></li>
|
|
<li class="divider"></li>
|
|
<li><a href="#" id='gLink' title="Clear all Bed Comp">M561</a></li>
|
|
<li><a href="#" id='gLink' title="Bed Comp P0">G1 X60 Y20</a></li>
|
|
<li><a href="#" id='gLink' title="Bed Comp P1">G1 X60 Y170</a></li>
|
|
<li><a href="#" id='gLink' title="Bed Comp P2">G1 X170 Y170</a></li>
|
|
<li><a href="#" id='gLink' title="Bed Comp P3">G1 X170 Y20</a></li>
|
|
<li class="divider"></li>
|
|
<li class='disabled'><a href="#">Add Code</a></li>
|
|
</ul>
|
|
</div><!-- /btn-group -->
|
|
<input type="text" id='gInput' class="form-control">
|
|
</div><!-- /input-group -->
|
|
</form>
|
|
</div>
|
|
<div class="col-md-1">
|
|
<form class="navbar-form navbar-right">
|
|
<button type="button" id="printing" class="btn btn-danger active disabled" value="0">Inactive</button>
|
|
</form>
|
|
</div>
|
|
</div><!-- /.navbar-collapse -->
|
|
</nav>
|
|
|
|
<!-- Begin page content -->
|
|
<div class="container">
|
|
<div class="row">
|
|
<!-- panic buttions -->
|
|
<div class="col-md-1">
|
|
<button type="button" id="connect" class="btn btn-danger disabled" value="0">Connect</button>
|
|
<div id="panicBtn" style="margin-top: 5px">
|
|
<button type="button" value='M112' id='stop' class="btn btn-danger btn-block disabled" title="M112, moves in progress are immediately terminated,
|
|
shuts down, motors/heaters turned off.
|
|
Requires reset button on duet to restart">STOP!</button>
|
|
<button type="button" value='M25' id='pause' class="btn btn-info btn-block disabled" title='Pause printing, Resumeable'>Pause</button>
|
|
<button type="button" value='reset' id='reset' class="btn btn-success btn-block hidden" title='Pause before reset'>Reset</button>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-6">
|
|
<!-- Temp control/chart -->
|
|
<table class="table table-bordered" id="temp">
|
|
<tbody>
|
|
<tr>
|
|
<th colspan="3" class="text-center">Heater Temps</th>
|
|
<td rowspan="3">
|
|
<div id="tempchart" style="width: 250px; height: 120px ">
|
|
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td style="padding-top: 15px"><strong><span id="headTxt">Head</span></strong></td>
|
|
<td style="padding-top: 15px; width:60px"><span id="headTemp">0</span>°C</td>
|
|
<td>
|
|
<div class="input-group" id="headTemperature">
|
|
<div class="input-group-btn">
|
|
<button type="button" id='setHeadTemp' class="btn btn-default disabled">Set</button>
|
|
<button type="button" class="btn btn-default dropdown-toggle disabled" data-toggle="dropdown"><span class="caret"></span></button>
|
|
<ul class="dropdown-menu">
|
|
<li class="divider"></li>
|
|
<li><a href="#" id='addHeadTemp'>Add Temp</a></li>
|
|
</ul>
|
|
</div><!-- /btn-group -->
|
|
<input type="text" id='headTempInput' class="form-control">
|
|
</div><!-- /input-group -->
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td style="padding-top: 15px"><strong><span id="bedTxt">Bed</span></strong></td>
|
|
<td style="padding-top: 15px; width:60px"><span id="bedTemp">0</span>°C</td>
|
|
<td>
|
|
<div class="input-group" id="bedTemperature">
|
|
<div class="input-group-btn">
|
|
<button type="button" id='setBedTemp' class="btn btn-default disabled">Set</button>
|
|
<button type="button" class="btn btn-default dropdown-toggle disabled" data-toggle="dropdown"><span class="caret"></span></button>
|
|
<ul class="dropdown-menu">
|
|
<li class="divider"></li>
|
|
<li><a href="#" id='addBedTemp'>Add Temp</a></li>
|
|
</ul>
|
|
</div><!-- /btn-group -->
|
|
<input type="text" id='bedTempInput' class="form-control">
|
|
</div><!-- /input-group -->
|
|
</td>
|
|
</tr>
|
|
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div class="col-md-5">
|
|
<!-- head pos -->
|
|
<table class="table table-bordered" id="headPos">
|
|
<tbody>
|
|
<tr><th colspan="5" class="text-center">Head Position</th></tr>
|
|
<tr>
|
|
<th class="col-md-2 text-center">X</th>
|
|
<th class="col-md-2 text-center">Y</th>
|
|
<th class="col-md-2 text-center">Z</th>
|
|
<th class="col-md-2 text-center"><small>Extrude</small></th>
|
|
<th class="col-md-2 text-center"><small>Zprobe</small></th>
|
|
</tr>
|
|
<tr>
|
|
<td class="text-center"><span id="Xpos">0</span></td>
|
|
<td class="text-center"><span id="Ypos">0</span></td>
|
|
<td class="text-center"><span id="Zpos">0</span></td>
|
|
<td class="text-center"><small><span id="Epos">0</span></small></td>
|
|
<td class="text-center"><small><span id="probe">0</span></small></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<span class="label label-warning" id="warning"></span>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="row"> <!-- Tabbed Pages-->
|
|
<ul class="nav nav-tabs" id="tabs">
|
|
<li class="active"><a href="#control" data-toggle="tab">Control</a></li>
|
|
<li><a href="#printview" data-toggle="tab">Print Status</a></li>
|
|
<li><a href="#gcodefiles" data-toggle="tab">Gcode Files</a></li>
|
|
<li><a href="#messages" data-toggle="tab">Message Log</a></li>
|
|
<li><a href="#settings" data-toggle="tab">Settings</a></li>
|
|
</ul>
|
|
|
|
<!-- Tab panes -->
|
|
<div class="tab-content">
|
|
<div class="tab-pane active" id="control">
|
|
<br />
|
|
<div class="col-md-8">
|
|
<!-- Head Move -->
|
|
<table class="table table-bordered" id="moveHead">
|
|
<tbody>
|
|
<tr>
|
|
<td>
|
|
<button type="button" value='G28' id='homeAll' class="btn btn-primary btn-sm center-block disabled" title='Disables stepper motors and allows axis to move freely.'>Home All</button>
|
|
</td>
|
|
<th colspan="2">
|
|
<div class="col-md-11 text-center">Move Head Position</div>
|
|
</th>
|
|
</tr>
|
|
<tr>
|
|
<td><button type="button" value="G28 X0" id="homeX" class="btn btn-primary center-block disabled">Home X</button></td>
|
|
<td>
|
|
<div class="btn-group pull-right" id="Xminus">
|
|
</div>
|
|
</td>
|
|
<td>
|
|
<div class="btn-group" id="Xplus">
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td><button type="button" value="G28 Y0" id="homeY" class="btn btn-primary center-block disabled">Home Y</button></td>
|
|
<td class="">
|
|
<div class="btn-group pull-right" id="Yminus">
|
|
</div>
|
|
</td>
|
|
<td>
|
|
<div class="btn-group" id="Yplus">
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td><button type="button" value="G28 Z0" id="homeZ" class="btn btn-primary center-block disabled">Home Z</button></td>
|
|
<td>
|
|
<div class="btn-group pull-right" id="Zminus">
|
|
</div>
|
|
</td>
|
|
<td>
|
|
<div class="btn-group" id="Zplus">
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div class="col-md-4">
|
|
<!-- Extruder control -->
|
|
<table class="table table-bordered" id="extruder">
|
|
<tbody>
|
|
<tr>
|
|
<th colspan="2" class="text-center">Extruder Control</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>
|
|
<span>Feed mm/min</span>
|
|
<div class="btn-group" data-toggle="buttons" id='speed'>
|
|
<label class="btn btn-default active disabled">
|
|
<input type="radio" name="speed" id="speed" value="60" checked>60
|
|
</label>
|
|
<label class="btn btn-default disabled">
|
|
<input type="radio" name="speed" id="speed" value="120">120
|
|
</label>
|
|
<label class="btn btn-default disabled">
|
|
<input type="radio" name="speed" id="speed" value="240">240
|
|
</label>
|
|
</div>
|
|
</td>
|
|
<td>
|
|
Feed Direction
|
|
<div class="btn-group" data-toggle="buttons" id='feeddir'>
|
|
<label class="btn btn-default active disabled">
|
|
<input type="radio" name="feeddir" id="forward" checked> Forward
|
|
</label>
|
|
<label class="btn btn-default disabled">
|
|
<input type="radio" name="feeddir" id="reverse"> Reverse
|
|
</label>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td colspan="2">
|
|
<span>Feed</span>
|
|
<div class="btn-group" id="feed">
|
|
<button type="button" class="btn btn-default disabled" id="feed" value="1">1mm</button>
|
|
<button type="button" class="btn btn-default disabled" id="feed" value="5">5mm</button>
|
|
<button type="button" class="btn btn-default disabled" id="feed" value="10">10mm</button>
|
|
<button type="button" class="btn btn-default disabled" id="feed" value="50">50mm</button>
|
|
<button type="button" class="btn btn-default disabled" id="feed" value="100">100mm</button>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div class="col-md-12" id="quicks">
|
|
<!-- Quick Commands -->
|
|
<table class="table table-bordered">
|
|
<tr><td>
|
|
<p><strong>Quick Commands</strong></p>
|
|
<a href="#" role="button" class="btn btn-primary disabled" itemprop="M18" title='Disables stepper motors and allows axes to move freely'>Motors Off</a>
|
|
<a href="#" role="button" class="btn btn-default disabled" title="Set Absolute Z zero">G92 Z0</a>
|
|
<a href="#" role="button" class="btn btn-default disabled" title="Move X & Y axes to zero">G1 X0 Y0</a>
|
|
<a href="#" role="button" class="btn btn-default disabled" title="Move Z axis to zero">G1 Z0</a>
|
|
<a href="#" role="button" class="btn btn-default disabled" title="Move X & Y to Bed Centre">G1 X100 Y100</a>
|
|
</td></tr>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="tab-pane" id="printview">
|
|
<br />
|
|
<div class="col-md-10 col-md-offset-1">
|
|
<div class="progress text-center">
|
|
<div id="printProgress" class="progress-bar" role="progressbar" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: 0%">
|
|
<span id="printProgressText" title=""></span>
|
|
</div>
|
|
<span id="printOffBar">0% complete, layer 0 of 0</span>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-8 col-md-offset-2">
|
|
<table class="table table-bordered" id="layers">
|
|
<tbody>
|
|
<tr>
|
|
<td colspan="2">
|
|
<label>Object height in mm
|
|
<input type="text" id="objheight" class="form-control" placeholder="mm" title="Enter Object Height in mm, to see progress %">
|
|
</label>
|
|
</td>
|
|
<td rowspan="3">
|
|
<div id="layerChart" class="center-block"></div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th>Print Duration</th>
|
|
<th>Last Layer</th>
|
|
</tr>
|
|
<tr>
|
|
<td><span id="elapsed">00:00:00</span></td>
|
|
<td><span id="lastlayer">00:00:00</span></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<table class="table table-bordered" id="finish">
|
|
<tbody>
|
|
<tr>
|
|
<th colspan="7" class="text-center">Estimated Print End Time</th>
|
|
</tr>
|
|
<tr>
|
|
<td>Based On</td>
|
|
<td>Last Layer</td>
|
|
<td>Avg. All Layers</td>
|
|
<td>Avg. Last 5 Layers</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Est. Time Left</td>
|
|
<td><span id="llTimeR">00:00:00</span></td>
|
|
<td><span id="avgAllR">00:00:00</span></td>
|
|
<td><span id="avg5R">00:00:00</span></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Est. End Time</td>
|
|
<td><span id="llTime">00:00:00</span></td>
|
|
<td><span id="avgAll">00:00:00</span></td>
|
|
<td><span id="avg5">00:00:00</span></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<div class="tab-pane" id="gcodefiles">
|
|
<br />
|
|
<div class="col-md-10 col-md-offset-1">
|
|
<!-- Gfiles list -->
|
|
<div class="panel panel-default">
|
|
<div class="panel-body">
|
|
<div class="col-md-3">
|
|
<button type="button" id="uploadGfile" class="btn btn-default btn-lg disabled" title="Drop a G file here to
|
|
Upload it to the Duets SD card">SD Upload Drop</button>
|
|
</div>
|
|
<div class="col-md-3">
|
|
<input type="file" id="printGselect" style="display:none">
|
|
<input type="file" id="uploadGselect" style="display:none">
|
|
</div>
|
|
<div class="col-md-6">
|
|
<span id="ulTitle">File Upload Status</span>
|
|
<div class="progress text-center">
|
|
<div id="ulProgress" class="progress-bar" role="progressbar" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: 0%">
|
|
<span id="ulProgressText" title=""></span>
|
|
</div>
|
|
<span id="ulOffBar">0% Complete</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="panel panel-default">
|
|
<div class="panel-body">
|
|
<div class="col-md-12">
|
|
<strong>Duet SD file list:</strong>
|
|
<button type="button" class="btn btn-default pull-right" id="filereload">Refresh</button>
|
|
</div>
|
|
|
|
|
|
<div class="col-md-3 btn-group-vertical" id="gFileList">
|
|
</div>
|
|
<div class="col-md-3 btn-group-vertical" id="gFileList2">
|
|
</div>
|
|
<div class="col-md-3 btn-group-vertical" id="gFileList3">
|
|
</div>
|
|
<div class="col-md-3 btn-group-vertical" id="gFileList4">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="tab-pane" id="messages" style="overflow-y: scroll; height: 320px">
|
|
<br />
|
|
<div class="col-md-10 col-md-offset-1 panel panel-default">
|
|
<div class="panel-body">
|
|
<div class="col-md-1"><strong>Messages:</strong></div>
|
|
|
|
<div class="col-md-2 col-md-offset-7 checkbox">
|
|
<label>
|
|
<input type="checkbox" id="noOK" /> Show 'ok'
|
|
</label>
|
|
</div>
|
|
<div class="col-md-1">
|
|
<button type="button" class="btn btn-default" id="clearLog">Clear Log</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-10 col-md-offset-1">
|
|
<div id="messageText"> </div>
|
|
</div>
|
|
</div>
|
|
<div class="tab-pane" id="settings" style="overflow-y: scroll; height: 320px">
|
|
<br />
|
|
<table class="table table-bordered col-md-10 col-md-offset-1" id="settingtbl">
|
|
<tbody>
|
|
<tr>
|
|
<th class="text-center">Versions</th>
|
|
<th class="text-center">Parameters</th>
|
|
<th class="text-center">SD sys & www</th>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<div class="form-group">
|
|
<label class="control-label">Duet Firmware</label>
|
|
<p class="form-control-static" id="firmVer"></p>
|
|
</div>
|
|
</td>
|
|
<td>
|
|
<form class="form-horizontal" role="form">
|
|
<div class="form-group">
|
|
<label for="layerHeight" class="control-label">Layer height</label>
|
|
<input type="text" class="form-control" id="layerHeight" title="(default:0.24)" value="0.24" />
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="pollDelay" class="control-label">UI refresh ms</label>
|
|
<input type="text" class="form-control" id="pollDelay" title="Setting this to small can cause the Duet to crash (default:1000)" value="1000" />
|
|
</div>
|
|
<div class="checkbox">
|
|
<label>
|
|
<input type="checkbox" id="halfz" /> Use Half Z movements
|
|
</label>
|
|
</div>
|
|
<br />
|
|
<button type="button" id="saveSettings" class="btn btn-default">Apply & Save</button>
|
|
<button type="button" id="delSettings" class="btn btn-default" title="Reset all settings, and Custom Temps/Buttons">Reset All</button>
|
|
</form>
|
|
</td>
|
|
|
|
</tr>
|
|
<tr>
|
|
|
|
</tr>
|
|
|
|
</tbody>
|
|
</table>
|
|
|
|
|
|
<div class="col-md-10 col-md-offset-1 btn-group-vertical" id="config">
|
|
<br /><strong>Config.g file</strong><br />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="footer">
|
|
<div class="container text-middle">
|
|
<p class="text-muted"><small><a href="//forums.reprap.org/read.php?340,290811" target="_blank">get help here</a><span class="pull-right">Web Interface by iamburny :) </span></small>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="modal fade" id="modal">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close hidden" id="modalClose" data-dismiss="modal" aria-hidden="true">×</button>
|
|
<h4 class="modal-title"></h4>
|
|
</div>
|
|
<div class="modal-body">
|
|
|
|
</div>
|
|
<div class="modal-footer">
|
|
<button type="button" id="modalClose" class="btn btn-default hidden" data-dismiss="modal">Close</button>
|
|
<button type="button" id="modalSave" class="btn btn-primary hidden">Save changes</button>
|
|
</div>
|
|
</div><!-- /.modal-content -->
|
|
</div><!-- /.modal-dialog -->
|
|
</div><!-- /.modal -->
|
|
|
|
|
|
<!-- Bootstrap core JavaScript
|
|
================================================== -->
|
|
<!-- Placed at the end of the document so the pages load faster -->
|
|
<script src="//code.jquery.com/jquery-2.1.0.min.js"></script>
|
|
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.0/js/bootstrap.min.js"></script>
|
|
<script src="//reprappro.github.io/OrmerodWebControl/js/jquery.storageapi.min.js"></script>
|
|
<script src="//cdnjs.cloudflare.com/ajax/libs/flot/0.8.1/jquery.flot.min.js"></script>
|
|
<script src="//chrismbarr.github.io/FileDrop/jQuery.FileDrop.min.js"></script>
|
|
<script src="//reprappro.github.io/OrmerodWebControl/js/reprap.js"></script>
|
|
</body>
|
|
</html>
|
|
<!-- **EoF** -->
|