weight in gram cab be bigger as max(uint16)

This commit is contained in:
Joerg Lehmann 2019-12-19 14:15:24 +01:00
parent 8f5e75f28e
commit 406282fe2c
2 changed files with 9 additions and 9 deletions

View File

@ -285,11 +285,11 @@ func WriteDatapoint(mytime int64, deveui string, devaddr string, v uint8, h uint
if (fw_version > 0) { 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) 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) WriteStringToFile(s)
w_gram := w*5 w_gram := uint32(w)*5
addValue(deveui,w_gram) addValue(deveui,w_gram)
w_loss := getMaxValue(deveui) - w_gram; w_loss := getMaxValue(deveui) - w_gram;
if (w_loss > 500) { if (w_loss > 500) {

View File

@ -63,7 +63,7 @@ func initDB() {
// wir machen einen Connection Test // wir machen einen Connection Test
ping(conn) ping(conn)
addValue("0000000000000000",uint16(time.Now().Unix())); addValue("0000000000000000",uint32(time.Now().Unix()));
} }
func closeDB() { func closeDB() {
@ -83,9 +83,9 @@ func checkDevAvailable(deveui string) bool {
return false return false
} }
func getMaxValue(deveui string) uint16 { func getMaxValue(deveui string) uint32 {
var res uint16 = 0 var res uint32 = 0
var myvalues []uint16 var myvalues []uint32
conn := globalPool.Get() conn := globalPool.Get()
defer conn.Close() defer conn.Close()
@ -97,15 +97,15 @@ func getMaxValue(deveui string) uint16 {
} }
for _, value := range myvalues { for _, value := range myvalues {
if (uint16(value) > res) { if (uint32(value) > res) {
res = uint16(value) res = uint32(value)
} }
} }
return res return res
} }
func addValue(deveui string, value uint16) { func addValue(deveui string, value uint32) {
conn := globalPool.Get() conn := globalPool.Get()
defer conn.Close() defer conn.Close()