tuya / tuya-home-assistant

Home Assistant integration for controlling Powered by Tuya (PBT) devices using Tuya Open API, maintained by the Home Assistant Community and Tuya Developer Team.
MIT License
875 stars 206 forks source link

Add support for extractor hood #892

Open svenrienstra opened 1 year ago

svenrienstra commented 1 year ago

Hi,

I've got a smart hood (Klarstein skyfall) which is connected through the Tuya iot platform, but there doesn't seem to be any support for it in home assistant. From what I can see it has 3 controllable entities:

Here is the diagnostic file:

{
  "home_assistant": {
    "installation_type": "Home Assistant OS",
    "version": "2023.1.0",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.10.7",
    "docker": true,
    "arch": "aarch64",
    "timezone": "Europe/Amsterdam",
    "os_name": "Linux",
    "os_version": "5.15.61-v8",
    "supervisor": "2022.12.1",
    "host_os": "Home Assistant OS 9.3",
    "docker_version": "20.10.18",
    "chassis": "embedded",
    "run_as_root": true
  },
  "custom_components": {
    "afvalwijzer": {
      "version": "2022.11.02",
      "requirements": []
    },
    "iaquk": {
      "version": "1.6.2",
      "requirements": []
    },
    "hacs": {
      "version": "1.28.3",
      "requirements": [
        "aiogithubapi>=22.2.4"
      ]
    }
  },
  "integration_manifest": {
    "domain": "tuya",
    "name": "Tuya",
    "documentation": "https://www.home-assistant.io/integrations/tuya",
    "requirements": [
      "tuya-iot-py-sdk==0.6.6"
    ],
    "dependencies": [
      "ffmpeg"
    ],
    "codeowners": [
      "@Tuya",
      "@zlinoliver",
      "@frenck"
    ],
    "config_flow": true,
    "iot_class": "cloud_push",
    "dhcp": [
      {
        "macaddress": "105A17*"
      },
      {
        "macaddress": "10D561*"
      },
      {
        "macaddress": "1869D8*"
      },
      {
        "macaddress": "381F8D*"
      },
      {
        "macaddress": "508A06*"
      },
      {
        "macaddress": "68572D*"
      },
      {
        "macaddress": "708976*"
      },
      {
        "macaddress": "7CF666*"
      },
      {
        "macaddress": "84E342*"
      },
      {
        "macaddress": "D4A651*"
      },
      {
        "macaddress": "D81F12*"
      }
    ],
    "integration_type": "hub",
    "loggers": [
      "tuya_iot"
    ],
    "is_built_in": true
  },
  "data": {
    "endpoint": "https://openapi.tuyaeu.com",
    "auth_type": 0,
    "country_code": "31",
    "app_type": "tuyaSmart",
    "mqtt_connected": true,
    "disabled_by": null,
    "disabled_polling": false,
    "name": "Skyfall Smart",
    "model": "IR01-Vatti",
    "category": "yyj",
    "product_id": "ssmhxlaiaxvlr8sc",
    "product_name": "Skyfall Smart",
    "online": true,
    "sub": false,
    "time_zone": "+01:00",
    "active_time": "2023-01-05T18:45:42+00:00",
    "create_time": "2022-01-20T14:44:04+00:00",
    "update_time": "2023-01-05T18:45:43+00:00",
    "function": {
      "switch": {
        "type": "Boolean",
        "value": {}
      },
      "light": {
        "type": "Boolean",
        "value": {}
      },
      "fan_speed_enum": {
        "type": "Enum",
        "value": {
          "range": [
            "off",
            "low",
            "middle",
            "high"
          ]
        }
      }
    },
    "status_range": {
      "switch": {
        "type": "Boolean",
        "value": {}
      },
      "light": {
        "type": "Boolean",
        "value": {}
      },
      "fan_speed_enum": {
        "type": "Enum",
        "value": {
          "range": [
            "off",
            "low",
            "middle",
            "high"
          ]
        }
      }
    },
    "status": {
      "switch": false,
      "light": false,
      "fan_speed_enum": "off"
    },
    "home_assistant": {
      "name": "Skyfall Smart",
      "name_by_user": null,
      "disabled": false,
      "disabled_by": null,
      "entities": []
    }
  }
}

And the standard instruction set:

Screenshot 2023-01-06 at 08 12 10
MarcFu commented 7 months ago

Hello,

what is necessary to do to get the device type (YYJ) working? I saw a PR (mentioned above) that is closed.

What needs to be done, to get this feature implemented?

svenrienstra commented 7 months ago

Because I was getting no more response on my PR I decided to use local tuya integration (https://github.com/rospogrigio/localtuya), which does support this device.