@@ -38,8 +38,9 @@ Changelog
38
38
25 Jan 2021 - V1.0.24 : Improve coolant codes
39
39
26 Jan 2021 - V1.0.25 : Plasma pierce height, and probe
40
40
29 Aug 2021 - V1.0.26 : Regroup properties for display, Z height check options
41
+ 03 Sep 2021 - V1.0.27 : Fix arc ramps not changing Z when they should have
41
42
*/
42
- obversion = ' V1.0.26 ' ;
43
+ obversion = ' V1.0.27 ' ;
43
44
description = " OpenBuilds CNC : GRBL/BlackBox" ; // cannot have brackets in comments
44
45
vendor = " OpenBuilds" ;
45
46
vendorUrl = " https://openbuilds.com" ;
@@ -228,10 +229,6 @@ var sOutput = createVariable({prefix:"S", force:false}, rpmFormat);
228
229
var mOutput = createVariable({force:false}, mFormat); // only use for M3/4/5
229
230
230
231
// for arcs
231
- var xaOutput = createVariable({prefix:" X" , force:true}, arcFormat);
232
- var yaOutput = createVariable({prefix:" Y" , force:true}, arcFormat);
233
- var zaOutput = createVariable({prefix:" Z" , force:false}, arcFormat);
234
-
235
232
var iOutput = createReferenceVariable({prefix:" I" , force:true}, arcFormat);
236
233
var jOutput = createReferenceVariable({prefix:" J" , force:true}, arcFormat);
237
234
var kOutput = createReferenceVariable({prefix:" K" , force:true}, arcFormat);
@@ -676,9 +673,6 @@ function forceXYZ()
676
673
xOutput.reset();
677
674
yOutput.reset();
678
675
zOutput.reset();
679
- xaOutput.reset();
680
- yaOutput.reset();
681
- zaOutput.reset();
682
676
}
683
677
684
678
function forceAny()
@@ -1074,7 +1068,7 @@ function onLinear5D(_x, _y, _z, _a, _b, _c, feed)
1074
1068
function onCircular(clockwise, cx, cy, cz, x, y, z, feed)
1075
1069
{
1076
1070
var start = getCurrentPosition();
1077
- xOutput.reset();
1071
+ xOutput.reset(); // always have X and Y, Z will output of it changed
1078
1072
yOutput.reset();
1079
1073
1080
1074
// arcs smaller than bitradius always have significant radius errors, so get radius and linearize them (because we cannot change minimumCircularRadius here)
@@ -1101,22 +1095,22 @@ function onCircular(clockwise, cx, cy, cz, x, y, z, feed)
1101
1095
{
1102
1096
case PLANE_XY:
1103
1097
if (!isLaser && !isPlasma)
1104
- writeBlock(gPlaneModal.format(17), gMotionModal.format(clockwise ? 2 : 3), xaOutput .format(x), yaOutput .format(y), zaOutput .format(z), iOutput.format(cx - start.x, 0), jOutput.format(cy - start.y, 0), feedOutput.format(feed));
1098
+ writeBlock(gPlaneModal.format(17), gMotionModal.format(clockwise ? 2 : 3), xOutput .format(x), yOutput .format(y), zOutput .format(z), iOutput.format(cx - start.x, 0), jOutput.format(cy - start.y, 0), feedOutput.format(feed));
1105
1099
else
1106
1100
{
1107
1101
zo = properties.UseZ ? zOutput.format(z) : " " ;
1108
- writeBlock(gPlaneModal.format(17), gMotionModal.format(clockwise ? 2 : 3), xaOutput .format(x), yaOutput .format(y), zo, iOutput.format(cx - start.x, 0), jOutput.format(cy - start.y, 0), feedOutput.format(feed));
1102
+ writeBlock(gPlaneModal.format(17), gMotionModal.format(clockwise ? 2 : 3), xOutput .format(x), yOutput .format(y), zo, iOutput.format(cx - start.x, 0), jOutput.format(cy - start.y, 0), feedOutput.format(feed));
1109
1103
}
1110
1104
break;
1111
1105
case PLANE_ZX:
1112
1106
if (!isLaser)
1113
- writeBlock(gPlaneModal.format(18), gMotionModal.format(clockwise ? 2 : 3), xaOutput .format(x), yaOutput .format(y), zaOutput .format(z), iOutput.format(cx - start.x, 0), kOutput.format(cz - start.z, 0), feedOutput.format(feed));
1107
+ writeBlock(gPlaneModal.format(18), gMotionModal.format(clockwise ? 2 : 3), xOutput .format(x), yOutput .format(y), zOutput .format(z), iOutput.format(cx - start.x, 0), kOutput.format(cz - start.z, 0), feedOutput.format(feed));
1114
1108
else
1115
1109
linearize(tolerance);
1116
1110
break;
1117
1111
case PLANE_YZ:
1118
1112
if (!isLaser)
1119
- writeBlock(gPlaneModal.format(19), gMotionModal.format(clockwise ? 2 : 3), xaOutput .format(x), yaOutput .format(y), zaOutput .format(z), jOutput.format(cy - start.y, 0), kOutput.format(cz - start.z, 0), feedOutput.format(feed));
1113
+ writeBlock(gPlaneModal.format(19), gMotionModal.format(clockwise ? 2 : 3), xOutput .format(x), yOutput .format(y), zOutput .format(z), jOutput.format(cy - start.y, 0), kOutput.format(cz - start.z, 0), feedOutput.format(feed));
1120
1114
else
1121
1115
linearize(tolerance);
1122
1116
break;
0 commit comments