Don't exit on max retries in updateRegisters

This commit is contained in:
Jarno Rankinen 2024-03-07 22:38:18 +02:00
parent d9fbbfac1c
commit ea8ca1a6df
2 changed files with 4 additions and 3 deletions

View File

@ -25,7 +25,7 @@ import (
var static embed.FS var static embed.FS
var ( var (
version = "0.1.0" version = "0.1.1"
device pingvin.Pingvin device pingvin.Pingvin
config Conf config Conf
usernamehash [32]byte usernamehash [32]byte

View File

@ -310,11 +310,12 @@ func (p *Pingvin) updateRegisters() {
if len(results) > 0 { if len(results) > 0 {
break break
} else if retries == 4 { } else if retries == 4 {
log.Fatal("updateRegisters: client.ReadHoldingRegisters: ", err) log.Printf("ERROR: updateRegisters: max retries reached, giving up. client.ReadHoldingRegisters: ", err)
return
} else if err != nil { } else if err != nil {
log.Printf("WARNING: updateRegisters: client.ReadHoldingRegisters attempt %d: %s", retries, err) log.Printf("WARNING: updateRegisters: client.ReadHoldingRegisters attempt %d: %s", retries, err)
} }
time.Sleep(100 * time.Millisecond) time.Sleep(200 * time.Millisecond)
} }
// The values represent 16 bit integers, but modbus works with bytes // The values represent 16 bit integers, but modbus works with bytes
// Each even byte of the returned []byte is the 8 MSBs of a new 16-bit // Each even byte of the returned []byte is the 8 MSBs of a new 16-bit