From 406282fe2c4ad719eeb004859cb940ae410d6e3b Mon Sep 17 00:00:00 2001 From: Joerg Lehmann Date: Thu, 19 Dec 2019 14:15:24 +0100 Subject: [PATCH] weight in gram cab be bigger as max(uint16) --- lorahandler.go | 4 ++-- persistence.go | 14 +++++++------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lorahandler.go b/lorahandler.go index dcb0d33..47902af 100644 --- a/lorahandler.go +++ b/lorahandler.go @@ -285,11 +285,11 @@ func WriteDatapoint(mytime int64, deveui string, devaddr string, v uint8, h uint if (fw_version > 0) { sfw = fmt.Sprintf(",fw_version=%di,w1=%di,w2=%di,w1_0=%di,w2_0=%di,w1_c=%f,w2_c=%f",fw_version,w1,w2,w1_0,w2_0,w1_c,w2_c) } - s = fmt.Sprintf("measurement,deveui=%s devaddr=\"%s\",%sh=%di,p=%di,w=%di,t=%.1f,lrrlat=%f,lrrlon=%f%s %d\n",deveui,devaddr,sv,h,int32(p)+825,w*5,float32(t)/10,lrrlat,lrrlon,sfw,mytime*60*1000*1000*1000) + s = fmt.Sprintf("measurement,deveui=%s devaddr=\"%s\",%sh=%di,p=%di,w=%di,t=%.1f,lrrlat=%f,lrrlon=%f%s %d\n",deveui,devaddr,sv,h,int32(p)+825,uint32(w)*5,float32(t)/10,lrrlat,lrrlon,sfw,mytime*60*1000*1000*1000) WriteStringToFile(s) - w_gram := w*5 + w_gram := uint32(w)*5 addValue(deveui,w_gram) w_loss := getMaxValue(deveui) - w_gram; if (w_loss > 500) { diff --git a/persistence.go b/persistence.go index b221681..a8a1a9b 100644 --- a/persistence.go +++ b/persistence.go @@ -63,7 +63,7 @@ func initDB() { // wir machen einen Connection Test ping(conn) - addValue("0000000000000000",uint16(time.Now().Unix())); + addValue("0000000000000000",uint32(time.Now().Unix())); } func closeDB() { @@ -83,9 +83,9 @@ func checkDevAvailable(deveui string) bool { return false } -func getMaxValue(deveui string) uint16 { - var res uint16 = 0 - var myvalues []uint16 +func getMaxValue(deveui string) uint32 { + var res uint32 = 0 + var myvalues []uint32 conn := globalPool.Get() defer conn.Close() @@ -97,15 +97,15 @@ func getMaxValue(deveui string) uint16 { } for _, value := range myvalues { - if (uint16(value) > res) { - res = uint16(value) + if (uint32(value) > res) { + res = uint32(value) } } return res } -func addValue(deveui string, value uint16) { +func addValue(deveui string, value uint32) { conn := globalPool.Get() defer conn.Close()