Closed Shulyaka closed 8 months ago
All modified and coverable lines are covered by tests :white_check_mark:
Comparison is base (
b8564a8
) 100.00% compared to head (04abbef
) 100.00%.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Fixes https://github.com/home-assistant/core/issues/103208 Supersedes #166
The S2C modules do support energy scan: https://www.digi.com/resources/documentation/digidocs/90002002/default.htm#Reference/r_cmd_ED.htm?TocPath=AT%2520commands%257CNetwork%2520commands%257C_____17
The difference with XBee3 is the parameter range: S2C accepts 0x01-0xFF or no parameter, while XBee3 accepts 0x00-0xFF. In other words, to use a default parameter value one need to pass no parameters for S2C and 0x00 for XBee3.
Due to a bug we are sending the parameter as
b'\x00\x00\x00\x00'
instead ofb'\x04'
for 4 ms, the XBee3 firmware accepts that parameter as default, while S2C firmware returns anINVALD_PARAMETER
response.The bug is because we implicitly used
bytes()
constructor with an integer argument, that returns an array of zeros. Using[duration_exp]
orbytes([duration_exp])
instead ofduration_exp
resolves the issue.