Add support for M82/M83 absolute/relative extruder positions

master
Andrew Dalgleish 2013-02-04 16:53:01 +11:00
parent 357514ca0e
commit 53ce8953de
1 changed files with 8 additions and 1 deletions

View File

@ -59,6 +59,7 @@ class gcode(object):
totalMoveTimeMinute = 0.0 totalMoveTimeMinute = 0.0
scale = 1.0 scale = 1.0
posAbs = True posAbs = True
posAbsExtruder = True;
feedRate = 3600 feedRate = 3600
layerThickness = 0.1 layerThickness = 0.1
pathType = 'CUSTOM'; pathType = 'CUSTOM';
@ -139,7 +140,7 @@ class gcode(object):
totalMoveTimeMinute += (oldPos - pos).vsize() / feedRate totalMoveTimeMinute += (oldPos - pos).vsize() / feedRate
moveType = 'move' moveType = 'move'
if e is not None: if e is not None:
if posAbs: if posAbsExtruder:
if e > currentE: if e > currentE:
moveType = 'extrude' moveType = 'extrude'
if e < currentE: if e < currentE:
@ -190,8 +191,10 @@ class gcode(object):
pos.z = 0.0 pos.z = 0.0
elif G == 90: #Absolute position elif G == 90: #Absolute position
posAbs = True posAbs = True
posAbsExtruder = True
elif G == 91: #Relative position elif G == 91: #Relative position
posAbs = False posAbs = False
posAbsExtruder = False
elif G == 92: elif G == 92:
x = self.getCodeFloat(line, 'X') x = self.getCodeFloat(line, 'X')
y = self.getCodeFloat(line, 'Y') y = self.getCodeFloat(line, 'Y')
@ -216,6 +219,10 @@ class gcode(object):
pass pass
elif M == 81: #Suicide/disable power supply elif M == 81: #Suicide/disable power supply
pass pass
elif M == 82: # Use absolute extruder positions
posAbsExtruder = True
elif M == 83: # Use relative extruder positions
posAbsExtruder = False
elif M == 84: #Disable step drivers elif M == 84: #Disable step drivers
pass pass
elif M == 92: #Set steps per unit elif M == 92: #Set steps per unit