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 0000000..4e4baa2 Binary files /dev/null and b/img/patreon.png differ diff --git a/img/paypal.png b/img/paypal.png new file mode 100644 index 0000000..1a028e3 Binary files /dev/null and b/img/paypal.png differ 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); }