Open lurgh opened 2 years ago
Thanks @lurgh - I'm not sure the sensor data is coming through the telemetry (at least it doesn't appear on my pool). I've made an adjustment to the replit that will now output a 3rd file output_116_HASH_telemetry.xml
Can you post that as well? Just need to see how the different data appears in the telemetry to be able to pull it in.
Here is the new telemetry XML. I agree that none of the (temp) sensors come through directly in the telemetry, instead the first one get absorbed into its BoW as waterTemp and seems like any additional sensors just disappear. Whereas the relays, heaters etc are preserved over in the telemetry struct. (edit: redaction from telemetry)
<STATUS version="1.0">
<Backyard systemId="xxxxxx" statusVersion="9" airTemp="76" status="1" state="1" configUpdatedTime="2022-06-18T23:10:59.94Z" datetime="2022-06-21T09:29:02.4256" />
<Relay systemId="27" relayState="0" />
<BodyOfWater systemId="1" flow="255" waterTemp="80" />
<Filter systemId="3" valvePosition="1" filterSpeed="65" filterState="1" lastSpeed="50" />
<VirtualHeater systemId="4" Current-Set-Point="85" enable="no" />
<Heater systemId="5" heaterState="0" enable="no" />
<Heater systemId="18" heaterState="0" enable="yes" />
<Relay systemId="22" relayState="0" />
<Relay systemId="36" relayState="1" />
<ColorLogic-Light systemId="23" lightState="0" currentShow="12" speed="4" brightness="4" />
<ColorLogic-Light systemId="24" lightState="0" currentShow="12" />
<CSAD systemId="0" ph="" orp="" status="0" mode="0" />
<BodyOfWater systemId="8" flow="255" waterTemp="-1" />
<Filter systemId="10" valvePosition="1" filterSpeed="0" filterState="0" lastSpeed="50" />
<VirtualHeater systemId="11" Current-Set-Point="100" enable="no" />
<Heater systemId="12" heaterState="0" enable="yes" />
<Heater systemId="19" heaterState="0" enable="no" />
<Relay systemId="15" relayState="0" />
<Pump systemId="14" pumpState="0" pumpSpeed="0" lastSpeed="50" />
<ColorLogic-Light systemId="13" lightState="0" currentShow="12" speed="4" brightness="4" />
<CSAD systemId="0" ph="" orp="" status="0" mode="0" />
<Group systemId="33" groupState="0" />
</STATUS>
OK thanks @lurgh - let me see if I can't find something out from Hayward on the sensors. Sometimes worth a try.
OK thanks. I wanted to be sure you saw that they do come through in the raw data coming back from GetMspConfigFile
. Just that they are getting dropped during the processing of that down into the telemetry structure within your API.
Actually they are being dropped on the Hayward side. The second file is actually the raw telemetry from Hayward that we combine with the MSP config to create something usable.
So I need to find a way to either query the specific System Id for sensors for their telemetry or find some undocumented way to get the telemetry to include those sensors.
I've reached out so now we wait. :)
OK cool, interesting. Thanks.
Support requested from Hayward. Sensors are not returned by default in base telemetry unless mapped within their API. Some appear not to be mapped as expected - support request continues.
@lurgh can you please let me know what version of firmware you are running? Config -> System Info on the controller.
Thanks!
MSP firmware is R.4.4.1-b37543. I checked the dates and this is the same version that was running a couple weeks ago when I grabbed the telemetry.
Response from Hayward:
It looks like the home automation status is not passing the solar roof temperature. I will need to add an improvement ticket for this.
I didn’t realize they were different until I captured the mobile app status vs the home automation status
Therefore currently, the solar temperature is not supported under the home automation api.
Mobile app receives:
<Heater systemId="5" heaterState="0" temp="57" enable="1" priority="0" maintainFor="24"/>
Home automation receives:
<Heater systemId="5" heaterState="0" enable="yes" />
I will park this ticket for now for future enhancement once the Home Automation API has been updated by Hayward to include the solar temperature data.
Thanks @djtimca for chasing this with Hayward, and I appreciate their response and support. Looking forward to them eventually filling this gap.
Telemetry JSON doesn't mention the solar sensor (rooftop temp used as an input to decide whether to activate the solar heater) even though it is present in the MSP XML. It shows up in both the Pool and Spa BoWs but there is really just one sensor, similar to Pool and Spa water temp sensors. For some reason my Spa shows two solar sensors, which is a bug or maybe misconfiguration.
Complete (reformatted) XML is pasted here: