From d772051cab96e1023d49ee6febef62eadbc03015 Mon Sep 17 00:00:00 2001 From: lawgicau Date: Tue, 11 Aug 2020 10:53:28 +1000 Subject: [PATCH] Add intro and delta support --- css/styles.css | 32 +++++++++++++++++++++++++++ img/patreon.png | Bin 0 -> 10658 bytes img/paypal.png | Bin 0 -> 11273 bytes index.html | 26 +++++++++++++++------- js/gcodeprocessing.js | 50 +++++++++++++++++++++++++++++++++--------- 5 files changed, 90 insertions(+), 18 deletions(-) create mode 100644 img/patreon.png create mode 100644 img/paypal.png diff --git a/css/styles.css b/css/styles.css index f1099bb..f117936 100644 --- a/css/styles.css +++ b/css/styles.css @@ -7,6 +7,7 @@ body { h1 { margin: 20px 20px; + display: inline-block; } h2 { @@ -36,6 +37,16 @@ input { font-size: 1.2em; } +input[type="checkbox" i] { + /* Double-sized Checkboxes */ + -ms-transform: scale(2); /* IE */ + -moz-transform: scale(2); /* FF */ + -webkit-transform: scale(2); /* Safari and Chrome */ + -o-transform: scale(2); /* Opera */ + transform: scale(2); + margin: 20px; +} + select { font-size: 1.2em; } @@ -69,6 +80,27 @@ a { margin: 0 20px 20px 20px; } +#header { + height: 4.0em; +} + +#donate { + display: inline-block; + vertical-align: middle; + float: right; + padding: 20px; +} + +#donate img { + display: inline-block; + vertical-align: middle; +} + +.icon { + max-width: 50px; + max-height: 50px; +} + #tabs { margin: 20px 0; } diff --git a/img/patreon.png b/img/patreon.png new file mode 100644 index 0000000000000000000000000000000000000000..4e4baa253ff74583fab5b79d682f0fe2e8a4fab9 GIT binary patch literal 10658 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 Dy6y;Z literal 0 HcmV?d00001 diff --git a/img/paypal.png b/img/paypal.png new file mode 100644 index 0000000000000000000000000000000000000000..1a028e31f57ccf455d0603b0ced3d34b696275c5 GIT binary patch literal 11273 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 D>$8*C literal 0 HcmV?d00001 diff --git a/index.html b/index.html index e827cb0..43d9e37 100644 --- a/index.html +++ b/index.html @@ -16,13 +16,12 @@ -

Teaching Tech 3D Printer Calibration

-

This page serves as a companion for the following video:

-

It aims to make calibrating your 3D printer as easy as possible. If you find it helps you and you would like to say thank you, here is a donation link: PayPal.me

-

Special thanks to my Patrons for suggesting this video and helping define the contents.

-

Watch the video and then work through each tab. I have created a custom gcode generator to assist in testing towers. Every attempt has been made to ensure this is safe but ultimately there always is risk in running presliced gcode from the internet. Preview the gcode in your slicer or Gcode.ws and print at your own risk.

+
+
+

Introduction

+

This page serves as a companion for the following video:

+

It aims to make calibrating your 3D printer as easy as possible. If you find it helps you and you would like to say thank you, here is a donation link: PayPal.me

+

Special thanks to my Patrons for suggesting this video and helping define the contents.

+

Watch the video and then work through each tab. I have created a custom gcode generator to assist in testing towers. Every attempt has been made to ensure this is safe but ultimately there always is risk in running presliced gcode from the internet. Preview the gcode in your slicer or Gcode.ws and print at your own risk.

+
+

Frame Check

Before we do anything else, we need to ensure there are no underlying problems with the frame. It would be easy to use the techniques elsewhere on this page to try and fix problems that were actually caused by a problem with the physical components, so we will eliminate this first.

@@ -50,6 +57,8 @@

PTFE Tube

If your printer has PTFE tube, such as a bowden tube setup for the extruder/hot end, it is essential to make the tube is fully inserted and seated in the coupler. Also ensure the coupler is properly tightened. You may wish to use a small retaining clip on the coupler to prevent the tube working loose: Creality PTFE clip by morfidesign.

+

Nozzle

+

It is worth heating up te nozzle and pushing some filament through to see if it is exiting the nozzle properly. If the diameter is inconsistent or the extruded plastic shoots to one side, it may indicate a partial blockage in the nozzle that will be a pain in the future.

@@ -74,9 +83,10 @@

The aim of this print is to establish a baseline for comparison with later tests. The form below will create a customised version of the XYZ 20mm calibration cube by iDig3Dprinting. It is fast to print and gives a good indication if there is any fundamental problem with the printer.

Bed dimensions

-

Inputting the correct number will attempt to move the print into the centre of the bed.

- -
+

Inputting the correct number will attempt to move the print into the centre of the bed. In the centre button is checked, the bed size is irrelevant. Please check the gcode to ensure it will fit on your bed.

+ + +

Temperatures

For the hot end and bed respectively, typical PLA temperatures are 200 and 60, PETG 235 and 80, ABS 250 and 100, TPU 230 and 5 (effectively off).

diff --git a/js/gcodeprocessing.js b/js/gcodeprocessing.js index 4f7d4b1..1ceb748 100644 --- a/js/gcodeprocessing.js +++ b/js/gcodeprocessing.js @@ -13,9 +13,18 @@ function downloadFile(filename, contents) { } } +function toggle(ticked, target){ + if(ticked == true){ + $(target).hide(); + } else { + $(target).show(); + } +} + function processBaseline(){ var hotendTemp = document.baselineForm.hotendtemp.value; var bedTemp = document.baselineForm.bedtemp.value; + var centre = document.baselineForm.centre.checked; var bedX = Math.round((document.baselineForm.bedx.value-100)/2); var bedY = Math.round((document.baselineForm.bedy.value-100)/2); var retDist = document.baselineForm.retdist.value; @@ -35,26 +44,47 @@ function processBaseline(){ baseline = baseline.replace(/G1 E-5.0000 F2400/g, "G1 E-"+retDist+" F"+retSpeed); baseline = baseline.replace(/G1 E0.0000 F2400/g, "G1 E0.0000 F"+retSpeed); - if(bedX > 0){ + if(centre == true){ var baselineArray = baseline.split(/\n/g); + var regexp = /X\d+/; baselineArray.forEach(function(index, item){ if(baselineArray[item].search(/X/) > -1){ - var value = parseInt(baselineArray[item].match(/X\d+/)[0].substring(1)) + bedX - baselineArray[item] = baselineArray[item].replace(/X\d+/, "X"+String(value)); + var value = parseInt(baselineArray[item].match(regexp)[0].substring(1)) - 50; + baselineArray[item] = baselineArray[item].replace(regexp, "X"+String(value)); } }); - baseline = baselineArray.join("\n"); - } - if(bedY > 0){ - var baselineArray = baseline.split(/\n/g); + var regexp = /Y\d+/; baselineArray.forEach(function(index, item){ if(baselineArray[item].search(/Y/) > -1){ - var value = parseInt(baselineArray[item].match(/Y\d+/)[0].substring(1)) + bedY - baselineArray[item] = baselineArray[item].replace(/Y\d+/, "Y"+String(value)) + var value = parseInt(baselineArray[item].match(regexp)[0].substring(1)) - 50; + baselineArray[item] = baselineArray[item].replace(regexp, "Y"+String(value)) } }); baseline = baselineArray.join("\n"); - } + } else { + if(bedX > 0){ + var baselineArray = baseline.split(/\n/g); + var regexp = /X\d+/; + baselineArray.forEach(function(index, item){ + if(baselineArray[item].search(/X/) > -1){ + var value = parseInt(baselineArray[item].match(regexp)[0].substring(1)) + bedX; + baselineArray[item] = baselineArray[item].replace(regexp, "X"+String(value)); + } + }); + baseline = baselineArray.join("\n"); + } + if(bedY > 0){ + var baselineArray = baseline.split(/\n/g); + var regexp = /Y\d+/; + baselineArray.forEach(function(index, item){ + if(baselineArray[item].search(/Y/) > -1){ + var value = parseInt(baselineArray[item].match(regexp)[0].substring(1)) + bedY; + baselineArray[item] = baselineArray[item].replace(regexp, "Y"+String(value)) + } + }); + baseline = baselineArray.join("\n"); + } + } downloadFile('baseline.gcode', baseline); }