jaroschek / home-assistant-myuplink

Custom Home Assistant integration for devices and sensors in myUplink account.
43 stars 10 forks source link

Fan speed is not provided in percent from myUplink #17

Open mapaq opened 1 year ago

mapaq commented 1 year ago

The fan speed in myUplink does not show the actual speed in percent (%), as NIBE Uplink does. It only shows the mode (0, 1, 2, 3, 4) where 0 = normal.

The integration shows it in %, so it will only show one of 0%, 1%, 2%, 3% and 4%.

I don't think it's possible to get the actual percentage levels from the myUplink API, since it doesn't show in the myUplink mobile app or the web app. So that sensor should be changed to just showing the current mode as a number. Possibly replacing 0 with "normal" since that's how it's shown in myUplink app.

soulfire89 commented 1 year ago

Hey, in my case it has no issue with the fan speeds. But you are right. The actual fan mode has a wrong unit with "%" image

mapaq commented 1 year ago

OK, I see. I can't see any "Fan speed" entities in my installation of the integration, only the "Current fan mode" entity image

And also in myUplink I dont't see the percent levels, only 5 different modes. So it might be that all Heat Pumps don't report the same things to myUplink. image

No worries for me anyway, I solved it by manually translating the modes to speeds in percent in my dashboard.

jaroschek commented 1 year ago

@mapaq I would like to create a working solution for your use case.

Could you provide the response values for the device points showing what the API offers to work with as representation for this parameter?

You can do a request of the data points from the API directly and post the response here.

Go to the MyUplink Swagger site, and authorize (top right). Find your device ID by querying ​"/v2​/systems​/me", enter it when querying "/v2/devices/{deviceId}/points". Find the relevant data point(s) and post the response here.

mapaq commented 1 year ago

Nice, you are welcome to have a look :)

Here is the response when the "Current fan mode" is set to "normal": { "category": "NIBEF F730 CU 3x400V", "parameterId": "43108", "parameterName": "Current fan mode", "parameterUnit": "%", "writable": false, "timestamp": "2023-09-16T15:26:06+00:00", "value": 0, "strVal": "0%", "smartHomeCategories": [], "minValue": null, "maxValue": null, "stepValue": 1, "enumValues": [], "scaleValue": "1", "zoneId": null },

And here is another response when the "Current fan mode" is set to "2": { "category": "NIBEF F730 CU 3x400V", "parameterId": "43108", "parameterName": "Current fan mode", "parameterUnit": "%", "writable": false, "timestamp": "2023-09-24T21:55:33+00:00", "value": 2, "strVal": "2%", "smartHomeCategories": [], "minValue": null, "maxValue": null, "stepValue": 1, "enumValues": [], "scaleValue": "1", "zoneId": null }

In the MyUplink webapp, only the numbers are shown as well, not the percentage level. image

But on the device itself I see also the percentage levels. So I think that MyUplink does not retrieve all the data from the device.

soulfire89 commented 1 year ago

Nice, you are welcome to have a lool :)

Here is the response when the "Current fan mode" is set to "normal": { "category": "NIBEF F730 CU 3x400V", "parameterId": "43108", "parameterName": "Current fan mode", "parameterUnit": "%", "writable": false, "timestamp": "2023-09-16T15:26:06+00:00", "value": 0, "strVal": "0%", "smartHomeCategories": [], "minValue": null, "maxValue": null, "stepValue": 1, "enumValues": [], "scaleValue": "1", "zoneId": null },

And here is another response when the "Current fan mode" is set to "2": { "category": "NIBEF F730 CU 3x400V", "parameterId": "43108", "parameterName": "Current fan mode", "parameterUnit": "%", "writable": false, "timestamp": "2023-09-24T21:55:33+00:00", "value": 2, "strVal": "2%", "smartHomeCategories": [], "minValue": null, "maxValue": null, "stepValue": 1, "enumValues": [], "scaleValue": "1", "zoneId": null }

In the MyUplink webapp, only the numbers are shown as well, not the percentage level. image

But on the device itself I see also the percentage levels. So I think that MyUplink does not retrieve all the data from the device.

Thats the point, I think different devices are sending different values to myuplink. My integration has a lot of unplausible values which are not even available at the VVM225 inside service menu.

7RST1 commented 8 months ago

Looks like the device itself is poorly integrated with myuplink. There seems to be a lot of cases like these, where some data points are using a poor implementation of the API and needs small specific fixes to display properly. I wish the manufacturers would take a bit more care when implementing this stuff. I wonder if contacting the manufacturer or myuplink directly could solve this?

robiblom commented 7 months ago

reported values are , "0" normal, "1" speed 1, "2" speed, "3" speed, "4" speed 4. so it will mostry say 0% instead of "0" or normal. i created a template sensor to work around it unit_of_measurement: "%" icon: mdi:speedometer friendly_name: F750 CU 3x400V NIBEF F750 CU 3x400V Current fan mode

mapaq commented 7 months ago

Looks like the device itself is poorly integrated with myuplink. There seems to be a lot of cases like these, where some data points are using a poor implementation of the API and needs small specific fixes to display properly. I wish the manufacturers would take a bit more care when implementing this stuff. I wonder if contacting the manufacturer or myuplink directly could solve this?

Yes, I think that's the case. The data from the device to myUplink is not correct. I think this issue can be closed from an integration perspective. The integration is taking the values that are presented in myUplink.