diff --git a/source/_components/sensor.thermoworks_smoke.markdown b/source/_components/sensor.thermoworks_smoke.markdown new file mode 100644 index 00000000000..11098e72a8c --- /dev/null +++ b/source/_components/sensor.thermoworks_smoke.markdown @@ -0,0 +1,133 @@ +--- +layout: page +title: "ThermoWorks Smoke Sensor" +description: "Pulls temperature data for a ThermoWorks Smoke Thermometer connected with Smoke Gateway." +date: 2018-08-22 17:00 +sidebar: true +comments: false +sharing: true +footer: true +logo: thermoworks.png +ha_category: Sensor +ha_release: 0.81.0 +ha_iot_class: "Cloud Polling" +--- + +The `thermoworks_smoke` sensor platform pulls data for your [ThermoWorks Smoke Thermometer](https://www.thermoworks.com/Smoke). +This requires a [Smoke WiFi Gateway](https://www.thermoworks.com/Smoke-Gateway) with an internet connection. + +You will need to have previously registered your smoke to your account via the mobile app and provide +the email and password you used to in the configuration for this sensor in order to connect and pull your data. + +## {% linkable_title Configuration %} + +To add the sensors to your installation, add the following to your `configuration.yaml` file: + +```yaml +# Example configuration.yaml entry +sensor: + - platform: thermoworks_smoke + email: "your email here" + password: !secret thermoworks_pass +``` + +{% configuration %} +email: + description: The email address with the device registered in the thermoworks smoke mobile app. + required: true + type: string +password: + description: The password registered in the thermoworks smoke mobile app. + required: true + type: string +monitored_conditions: + description: The sensors to add. Default is `probe1` and `probe2`. The full list is `probe1`, `probe2`, `probe1_min`, `probe1_max`, `probe2_min`, `probe2_max`. + required: false + type: list +exclude: + description: Device serial numbers to ignore. + required: false + type: list +{% endconfiguration %} + +## {% linkable_title Examples %} + +This section includes some examples of how to use this sensor. + +### {% linkable_title Only Probe 1 %} + +This will show only Probe 1 with min and max data. + +{% raw %} +```yaml +# Example configuration.yaml entry +sensor: + - platform: thermoworks_smoke + email: "your email here" + password: !secret thermoworks_pass + monitored_conditions: + - probe1 + - probe1_min + - probe1_max +``` +{% endraw %} + +### {% linkable_title Ignore a Device %} + +This will exclude a device from creating sensors. You would replace `"00:00:00:00:00:00"` with your device's serial number. + +{% raw %} +```yaml +# Example configuration.yaml entry +sensor: + - platform: thermoworks_smoke + email: "your email here" + password: !secret thermoworks_pass + exclude: + - "00:00:00:00:00:00" +``` +{% endraw %} + +### {% linkable_title Notify when Probe 1 goes above a certain temperature %} + +This will use an automation to trigger a notification when Probe 1 goes above a temperature stored in an input_number variable. +By default, your smoke is named "My Smoke" in the app. If you have changed it you will need to change the sensor name from `my_smoke_probe_1` to `your_name_probe_1`. + +{% raw %} +```yaml +# Example configuration.yaml entry +sensor: + - platform: thermoworks_smoke + email: "your email here" + password: !secret thermoworks_pass + +input_number: + smoke_probe_1_threshold: + name: Smoke Probe 1 Threshold + min: -40 + max: 500 + step: 0.5 + unit_of_measurement: '°F' + icon: mdi:thermometer + +automation: + - alias: Alert when My Smoke Probe 1 is above threshold + trigger: + platform: template + value_template: >- + {% if (states("sensor.my_smoke_probe_1") | float) > (states("input_number.smoke_probe_1_threshold") | float) %} + True + {% else %} + False + {% endif %} + action: + - service: notify.all + data: + message: > + {{- state_attr('sensor.my_smoke_probe_1','friendly_name') }} is above + {{- ' '+states("input_number.smoke_probe_1_threshold") -}} + {{- state_attr('sensor.my_smoke_probe_1','unit_of_measurement') }} at + {{- ' '+states("sensor.my_smoke_probe_1") -}} + {{- state_attr('sensor.my_smoke_probe_1','unit_of_measurement') }} +``` +{% endraw %} diff --git a/source/images/supported_brands/thermoworks.png b/source/images/supported_brands/thermoworks.png new file mode 100644 index 00000000000..fad4d2666f6 Binary files /dev/null and b/source/images/supported_brands/thermoworks.png differ