Closed tazle closed 1 month ago
I think I'll add a discovery config struct for those two things:
struct Discovery {
/// Addresses to check for the SunS identifier (default: [0, 40000, 50000])
info_model_addrs: Vec<u16>,
/// Timeout to be applied for every `read_holding_register` call
read_timeout: Duration,
}
This sounds excellent.
Sorry for taking so long. I completely forgot about that. I implemented that feature some time ago but simply forgot to push and release it. :facepalm:
@tazle I just pushed sunspec 0.5.0
to crates.io:
I'm not too happy about having to carry a context and config structure around. I think a 0.6
release will add an actual Client
structure which is a bit more ergonomic to use.
Thank you! I'll check it out when I next touch our sunspec-utilizing code.
Hi,
We are dealing with a device that claims to be Sunpec-compliant, but fails to respond to reads of holding register 0, making it impossible to use the standard discovery process as implemented in the sunspec module.
Some options to resolve the issue: 1) Time out reads, so the process could proceed from 0 onwards 2) Enable specifying the starting address for discovery