diff --git a/src/grove/grove.cxx b/src/grove/grove.cxx index 264a3144..254867ca 100644 --- a/src/grove/grove.cxx +++ b/src/grove/grove.cxx @@ -81,9 +81,9 @@ GroveTemp::~GroveTemp() int GroveTemp::value () { int a = mraa_aio_read(m_aio); - float r = (float)(1023-a)*10000/a; - float t = 1/(log(r/10000)/3975 + 1/298.15)-273.15; - return (int) t; + float r = (float)(1023.0-a)*10000.0/a; + float t = 1.0/(log(r/10000.0)/3975.0 + 1.0/298.15)-273.15; + return (int) round(t); } float GroveTemp::raw_value()