Checking status

Hi,
I modified a DH (Simulated temperature sensor) but in ST app in the tile I have always “Checking status” …

What is the problem?

How I can solve?

/**
*  Copyright 2014 SmartThings
*
*  Licensed under the Apache License, Version 2.0 (the "License"); you may not use           this file except
*  in compliance with the License. You may obtain a copy of the License at:
*
*      http://www.apache.org/licenses/LICENSE-2.0
*
*  Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
*  on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License
*  for the specific language governing permissions and limitations under the License.
*
*/
metadata {
// Automatically generated. Make future change here.
definition (name: "My tile value", value: "giamma/testing", author: "Giamma") {
    capability "Temperature Measurement"
  
    command "setTemperature", ["number"]
}

// UI tile definitions
tiles {
    valueTile("temperature", "device.temperature", width: 2, height: 2) {
        state("temperature", label:'${currentValue}', unit:"F",
            backgroundColors:[
                [value: 31, color: "#153591"],
                [value: 44, color: "#1e9cbb"],
                [value: 59, color: "#90d2a7"],
                [value: 74, color: "#44b621"],
                [value: 84, color: "#f1d801"],
                [value: 95, color: "#d04e00"],
                [value: 96, color: "#bc2323"]
            ]
        )
    }
    main "temperature"
    details("temperature","up","down")
}
}

// Parse incoming device messages to generate events
def parse(String description) {
def pair = description.split(":")
createEvent(name: pair[0].trim(), value: pair[1].trim(), unit:"F")
}

def installed() {
initialize()
}

def updated() {
initialize()
}

def initialize() {
sendEvent(name: "DeviceWatch-DeviceStatus", value: "online")
sendEvent(name: "healthStatus", value: "online")
sendEvent(name: "DeviceWatch-Enroll", value: [protocol: "cloud", scheme:"untracked"].encodeAsJson(), displayed: false)
if (!device.currentState("temperature")) {
    setTemperature(getTemperature())
}
}
def setLevel(value, rate = null) {
setTemperature(value)
}

def setTemperature(value) {
sendEvent(name:"temperature", value: value)
}

private getTemperature() {
def ts = device.currentState("temperature")
Integer value = ts ? ts.integerValue : 72
return value
}

What are you trying to accomplish?

I’m trying to do this …

The temperature value appears correctly at the Detail View?
This capability is configured to show the temperature and unit, as you didn’t include the unit property in the event, this could be causing the issue. The possible values are C or F. Eg.

sendEvent(name: "temperature", value: "45", unit:"F")

With your update the problem is fixed!

Thank you @nayelyz, thank you very much …

1 Like