基于 Link SDK 将树莓派连接到云服务

更新时间Invalid date

概况

树莓派作为一款非常流行的开源硬件,深受开发者喜爱,本文讲解如何使用 TuyaOS Link SDK 方案中的 C 语言 SDK和 Python SDK,快速把树莓派连接到涂云服务,实现树莓派生态与涂鸦生态内的智能设备联动。

物料清单

硬件 (1)软件 (2)
  • Raspberry Pi 4 Model B

    数量:1

    Raspberry Pi 4 Model B

步骤

  • 第 1 步:创建产品

    每一个连接涂鸦平台的设备都会有一个唯一的身份标识 PID(产品 ID),PID 可以通过创建产品来获取。

    1. 登录 涂鸦 IoT 平台

    2. 单击 创建产品

    3. 标准类目 区域中,选择 找不到品类

      说明:因为树莓派为非标准品类,所以创建产品时需要选择 找不到品类

    4. 填写产品相关信息并选择 Wi-Fi 作为联网方式和 标准功耗 作为功耗类型后,单击 创建产品

    5. 获取 PID 信息。

  • 第 2 步:功能定义

    涂鸦设备与云端通过 DP(功能点)进行通信,我们需要根据自身产品功能,添加 DP ID 并配置相关信息。

    说明

    • 目前涂鸦 IoT 平台提供 6 种数据类型,包含布尔型、数值型、枚举型、故障型、字符串型和透传型。详细信息,请参考 功能定义-自定义功能
    • 因为树莓派为非标准品类,所以该步骤中只能添加自定义功能。

    1. 功能定义 > 自定义功能 区域中,单击 添加功能
      添加功能
    2. 在弹出的 新建自定义功能 窗口中,填写功能点相关信息并单击 确定
      新建自定义功能
      创建后的功能会在 自定义功能 区域中显示。
      自定义功能
  • 第 3 步:选择面板

    设备与云端通信的数据可以通过 App 进行查看。我们需要为树莓派选择 App 调试面板,此处建议选择 自由配置面板

  • 第 4 步:获取激活码

    1. 硬件开发 页签中,选择 自研模组 SDK 作为开发方式。
      自研模组 SDK

    2. 开发SDK 区域中,为 芯片平台操作系统编译工具链 参数选择默认选项,填写模组名称后单击 确定
      等待页面刷新出免费激活码信息。

    3. 已选模组 区域右侧,免费领取激活码。
      image.png

  • 第 5 步:运行 Demo

    SDK 内提供了基于 Ubuntu 环境开发的 Demo,Demo 运行流程如下所示。

    C 语言 SDK

    1. 安装 make 等相关环境依赖。

      sudo apt-get install make cmake libqrencode-dev
      
    2. 克隆仓库代码。

       git clone https://github.com/tuya/tuya-iot-link-sdk-embedded-c.git --recurse-submodules
      
    3. 进入 tuya-iot-sdk-embedded-c/examples/switch_demo 路径下,修改 tuya_config.h 配置文件。

      • TUYA_PRODUCT_KEY 参数改为创建产品时获取的 PID。
      • TUYA_DEVICE_UUID 参数改为授权码清单中的 uuid。
      • TUYA_DEVICE_AUTHKEY 参数改为授权码清单中的 key。

      注意:因参数较长,手动输入易出错进而影响后续的设备配网,所以建议:

      • 对于图形化界面的 Linux 系统,可以将授权码清单文件传至系统 SD 卡中,再将参数拷贝至配置文件。
      • 对于非图形化界面 Linux 系统,输入参数时必须确保正确。

    4. 进入 tuya-iot-sdk-embedded-c 路径下,新建 build 目录,并在目录中编译和构建。

      cd tuya-iot-sdk-embedded-c
      mkdir build && cd build
      cmake ..
      make
      
    5. 运行 Demo,此处以 SDK 内的开关 Demo 为例。

      ./bin/switch_demo
      
    6. 在 App Store 和各大应用市场搜索“涂鸦智能”或“智能生活”下载并安装涂鸦智能或智能生活 App。

    7. 使用 App 绑定设备。
      打开 App,扫描在 Linux 终端例程程序输出的二维码进行绑定设备测试。
      更多详细信息,请参考 IoT Link SDK 开发

    Python SDK

    1. (可选)安装 Python 3.6 及以上版本。

      说明:TuyaOS-link-sdk-python 支持的 Python 版本为 3.6 及以上。

    2. 克隆 Python SDK。

      git clone https://github.com/tuya/tuyaos-link-sdk-python.git
      
    3. 安装 Pyothon SDK。

      python3 -m pip install ./tuyaos-link-sdk-python
      
    4. 进入 /home/pi/tuyaos-link-sdk-python/examples 目录下,修改 outlet.py 文件。

      • productid 参数改为创建产品时获取的 PID。
      • uuid 参数改为授权码清单中的 uuid。
      • authkey 参数改为授权码清单中的 key。

      注意:因参数较长,手动输入易出错进而影响后续的设备配网,所以建议:

      • 对于图形化界面的 Linux 系统,可以将授权码清单文件传至系统 SD 卡中,再将参数拷贝至配置文件。
      • 对于非图形化界面 Linux 系统,输入参数时必须确保正确。

    5. 运行 Demo,此处以 SDK 内的 outley.py 文件为例。

      python3 ./outlet.py
      
    6. 在 App Store 和各大应用市场搜索“涂鸦智能”或“智能生活”下载并安装涂鸦智能或智能生活 App。

    7. 使用 App 绑定设备。

      打开 App,扫描在 Linux 终端例程程序输出的二维码进行绑定设备测试。
      更多详细信息,请参考 IoT Link SDK 开发

小结

至此,已经实现通过树莓派运行涂鸦 Link SDK 连接涂鸦云平台,实现配网和通信功能。接下来,发挥你的实力和想象力,去创造好玩的智能产品和场景吧。