diff --git a/CHANGELOG.txt b/CHANGELOG.txt index d1eebd8..0add525 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,3 +1,4 @@ +v1.0.181: Fixed bug #88 re Incremental/Continous jog focus, Revamped Grbl Predefined Profiles to use submenus and added Pen options, Integrated Servo Pen Up/Down. v1.0.180: Fixed bug #87: Don't show Update dialog while running job, Updated connection messages when Smoothieware is detected to alert user to replace it with Grbl-LPC, Increased spacing between buttons in Mobile interface (bug #90), Added Framing pass to Surfacing Wizard (Bug #83), updated 2x Dependencies v1.0.179: New 3D Viewer backend: Support G2/G3 Arcs v1.0.178: New 3D Viewer backend with support for Large Gcode Files, massively faster rendering diff --git a/app/img/calibrate/servo/center.png b/app/img/calibrate/servo/center.png new file mode 100644 index 0000000..44eb20c Binary files /dev/null and b/app/img/calibrate/servo/center.png differ diff --git a/app/img/calibrate/servo/down.png b/app/img/calibrate/servo/down.png new file mode 100644 index 0000000..a9df2e3 Binary files /dev/null and b/app/img/calibrate/servo/down.png differ diff --git a/app/img/calibrate/servo/up.png b/app/img/calibrate/servo/up.png new file mode 100644 index 0000000..716980c Binary files /dev/null and b/app/img/calibrate/servo/up.png differ diff --git a/app/index.html b/app/index.html index b692156..6016b29 100644 --- a/app/index.html +++ b/app/index.html @@ -226,6 +226,7 @@
  • Plasma On (M3 S1000)
  • +
  • Coolant On (M8)
  • @@ -276,6 +277,7 @@
  • Calibrate X-Axes Steps/mm
  • Calibrate Y-Axes Steps/mm
  • Calibrate Z-Axes Steps/mm
  • +
  • Calibrate Servo Pen Up/Down
  • Customize Shortcut Key Assignments
  • @@ -548,6 +550,16 @@ + + + @@ -584,9 +596,18 @@ + + + - + - - - - -
    Incremental Jog @@ -634,7 +655,7 @@
    +
    @@ -822,10 +843,6 @@
    Websocket Status NOCOMM
    Installed Firmware VersionNOCOMM
    @@ -834,58 +851,92 @@
    - - +
    @@ -1193,6 +1244,7 @@ + @@ -1204,6 +1256,7 @@ + @@ -1212,4 +1265,4 @@ - \ No newline at end of file + diff --git a/app/js/calibrate-servo.js b/app/js/calibrate-servo.js new file mode 100644 index 0000000..e69de29 diff --git a/app/js/grbl-defaults.js b/app/js/grbl-defaults.js index 77da42b..7e36923 100644 --- a/app/js/grbl-defaults.js +++ b/app/js/grbl-defaults.js @@ -198,8 +198,7 @@ function selectMachine(type) { } } else if (type == "acro55") { // Acro 55 - var customFirmware = true; - var customFirmwareFile = 'acro'; + var customFirmware = 'acro'; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //Step idle delay, milliseconds @@ -238,8 +237,7 @@ function selectMachine(type) { } } else if (type == "acro510") { // Acro 510 - var customFirmware = true; - var customFirmwareFile = 'acro'; + var customFirmware = 'acro'; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //Step idle delay, milliseconds @@ -278,8 +276,7 @@ function selectMachine(type) { } } else if (type == "acro1010") { // Acro 1010 - var customFirmware = true; - var customFirmwareFile = 'acro'; + var customFirmware = 'acro'; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //Step idle delay, milliseconds @@ -318,8 +315,7 @@ function selectMachine(type) { } } else if (type == "acro1510") { // Acro 1510 - var customFirmware = true; - var customFirmwareFile = 'acro'; + var customFirmware = 'acro'; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //Step idle delay, milliseconds @@ -358,8 +354,7 @@ function selectMachine(type) { } } else if (type == "acro1515") { // Acro 1515 - var customFirmware = true; - var customFirmwareFile = 'acro'; + var customFirmware = 'acro'; var grblParams_def = { $0: "10", //"Step pulse time, microseconds" $1: "255", //Step idle delay, milliseconds @@ -396,6 +391,201 @@ function selectMachine(type) { $131: "1300.000", //Y-axis maximum travel, millimeters $132: "70.000", //Z-axis maximum travel, millimeters } + } else if (type == "acro55pen") { + // Acro 55 + var customFirmware = 'acropen'; + var grblParams_def = { + $0: "10", //"Step pulse time, microseconds" + $1: "255", //Step idle delay, milliseconds + $2: "0", //Step pulse invert, mask + $3: "1", //Step direction invert, mask + $4: "1", //Invert step enable pin, boolean + $5: "0", //Invert limit pins, boolean + $6: "0", //Invert probe pin, boolean + $10: "1", //Status report options, mask + $11: "0.020", //Junction deviation, millimeters + $12: "0.002", //Arc tolerance, millimeters + $13: "0", //Report in inches, boolean + $20: "0", //Soft limits enable, boolean + $21: "1", //Hard limits enable, boolean + $22: "1", //Homing cycle enable, boolean + $23: "7", //Homing direction invert, mask + $24: "100.000", //Homing locate feed rate, mm/min + $25: "1000.000", //Homing search seek rate, mm/min + $26: "250", //Homing switch debounce delay, milliseconds + $27: "5.000", //Homing switch pull-off distance, millimeters + $30: "255", //Maximum spindle speed, RPM + $31: "0", //Minimum spindle speed, RPM + $32: "0", //Laser-mode enable, boolean + $100: "57.143", //X-axis steps per millimeter-1/16 step + $101: "57.143", //Y-axis steps per millimeter-1/16 step + $102: "57.143", //Z-axis steps per millimeter-1/16 step + $110: "5000.000", //X-axis maximum rate, mm/min + $111: "5000.000", //Y-axis maximum rate, mm/min + $112: "5000.000", //Z-axis maximum rate, mm/min + $120: "500.000", //X-axis acceleration, mm/sec^2 + $121: "500.000", //Y-axis acceleration, mm/sec^2 + $122: "500.000", //Z-axis acceleration, mm/sec^2 + $130: "300.000", //X-axis maximum travel, millimeters + $131: "300.000", //Y-axis maximum travel, millimeters + $132: "70.000", //Z-axis maximum travel, millimeters + } + } else if (type == "acro510pen") { + // Acro 510 + var customFirmware = 'acropen'; + var grblParams_def = { + $0: "10", //"Step pulse time, microseconds" + $1: "255", //Step idle delay, milliseconds + $2: "0", //Step pulse invert, mask + $3: "1", //Step direction invert, mask + $4: "1", //Invert step enable pin, boolean + $5: "0", //Invert limit pins, boolean + $6: "0", //Invert probe pin, boolean + $10: "1", //Status report options, mask + $11: "0.020", //Junction deviation, millimeters + $12: "0.002", //Arc tolerance, millimeters + $13: "0", //Report in inches, boolean + $20: "0", //Soft limits enable, boolean + $21: "1", //Hard limits enable, boolean + $22: "1", //Homing cycle enable, boolean + $23: "7", //Homing direction invert, mask + $24: "100.000", //Homing locate feed rate, mm/min + $25: "1000.000", //Homing search seek rate, mm/min + $26: "250", //Homing switch debounce delay, milliseconds + $27: "5.000", //Homing switch pull-off distance, millimeters + $30: "255", //Maximum spindle speed, RPM + $31: "0", //Minimum spindle speed, RPM + $32: "0", //Laser-mode enable, boolean + $100: "57.143", //X-axis steps per millimeter-1/16 step + $101: "57.143", //Y-axis steps per millimeter-1/16 step + $102: "57.143", //Z-axis steps per millimeter-1/16 step + $110: "5000.000", //X-axis maximum rate, mm/min + $111: "5000.000", //Y-axis maximum rate, mm/min + $112: "5000.000", //Z-axis maximum rate, mm/min + $120: "500.000", //X-axis acceleration, mm/sec^2 + $121: "500.000", //Y-axis acceleration, mm/sec^2 + $122: "500.000", //Z-axis acceleration, mm/sec^2 + $130: "800.000", //X-axis maximum travel, millimeters + $131: "300.000", //Y-axis maximum travel, millimeters + $132: "70.000", //Z-axis maximum travel, millimeters + } + } else if (type == "acro1010pen") { + // Acro 1010 + var customFirmware = 'acropen'; + var grblParams_def = { + $0: "10", //"Step pulse time, microseconds" + $1: "255", //Step idle delay, milliseconds + $2: "0", //Step pulse invert, mask + $3: "1", //Step direction invert, mask + $4: "1", //Invert step enable pin, boolean + $5: "0", //Invert limit pins, boolean + $6: "0", //Invert probe pin, boolean + $10: "1", //Status report options, mask + $11: "0.020", //Junction deviation, millimeters + $12: "0.002", //Arc tolerance, millimeters + $13: "0", //Report in inches, boolean + $20: "0", //Soft limits enable, boolean + $21: "1", //Hard limits enable, boolean + $22: "1", //Homing cycle enable, boolean + $23: "7", //Homing direction invert, mask + $24: "100.000", //Homing locate feed rate, mm/min + $25: "1000.000", //Homing search seek rate, mm/min + $26: "250", //Homing switch debounce delay, milliseconds + $27: "5.000", //Homing switch pull-off distance, millimeters + $30: "255", //Maximum spindle speed, RPM + $31: "0", //Minimum spindle speed, RPM + $32: "0", //Laser-mode enable, boolean + $100: "57.143", //X-axis steps per millimeter-1/16 step + $101: "57.143", //Y-axis steps per millimeter-1/16 step + $102: "57.143", //Z-axis steps per millimeter-1/16 step + $110: "5000.000", //X-axis maximum rate, mm/min + $111: "5000.000", //Y-axis maximum rate, mm/min + $112: "5000.000", //Z-axis maximum rate, mm/min + $120: "500.000", //X-axis acceleration, mm/sec^2 + $121: "500.000", //Y-axis acceleration, mm/sec^2 + $122: "500.000", //Z-axis acceleration, mm/sec^2 + $130: "800.000", //X-axis maximum travel, millimeters + $131: "800.000", //Y-axis maximum travel, millimeters + $132: "70.000", //Z-axis maximum travel, millimeters + } + } else if (type == "acro1510pen") { + // Acro 1510 + var customFirmware = 'acropen'; + var grblParams_def = { + $0: "10", //"Step pulse time, microseconds" + $1: "255", //Step idle delay, milliseconds + $2: "0", //Step pulse invert, mask + $3: "1", //Step direction invert, mask + $4: "1", //Invert step enable pin, boolean + $5: "0", //Invert limit pins, boolean + $6: "0", //Invert probe pin, boolean + $10: "1", //Status report options, mask + $11: "0.020", //Junction deviation, millimeters + $12: "0.002", //Arc tolerance, millimeters + $13: "0", //Report in inches, boolean + $20: "0", //Soft limits enable, boolean + $21: "1", //Hard limits enable, boolean + $22: "1", //Homing cycle enable, boolean + $23: "7", //Homing direction invert, mask + $24: "100.000", //Homing locate feed rate, mm/min + $25: "1000.000", //Homing search seek rate, mm/min + $26: "250", //Homing switch debounce delay, milliseconds + $27: "5.000", //Homing switch pull-off distance, millimeters + $30: "255", //Maximum spindle speed, RPM + $31: "0", //Minimum spindle speed, RPM + $32: "0", //Laser-mode enable, boolean + $100: "57.143", //X-axis steps per millimeter-1/16 step + $101: "57.143", //Y-axis steps per millimeter-1/16 step + $102: "57.143", //Z-axis steps per millimeter-1/16 step + $110: "5000.000", //X-axis maximum rate, mm/min + $111: "5000.000", //Y-axis maximum rate, mm/min + $112: "5000.000", //Z-axis maximum rate, mm/min + $120: "500.000", //X-axis acceleration, mm/sec^2 + $121: "500.000", //Y-axis acceleration, mm/sec^2 + $122: "500.000", //Z-axis acceleration, mm/sec^2 + $130: "800.000", //X-axis maximum travel, millimeters + $131: "1300.000", //Y-axis maximum travel, millimeters + $132: "70.000", //Z-axis maximum travel, millimeters + } + } else if (type == "acro1515pen") { + // Acro 1515 + var customFirmware = 'acropen'; + var grblParams_def = { + $0: "10", //"Step pulse time, microseconds" + $1: "255", //Step idle delay, milliseconds + $2: "0", //Step pulse invert, mask + $3: "1", //Step direction invert, mask + $4: "1", //Invert step enable pin, boolean + $5: "0", //Invert limit pins, boolean + $6: "0", //Invert probe pin, boolean + $10: "1", //Status report options, mask + $11: "0.020", //Junction deviation, millimeters + $12: "0.002", //Arc tolerance, millimeters + $13: "0", //Report in inches, boolean + $20: "0", //Soft limits enable, boolean + $21: "1", //Hard limits enable, boolean + $22: "1", //Homing cycle enable, boolean + $23: "7", //Homing direction invert, mask + $24: "100.000", //Homing locate feed rate, mm/min + $25: "1000.000", //Homing search seek rate, mm/min + $26: "250", //Homing switch debounce delay, milliseconds + $27: "5.000", //Homing switch pull-off distance, millimeters + $30: "255", //Maximum spindle speed, RPM + $31: "0", //Minimum spindle speed, RPM + $32: "0", //Laser-mode enable, boolean + $100: "57.143", //X-axis steps per millimeter-1/16 step + $101: "57.143", //Y-axis steps per millimeter-1/16 step + $102: "57.143", //Z-axis steps per millimeter-1/16 step + $110: "5000.000", //X-axis maximum rate, mm/min + $111: "5000.000", //Y-axis maximum rate, mm/min + $112: "5000.000", //Z-axis maximum rate, mm/min + $120: "500.000", //X-axis acceleration, mm/sec^2 + $121: "500.000", //Y-axis acceleration, mm/sec^2 + $122: "500.000", //Z-axis acceleration, mm/sec^2 + $130: "1300.000", //X-axis maximum travel, millimeters + $131: "1300.000", //Y-axis maximum travel, millimeters + $132: "70.000", //Z-axis maximum travel, millimeters + } } else if (type == "minimill") { // minimill var customFirmware = false; @@ -646,19 +836,10 @@ function selectMachine(type) { if (lastSelectedMachine != type) { if (lastSelectedMachine.substr(0, 4) != type.substr(0, 4)) { - if (customFirmware) { - if (customFirmwareFile == 'acro') { + if (customFirmware == "acro") { Metro.dialog.create({ title: "Custom Firmware Required", - content: `
    The OpenBuilds Acro is a 2-axes machine. This requires a custom Grbl installation to allow 2-axes specific homing. - We can flash the new firmware for you right now. Proceeding will wipe the firmware from your controller and replace it with an Acro - specific version of Grbl. Would you like to proceed?

    Select your controller type:
    - `, + content: `
    The machine type you selected, needs a custom firmware. Please use the Firmware Flashing Wizard to upload a custom firmware image to the controller to properly support this machine.
    `, actions: [{ caption: "No Thank you", cls: "js-dialog-close", @@ -667,33 +848,46 @@ function selectMachine(type) { } }, { - caption: "I already flashed it", + caption: "Launch the Flashing Wizard", + cls: "js-dialog-close success", + onclick: function() { + populateGrblBuilderToolForm(); + setTimeout(function(){ + $('#grblAxesCount').data('select').val('2axes') + }, 500) + } + }, + + ] + }); + + console.log('This machine needs a custom firmware') + } + if (customFirmware == "acropen") { + Metro.dialog.create({ + title: "Custom Firmware Required", + content: `
    The machine type you selected, needs a custom firmware. Please use the Firmware Flashing Wizard to upload a custom firmware image to the controller to properly support this machine.
    `, + actions: [{ + caption: "No Thank you", cls: "js-dialog-close", onclick: function() { console.log("Do nothing") } }, { - caption: "Yes!", + caption: "Launch the Flashing Wizard", cls: "js-dialog-close success", onclick: function() { - $('#controlTab').click(); - $('#consoletab').click(); - $('#grblSettings').hide(); - $('.grblCalibrationMenu').addClass("disabled") - - var data = { - port: laststatus.comms.interfaces.activePort, - file: 'grbl1.1f-acro.hex', - board: $("#flashGrblController2").val() - } - socket.emit('flashGrbl', data) + populateGrblBuilderToolForm(); + setTimeout(function(){ + $('#grblAxesCount').data('select').val('servo') + }, 500) } }, ] }); - } + console.log('This machine needs a custom firmware') } } @@ -761,4 +955,4 @@ function setMachineButton(type) { } $('#context_toggle2').html(template); $('#overlayimg').html(``) -}; \ No newline at end of file +}; diff --git a/app/js/grblsettings.js b/app/js/grblsettings.js index 0e6e8f8..6878c20 100644 --- a/app/js/grblsettings.js +++ b/app/js/grblsettings.js @@ -65,6 +65,13 @@ function grblSettings(data) { $('#gotoYzeroMpos').addClass('disabled') $('#gotoZzeroMpos').addClass('disabled') } + + if (grblParams['$32'] == 1) { + console.log('Laser Mode Enabled') + $('#enLaser').removeClass('alert').addClass('success').html('ON') + } else { + $('#enLaser').removeClass('success').addClass('alert').html('OFF') + } } function grblPopulate() { @@ -75,38 +82,70 @@ function grblPopulate() {