diff --git a/src/octoprint/server/api/settings.py b/src/octoprint/server/api/settings.py index 194e984f..36efd324 100644 --- a/src/octoprint/server/api/settings.py +++ b/src/octoprint/server/api/settings.py @@ -85,7 +85,9 @@ def getSettings(): "log": s.getBoolean(["serial", "log"]), "additionalPorts": s.get(["serial", "additionalPorts"]), "additionalBaudrates": s.get(["serial", "additionalBaudrates"]), - "longRunningCommands": s.get(["serial", "longRunningCommands"]) + "longRunningCommands": s.get(["serial", "longRunningCommands"]), + "checksumRequiringCommands": s.get(["serial", "checksumRequiringCommands"]), + "helloCommand": s.get(["serial", "helloCommand"]) }, "folder": { "uploads": s.getBaseFolder("uploads"), @@ -223,6 +225,8 @@ def setSettings(): if "additionalPorts" in data["serial"] and isinstance(data["serial"]["additionalPorts"], (list, tuple)): s.set(["serial", "additionalPorts"], data["serial"]["additionalPorts"]) if "additionalBaudrates" in data["serial"] and isinstance(data["serial"]["additionalBaudrates"], (list, tuple)): s.set(["serial", "additionalBaudrates"], data["serial"]["additionalBaudrates"]) if "longRunningCommands" in data["serial"] and isinstance(data["serial"]["longRunningCommands"], (list, tuple)): s.set(["serial", "longRunningCommands"], data["serial"]["longRunningCommands"]) + if "checksumRequiringCommands" in data["serial"] and isinstance(data["serial"]["checksumRequiringCommands"], (list, tuple)): s.set(["serial", "checksumRequiringCommands"], data["serial"]["checksumRequiringCommands"]) + if "helloCommand" in data["serial"]: s.set(["serial", "helloCommand"], data["serial"]["helloCommand"]) oldLog = s.getBoolean(["serial", "log"]) if "log" in data["serial"].keys(): s.setBoolean(["serial", "log"], data["serial"]["log"]) diff --git a/src/octoprint/static/js/app/viewmodels/settings.js b/src/octoprint/static/js/app/viewmodels/settings.js index 2bbe5b74..71df828d 100644 --- a/src/octoprint/static/js/app/viewmodels/settings.js +++ b/src/octoprint/static/js/app/viewmodels/settings.js @@ -133,6 +133,8 @@ $(function() { self.serial_additionalPorts = ko.observable(undefined); self.serial_additionalBaudrates = ko.observable(undefined); self.serial_longRunningCommands = ko.observable(undefined); + self.serial_checksumRequiringCommands = ko.observable(undefined); + self.serial_helloCommand = ko.observable(undefined); self.folder_uploads = ko.observable(undefined); self.folder_timelapse = ko.observable(undefined); @@ -433,6 +435,8 @@ $(function() { self.serial_additionalPorts(response.serial.additionalPorts.join("\n")); self.serial_additionalBaudrates(response.serial.additionalBaudrates.join(", ")); self.serial_longRunningCommands(response.serial.longRunningCommands.join(", ")); + self.serial_checksumRequiringCommands(response.serial.checksumRequiringCommands.join(", ")); + self.serial_helloCommand(response.serial.helloCommand); self.folder_uploads(response.folder.uploads); self.folder_timelapse(response.folder.timelapse); @@ -521,7 +525,9 @@ $(function() { "log": self.serial_log(), "additionalPorts": commentableLinesToArray(self.serial_additionalPorts()), "additionalBaudrates": _.map(splitTextToArray(self.serial_additionalBaudrates(), ",", true, function(item) { return !isNaN(parseInt(item)); }), function(item) { return parseInt(item); }), - "longRunningCommands": splitTextToArray(self.serial_longRunningCommands(), ",", true) + "longRunningCommands": splitTextToArray(self.serial_longRunningCommands(), ",", true), + "checksumRequiringCommands": splitTextToArray(self.serial_checksumRequiringCommands(), ",", true), + "helloCommand": self.serial_helloCommand() }, "folder": { "uploads": self.folder_uploads(), diff --git a/src/octoprint/templates/dialogs/settings/serialconnection.jinja2 b/src/octoprint/templates/dialogs/settings/serialconnection.jinja2 index e6b0e3e0..153c2b0e 100644 --- a/src/octoprint/templates/dialogs/settings/serialconnection.jinja2 +++ b/src/octoprint/templates/dialogs/settings/serialconnection.jinja2 @@ -70,13 +70,6 @@ -
123456. Comma separated.')|format(glob_url="http://docs.python.org/2/library/glob.html") }}