From 1f5891865f10e9c0ec5ea609fca341ab213254d3 Mon Sep 17 00:00:00 2001 From: Vitor de Miranda Henrique Date: Fri, 3 Mar 2017 13:28:28 -0600 Subject: [PATCH] custom g-code for filament detection --- octoprint_enclosure/__init__.py | 82 ++++++++++--------- octoprint_enclosure/static/js/enclosure.js | 14 +++- .../templates/enclosure_settings.jinja2 | 56 +++++++------ 3 files changed, 87 insertions(+), 65 deletions(-) diff --git a/octoprint_enclosure/__init__.py b/octoprint_enclosure/__init__.py index 0f297f7..947a19e 100644 --- a/octoprint_enclosure/__init__.py +++ b/octoprint_enclosure/__init__.py @@ -85,14 +85,13 @@ class EnclosurePlugin(octoprint.plugin.StartupPlugin, self.filamentSensor = EnclosureGPIO(self._settings.get_int(["filamentSensorPin"]),"filamentSensor",self._settings.get(["filamentSensorActiveLow"]), self._settings.get(["filamentSensorEnable"]),False,False,0,False) - self.io1.configureGPIO() self.io2.configureGPIO() self.io3.configureGPIO() self.io4.configureGPIO() self.heater.configureGPIO() self.filamentSensor.configureGPIO() - + self._settings.set(["useCelsius"],not self._settings.get(["useFahrenheit"])) def startTimer(self): @@ -107,46 +106,46 @@ class EnclosurePlugin(octoprint.plugin.StartupPlugin, return 0 def checkEnclosureTemp(self): - if self._settings.get(["dhtModel"]) == 1820 or self._settings.get(["dhtModel"]) == '1820': - stdout = Popen("sudo "+self._settings.get(["getTempScript"])+" "+str(self._settings.get(["dhtModel"])), shell=True, stdout=PIPE).stdout - else: - stdout = Popen("sudo "+self._settings.get(["getTempScript"])+" "+str(self._settings.get(["dhtModel"]))+" "+str(self._settings.get(["dhtPin"])), shell=True, stdout=PIPE).stdout - sTemp = stdout.read() - if self._settings.get(["debug"]) == True and self._settings.get(["heaterEnable"]) == True: - self._logger.info("DEBUG -> Reading temperature stdout: %s",stdout) - sTemp.replace(" ", "") - fTemp = self.toFloat(sTemp) - if sTemp.find("Failed") != -1 or fTemp == 0: - if self._settings.get(["heaterEnable"]) == True: + if self._settings.get(["temperatureReadingEnable"]): + if self._settings.get(["dhtModel"]) == 1820 or self._settings.get(["dhtModel"]) == '1820': + stdout = Popen("sudo "+self._settings.get(["getTempScript"])+" "+str(self._settings.get(["dhtModel"])), shell=True, stdout=PIPE).stdout + else: + stdout = Popen("sudo "+self._settings.get(["getTempScript"])+" "+str(self._settings.get(["dhtModel"]))+" "+str(self._settings.get(["dhtPin"])), shell=True, stdout=PIPE).stdout + sTemp = stdout.read() + if self._settings.get(["debug"]) == True: + self._logger.info("DEBUG -> Reading temperature stdout: %s",stdout) + sTemp.replace(" ", "") + fTemp = self.toFloat(sTemp) + if sTemp.find("Failed") != -1 or fTemp == 0: self._logger.info("Failed to read Temperature") - else: - self.enclosureCurrentTemperature = fTemp*1.8 + 32 if self._settings.get(["useFahrenheit"]) else fTemp + else: + self.enclosureCurrentTemperature = fTemp*1.8 + 32 if self._settings.get(["useFahrenheit"]) else fTemp - if self._settings.get(["dhtModel"]) != '1820': - stdout = Popen("sudo "+self._settings.get(["getHumiScript"])+" "+str(self._settings.get(["dhtModel"]))+" "+str(self._settings.get(["dhtPin"])), shell=True, stdout=PIPE).stdout - sHum = stdout.read() - if self._settings.get(["debug"]) == True and self._settings.get(["heaterEnable"]) == True: - self._logger.info("DEBUG -> Reading humidity stdout: %s",stdout) + if self._settings.get(["dhtModel"]) != '1820': + stdout = Popen("sudo "+self._settings.get(["getHumiScript"])+" "+str(self._settings.get(["dhtModel"]))+" "+str(self._settings.get(["dhtPin"])), shell=True, stdout=PIPE).stdout + sHum = stdout.read() + if self._settings.get(["debug"]) == True: + self._logger.info("DEBUG -> Reading humidity stdout: %s",stdout) sHum.replace(" ", "") fHum = self.toFloat(sHum) if sHum.find("Failed") != -1 or fHum == 0: - if self._settings.get(["heaterEnable"]) == True: - self._logger.info("Failed to read Humidity") + self._logger.info("Failed to read Humidity") else: self.enclosureCurrentHumidity = fHum - self._plugin_manager.send_plugin_message(self._identifier, dict(enclosuretemp=self.enclosureCurrentTemperature,enclosureHumidity=self.enclosureCurrentHumidity)) - self.heaterHandler() + self._plugin_manager.send_plugin_message(self._identifier, dict(enclosuretemp=self.enclosureCurrentTemperature,enclosureHumidity=self.enclosureCurrentHumidity)) + self.heaterHandler() def heaterHandler(self): - self.currrentHeaterStatus = self.enclosureCurrentTemperature{{ _('Heater') }} -
-
-
- -
-
-
- -
- -
-
-
- -
-
- -

{{ _('Temperature Sensor') }}

Available options are: 11 for DHT11; 22 for DHT22; 2302 for AM2302; 1820 for DS18B20 1-wire temperature sensor +
+ +
@@ -55,6 +37,28 @@ Available options are: 11 for DHT11; 22 for DHT22; 2302 for AM2302; 1820 for DS1
+

{{ _('Heater') }}

+
+
+
+ +
+
+
+ +
+ +
+
+
+ +
+
+

{{ _('IO 1') }}

@@ -236,6 +240,12 @@ Available options are: 11 for DHT11; 22 for DHT22; 2302 for AM2302; 1820 for DS1 {{ _('Active Low') }}
+
+ +
+ +
+

{{ _('Debug / Other') }}