[RELEASE] Ecobee Suite, version 1.9.00

That's an odd bug - Groovy is supposed to cast the temp value to a BigDecimal when doing the math.

Try replacing the following code in ecobee suite smart humidity, starting at line 638 through 664 (inclusive):

// Calculate a close approximation of Dewpoint based on Temperature & Relative Humidity
//    TD: =243.04*(LN(RH/100)+((17.625*T)/(243.04+T)))/(17.625-LN(RH/100)-((17.625*T)/(243.04+T)))
def calculateDewpoint( BigDecimal temp, rh, units) {
	def t = ((units == 'C') ? temp : fToC(temp)) as BigDecimal
	def dpC = 243.04*(Math.log(rh/100.0)+((17.625*t)/(243.04+t)))/(17.625-Math.log(rh/100.0)-((17.625*t)/(243.04+t)))
    return (units == 'C') ? roundIt(dpC, 2) : roundIt(cToF(dpC), 1)
}
// Calculate a close approximation of Relative Humidity based on Temperature and Dewpoint
//    RH: =100*(EXP((17.625*TD)/(243.04+TD))/EXP((17.625*T)/(243.04+T)))
def calculateRelHumidity( BigDecimal temp, dp, units) {
	def t  = ((units == 'C') ? temp : fToC(temp)) as BigDecimal
    def td = ((units == 'C') ? dp	: fToC(dp))   as BigDecimal
    def rh = 100*((Math.exp((17.625*td)/(243.04+td)))/(Math.exp((17.625*t)/(243.04+t))))
    return roundIt(rh, 0)
}
def roundIt( value, decimals=0 ) {
	return (value == null) ? null : value.toBigDecimal().setScale(decimals, BigDecimal.ROUND_HALF_DOWN) 
}
def roundIt( BigDecimal value, decimals=0) {
	return (value == null) ? null : value.setScale(decimals, BigDecimal.ROUND_HALF_DOWN) 
}
def cToF(BigDecimal temp) {
	return (temp != null) ? ((temp * 1.8) + 32) : null
}
def fToC(BigDecimal temp) {	
	return (temp != null) ? ((temp - 32) / 1.8) : null
}

Let me know if that works, and I'll update the master code...