From cb6a415015ee312548c814594092f45ce36c7104 Mon Sep 17 00:00:00 2001 From: Kevin Lyda <kevin@ie.suberic.net> Date: Tue, 31 Jan 2017 20:32:34 +0000 Subject: [PATCH] Implement gettemp. --- devices/geiger/gqgmc.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/devices/geiger/gqgmc.go b/devices/geiger/gqgmc.go index 94ed1b8..aca8f42 100644 --- a/devices/geiger/gqgmc.go +++ b/devices/geiger/gqgmc.go @@ -10,6 +10,7 @@ package geiger import ( "errors" "fmt" + "strconv" "time" "github.com/tarm/serial" @@ -334,6 +335,26 @@ func (gc *GQGMCCounter) GetTime() (time.Time, error) { return t, nil } +// GetTemp gets the time +func (gc *GQGMCCounter) GetTemp() (float64, error) { + t, err := gc.communicate(cmdGetTemp, 4) + if err != nil { + return 0, err + } + + var temp float64 + temp, err = strconv.ParseFloat(fmt.Sprintf("%d.%d", uint8(t[0]), uint8(t[1])), 64) + if err != nil { + return 0, err + } + if t[2] != 0 { + temp = -temp + } + return temp, nil +} + +// cmdGetGyro = "<GETGYRO>>" // GMC-320 Re.3.01 + // FactoryReset does a factory reset func (gc *GQGMCCounter) FactoryReset() { gc.sendCmd(cmdFactoryReset) -- GitLab