Modbus: mimic mbmd

This commit is contained in:
andig 2024-08-13 17:21:12 +02:00
parent ab570ebf55
commit 660f2c6c42

View file

@ -2,6 +2,7 @@ package modbus
import (
"sync"
"time"
"github.com/grid-x/modbus"
"github.com/volkszaehler/mbmd/meters"
@ -16,7 +17,12 @@ func (l *logger) WithLogger(logger modbus.Logger, fun func() ([]byte, error)) ([
l.mu.Lock()
defer l.mu.Unlock()
l.logger = logger
if l.logger != logger {
// small delay when switching logger/ slave id to mimic mbmd behavior
time.Sleep(10 * time.Millisecond)
l.logger = logger
}
return fun()
}