krahabb / meross_lan

Home Assistant integration for Meross devices
MIT License
454 stars 47 forks source link

MRS100 native position with firmware 6.6.6 #319

Closed renardguill closed 11 months ago

renardguill commented 1 year ago

Version of the custom_component

v4.3.0

Describe the bug

I encounter this issue https://github.com/krahabb/meross_lan/issues/227 on my MRS100 in firmware v6.6.6. In the fix for this issue, a condition is set to firmware version 7.6.10. However, when I directly edit the cover.py file to change the required version to 6.6.6 (my firmware version), it works like a charm ! is it possible that Meross has backported the native position functionality to this version 6.6.6 ? If so, could you please downgrade the required version to 6.6.6 ?

krahabb commented 1 year ago

hello @renardguill, I will definitely do. meross_lanshould anyway be able to detect a 'reliable native position' when reading the device state (whatever the firmware version) and switch to this mode automatically.

rich-kettlewell commented 11 months ago

I'm still not seeing the position_native attribute anymore on meross_lan version 4.4.1, and my device has firmware 6.6.6. I'm not exactly sure when it stopped working, as I didn't notice immediately, but, it feels like it's been wrong for a month or so.

I'm also not sure if I'm doing something wrong - I've checked the source code of the integration locally, and I do have this fix. There is nothing in my logs relating to meross_lan.

krahabb commented 11 months ago

Hello @rich-kettlewell, if the device is recognized as having a 'reliable native position' (and this is happening for mrs100(s) with fw >= 6.6.6 on latest versions) the position_native attribute is not set since the position reported is already the device native position.

The position_native attribute is only set when meross_lan is emulating the shutter position internally

rich-kettlewell commented 11 months ago

Ah, thank you for the information! So I should just update my code to use the "current_position" attribute instead - got it :-)