/tuya-homebridge

Homebridge custom plugin for controlling Powered by Tuya (PBT) devices in HomeKit. This plugin is officially maintained by the Tuya Developer Team.

Primary LanguageJavaScriptMIT LicenseMIT

Tuya Homebridge Plugin


npm npm verified-by-homebridge

Homebridge custom plugin for controlling Powered by Tuya (PBT) devices in HomeKit, it's based on Tuya Open API. The plugin is officially maintained by the Tuya Developer Team.

Welcome to join the Tuya Beta Test Program to get your development gifts and make the contribution to the plugin.Your feedback is valuable to the whole community.

✌️✌️✌️ Supported Tuya Device Types ✌️✌️✌️

🎉 🎉 🎉 Vote for Tuya Homebridge Plugin New Device Driver Support! 🎉🎉🎉

Youtube Tutorial:

Youtube

Preparation

  1. Tuya IoT Platform Configuration
  2. Use the Tuya Homebridge Plugin
  3. Develop a New Driver

Set up the development environment

—-VSCode
—-engines
    "node": “>=0.12.0”
    "homebridge": ">=0.2.0"
—-dependencies
    "axios": “^0.21.1",
    "crypto-js": “^4.0.0”, 
    "mqtt": “^4.2.6",
    "uuid": "^8.3.2"

Tuya OpenApi Login Error Code

Error code Error message Troubleshooting
1004 sign invalid
  • Incorrect accessId or accessKey. To fix the error, see Edit config.json file.
  • Due to the new signature verification mode, the server will have the cache of the old mode. Please create a Github Issue to inform us.
1106 permission deny
  • Your app account is not linked with your cloud project: Link devices by using the Tuya Smart or Smart Life app with your cloud project on the Tuya IoT Platform. For more information, see Link devices by app account.
  • The TuyaSmart or SmartLife app account which registered using Google or Apple ID email need to link your phone number and use the linked phone number as username to login.
  • Incorrect username or password: Enter the correct account and password of the Tuya Smart or Smart Life app in the Account and Password fields. Note that the app account must be the one you used to link devices with your cloud project on the Tuya IoT Platform.
  • Incorrect endpoint: See Endpoint and enter the correct endpoint.
  • Incorrect countryCode: Enter the code of the country you select on logging in to the Tuya Smart or Smart Life app.
  • Incorrect schema (case insensitive). Currently only tuyaSmart and smartlife are supported.
1100 param is empty username or appSchema is empty: See Edit config.json file and enter the correct parameter.
2017 schema does not exist Incorrect appSchema in config.json: See Edit config.json file and enter the correct parameter.
2406 skill id invalid
  • Cloud project created before May 25, 2021: Your cloud project on the Tuya IoT Platform should be created after May 25, 2021. Otherwise, you need to create a new project. For more information, see Operation on the Tuya IoT Platform.
  • Cloud project created after May 25, 2021, but it is not associated with your TuyaSmart or SmartLife app account. Please associated it in the Tuya IoT platform. For more information, see Link devices by app account.
28841105 No permissions. This project is not authorized to call this API You have not authorized your cloud project to use the required APIs. Subscribe to the following required API products and authorize your project to use them.
  • Authorization
  • Smart Home Devices Management
  • Smart Home Family Management
  • Smart Home Scene Linkage
  • Smart Home Data Service
  • Device Status Notification

FAQ

Q: Will I be billed after the 1-year free trial of the API product expires?

A: After expiration, you can renew the subscription for free. The Trial Edition allows you to use all free API products but puts limits on the quota of API calls. For more information about the quota, see Pricing.

Users

If you are a smart home geek and have a bundle of devices from different platforms, this step-by-step tutorial will help you make devices HomeKit-enabled and then develop Tuya Homebridge plugins.

Feedback

You can use the GitHub Issue or tickets to provide feedback on any problems you encounter.

LICENSE

For more information, see the LICENSE file.