Merge branch 'mrbeam' into mrbeam-dev

This commit is contained in:
make-ing 2016-06-02 15:28:11 +02:00
commit 36837246fe
2 changed files with 20 additions and 13 deletions

View file

@ -132,14 +132,9 @@ $(function(){
}; };
self.getXYCoord = function(evt){ self.getXYCoord = function(evt){
if(isFirefox) { var scale = evt.target.parentElement.transform.baseVal[0].matrix.a;
var scale = evt.target.parentElement.transform.baseVal[0].matrix.a; var x = self.px2mm(evt.offsetX) * scale;
var x = self.px2mm(evt.offsetX) * scale; var y = self.px2mm(parseFloat(evt.target.attributes.height.value) - evt.offsetY) * scale;
var y = self.px2mm(parseFloat(evt.target.attributes.height.value) - evt.offsetY) * scale;
} else {
var x = self.px2mm(evt.offsetX);
var y = self.px2mm(evt.target.ownerSVGElement.getBoundingClientRect().height - evt.offsetY); // hopefully this works across browsers
}
x = Math.min(x, self.workingAreaWidthMM()); x = Math.min(x, self.workingAreaWidthMM());
y = Math.min(y, self.workingAreaHeightMM()); y = Math.min(y, self.workingAreaHeightMM());
return {x:x, y:y}; return {x:x, y:y};

View file

@ -88,7 +88,7 @@ class MachineCom(object):
self._finished_passes = 0 self._finished_passes = 0
# regular expressions # regular expressions
self._regex_command = re.compile("^\s*\$?([GM]\d+|[TH])") self._regex_command = re.compile("^\s*\$?([GM]\d+|[THX])")
self._regex_feedrate = re.compile("F\d+", re.IGNORECASE) self._regex_feedrate = re.compile("F\d+", re.IGNORECASE)
self._regex_intensity = re.compile("S\d+", re.IGNORECASE) self._regex_intensity = re.compile("S\d+", re.IGNORECASE)
@ -147,7 +147,7 @@ class MachineCom(object):
elif line.startswith('['): # feedback message elif line.startswith('['): # feedback message
self._handle_feedback_message(line) self._handle_feedback_message(line)
elif line.startswith('Grb'): # Grbl startup message elif line.startswith('Grb'): # Grbl startup message
self._handle_startup_message() self._handle_startup_message(line)
except: except:
self._logger.exception("Something crashed inside the monitoring loop, please report this to Mr. Beam") self._logger.exception("Something crashed inside the monitoring loop, please report this to Mr. Beam")
errorMsg = "See octoprint.log for details" errorMsg = "See octoprint.log for details"
@ -405,7 +405,7 @@ class MachineCom(object):
elif line[1:].startswith('Dis'): # [Disabled] elif line[1:].startswith('Dis'): # [Disabled]
pass pass
def _handle_startup_message(self): def _handle_startup_message(self, line):
if self.isOperational(): if self.isOperational():
errorMsg = "Machine reset." errorMsg = "Machine reset."
self._cmd = None self._cmd = None
@ -420,7 +420,14 @@ class MachineCom(object):
self._changeState(self.STATE_LOCKED) self._changeState(self.STATE_LOCKED)
eventManager().fire(Events.ERROR, {"error": self.getErrorString()}) eventManager().fire(Events.ERROR, {"error": self.getErrorString()})
else: else:
self._onConnected(self.STATE_LOCKED) versionMatch = re.search("Grbl (?P<grbl>.+?)(_(?P<git>[0-9a-f]{7})(?P<dirty>-dirty)?)? \[.+\]", line)
if versionMatch:
versionDict = versionMatch.groupdict()
self._writeGrblVersionToFile(versionDict)
if self._compareGrblVersion(versionDict) is False:
self._flashGrbl()
else:
self._onConnected(self.STATE_LOCKED)
def _update_grbl_pos(self, line): def _update_grbl_pos(self, line):
# line example: # line example:
@ -611,7 +618,7 @@ class MachineCom(object):
params = ["avrdude", "-patmega328p", "-carduino", "-b" + str(self._baudrate), "-P" + str(self._port), "-D", "-Uflash:w:" + pathToGrblHex] params = ["avrdude", "-patmega328p", "-carduino", "-b" + str(self._baudrate), "-P" + str(self._port), "-D", "-Uflash:w:" + pathToGrblHex]
rc = subprocesscall(params) rc = subprocesscall(params)
if rc is False: if rc == 0:
self._log("successfully flashed new grbl version") self._log("successfully flashed new grbl version")
self._openSerial() self._openSerial()
self._changeState(self.STATE_CONNECTING) self._changeState(self.STATE_CONNECTING)
@ -748,6 +755,10 @@ class MachineCom(object):
self._changeState(self.STATE_HOMING) self._changeState(self.STATE_HOMING)
return cmd return cmd
def _gcode_X_sent(self, cmd, cmd_type=None):
self._changeState(self.STATE_HOMING) # TODO: maybe change to seperate $X mode
return cmd
def _gcode_Hold_sent(self, cmd, cmd_type=None): def _gcode_Hold_sent(self, cmd, cmd_type=None):
self._changeState(self.STATE_PAUSED) self._changeState(self.STATE_PAUSED)
return cmd return cmd
@ -1275,6 +1286,7 @@ def serialList():
baselist = baselist \ baselist = baselist \
+ glob.glob("/dev/ttyUSB*") \ + glob.glob("/dev/ttyUSB*") \
+ glob.glob("/dev/ttyACM*") \ + glob.glob("/dev/ttyACM*") \
+ glob.glob("/dev/ttyAMA*") \
+ glob.glob("/dev/tty.usb*") \ + glob.glob("/dev/tty.usb*") \
+ glob.glob("/dev/cu.*") \ + glob.glob("/dev/cu.*") \
+ glob.glob("/dev/cuaU*") \ + glob.glob("/dev/cuaU*") \