package hardware import ( "encoding/binary" snap7 "github.com/danclive/snap7-go" ) type Siemens struct { client snap7.Snap7Client } func NewSiemens(client snap7.Snap7Client) Siemens { return Siemens{client: client} } func (s Siemens) Read() (uint16, error) { db, err := s.client.DBRead(1, 0, 8) if err != nil { return 0, err } value := binary.BigEndian.Uint16(db[2:4]) return value, nil }