本帖最后由 roc634 于 2021-10-29 21:32 编辑
=================最近更新======================
据网友反馈,涂鸦又改了网页,以下是2021年10月的最新方法,请移步以下链接:
https://bbs.hassbian.com/forum.php?mod=viewthread&tid=14437
=======================以下是更早以前的内容,已过时,仅供参考===========================
最近买了一个涂鸦方案的第三方代工的“新版Wifi插座(升级款)”,拆出来看发现虽然也用的是esp8266方案,但是所有的元件都是重新设计在一块板子上的,不再是以前一块独立的esp8266模块焊在另外一块电路板上了,因此刷机变得很困难。于是想到了用localtuya来本地控制。了解了论坛里的帖子,也看了说明文档https://github.com/rospogrigio/localtuya想照着做,但是发现涂鸦IoT平台的网页变了,而且有些步骤也不是必须的,所以这里总结一下我的操作过程。
以下步骤不需要在linux端安装什么软件,也不需要运行什么命令,完全是直接在涂鸦的IoT平台上获取device id和local key,相当简单。
首先是在https://iot.tuya.com/涂鸦的IoT平台注册帐号,并且需要实名认证,这里的认证只需要填手机号,姓名和身份证号码,我用一个已经实名的虚拟运营商号码没有通过,用电信的通过了。
实名之后,打开“云开发”-“项目管理”,新建一个项目,按照要求填写必填项即可。
新建好项目之后,点击该项目进详情,
点击“资产”标签,新建一个资产项目,然后点进该资产的详情,点新建设备,将新买的智能插座添加进去,其他类型的设备应该也一样。
添加好设备之后,复制上图我涂黑了位置的“设备ID”,下一步会用到。然后回到“项目管理”,点“API”标签,点“新增API授权”,我按照他人教程添加了三个,貌似实际用到的只有“行业通用设备管理”这项,可以先添加这项,不行再添加其他。
然后点“行业通用设备管理”的“去调试”,在出现的页面中点击左边的“获取设备信息”,然后将上一步复制的”设备ID”复制到中间这栏的位置里,然后点“发起调用”,这时右边就会出现调用的结果,local key就已经得到了,见下图,
至此,已经得到了使用localtuya需要用到的device id和local key,将其填入HA的配置文件即可,以下是复制过来的示例,根据需要删改即可:
localtuya:
- host: 192.168.1.x
device_id: xxxxx
local_key: xxxxx
friendly_name: Tuya Device
protocol_version: "3.3"
entities:
- platform: binary_sensor
friendly_name: Plug Status
id: 1
device_class: power
state_on: "true" # Optional
state_off: "false" # Optional
- platform: cover
friendly_name: Device Cover
id: 2
open_close_cmds: ["on_off","open_close"] # Optional, default: "on_off"
positioning_mode: ["none","position","timed"] # Optional, default: "none"
currpos_dps: 3 # Optional, required only for "position" mode
setpos_dps: 4 # Optional, required only for "position" mode
span_time: 25 # Full movement time: Optional, required only for "timed" mode
- platform: fan
friendly_name: Device Fan
id: 3
- platform: light
friendly_name: Device Light
id: 4 # Usually 1 or 20
color_mode: 21 # Optional, usually 2 or 21, default: "none"
brightness: 22 # Optional, usually 3 or 22, default: "none"
color_temp: 23 # Optional, usually 4 or 23, default: "none"
color: 24 # Optional, usually 5 (RGB_HSV) or 24 (HSV), default: "none"
brightness_lower: 29 # Optional, usually 0 or 29, default: 29
brightness_upper: 1000 # Optional, usually 255 or 1000, default: 1000
color_temp_min_kelvin: 2700 # Optional, default: 2700
color_temp_max_kelvin: 6500 # Optional, default: 6500
scene: 25 # Optional, usually 6 (RGB_HSV) or 25 (HSV), default: "none"
music_mode: False # Optional, some use internal mic, others, phone mic. Only internal mic is supported, default: "False"
- platform: sensor
friendly_name: Plug Voltage
id: 20
scaling: 0.1 # Optional
device_class: voltage # Optional
unit_of_measurement: "V" # Optional
- platform: switch
friendly_name: Plug
id: 1
current: 18 # Optional
current_consumption: 19 # Optional
voltage: 20 # Optional
|