TuyaOSTuya Wind IDE

Tuya Wind IDE

更新时间:2024-01-18 08:22:08下载pdf

Tuya Wind IDE 是面向基于 TuyaOS EasyGo 的开发者提供的一站式集成开发环境。

背景信息

Tuya Wind IDE 以 Visual Studio Code 插件形式发布,支持中英双语,通过 涂鸦 IoT 开发平台 账号登录。Tuya Wind IDE 统一管理、分发及更新 TuyaOS EasyGo 相关开发资料,提供了不同主机、不同开发工具下一致的开发体验。

安装环境

Tuya Wind IDE 目前支持的安装环境如下:

  • Windows 主机搭载 Linux 虚拟机或者 Linux 虚拟机开发:用于绝大多数联网单品类型开发、蜂窝产品开发、网关开发、中控开发、IPC 开发和 NVR 开发。

  • Windows:用于绝大多数子设备开发。

  • MacOS:仅提供开发框架的浏览及权限申请,不支持下载。

环境准备

第一步:安装 Linux 虚拟机环境

安装 Virtualbox 或者 VMWare 虚拟机。选用 Ubuntu 18.04 或者 20.04 做为虚拟机系统。建议虚拟机内存(RAM)设置为 8G。

Virtualbox 虚拟机的详细安装教程,请参考 Tuya Wind IDE VirtualBox 虚拟机安装

  • Virtualbox:

    1. 如果用 Virtualbox 安装,请设置第 2 张网卡为 Host-only Adapter 模式,确保 Windows 能够通过 VS Code 通过 SSH 连接到虚拟机。

      Tuya Wind IDE
    2. 如果无法创建 Host-only Adapter,请在 Host Network Manager 中作如下配置。或者参考 此教程 解决。

      Tuya Wind IDE Tuya Wind IDE
    3. 启动虚拟机系统,获取虚拟机 IP 地址。

      Tuya Wind IDE
    4. 在虚拟机内,安装必要的软件。

      sudo apt install openssh-server openssh-client build-essential lib32stdc++6
      

如果确定当前开发环境,仅使用 Linux 虚拟机开发,请直接跳转到下文 安装 IDE 章节继续安装。

第二步:SSH 免密钥设置

Windows 10/11 默认安装了 SSH 客户端。

Windows 主机,可以使用 PowerShell 进行如下设置。

  • 假定虚拟机的用户名为:vscode

  • 虚拟机的 IP 地址为:192.168.56.105

  1. 生成 SSH Key。

    ssh-keygen -t rsa -b 4096
    
  2. 填写虚拟机的用户名及密码(IP 地址和用户名,根据自己的情况做更改)。

    $USER_AT_HOST="vscode@192.168.56.105"
    
  3. 指明要上传的公钥所在位置。

    $PUBKEYPATH="$HOME\.ssh\id_rsa.pub"
    
  4. 传到并设置,需要输入服务器用户密码。

    $pubKey=(Get-Content "$PUBKEYPATH" | Out-String); ssh "$USER_AT_HOST" "mkdir -p ~/.ssh && chmod 700 ~/.ssh && echo '${pubKey}' >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
    
    Tuya Wind IDE

第三步:安装 Remote SSH 插件

  1. 安装并打开 VS Code。详细安装信息请参考 Tuya Wind IDE VS Code 安装

  2. 在插件市场选择并安装 Remote SSH 插件。

    Tuya Wind IDE Tuya Wind IDE Tuya Wind IDE
  3. 设置并连接 SSH,示例中的 IP 地址为 192.168.56.105

    Tuya Wind IDE Tuya Wind IDE

安装 IDE

首先要确保已安装 Visual Studio Code,安装方法请参考官网指南。如需详细安装信息,请参考教程 Tuya Wind IDE VS Code 安装

启动 Visual Studio Code 后,参考下图流程,在插件市场搜索并安装 Tuya Wind IDE。

Tuya Wind IDE

登录

按下图箭头顺序所示,打开 Tuya Wind IDE 登录页面,登录的账号和密码为 涂鸦 IoT 开发平台 的账号和密码。

Tuya Wind IDE

退出登录

单击右上角人形图标,即可显示 退出登录

Tuya Wind IDE

下载开发框架

登录后,选择 主页 > 新建开发框架

Tuya Wind IDE

根据项目向导,填写对应参数并新建一个开发框架。具体参数填写请参考下表。

参数 说明
开发模式
  • TuyaOS 模式:涂鸦已经对芯片平台进行过适配,您直接基于开发包开发应用功能即可。
    • 开发包内容:开发包、工具、Kernel
    • 开发者开发内容:应用驱动、应用代码
  • SDK 模式:涂鸦提供按照 TuyaOS Kernel 标准导入的基础 SDK,您先完成芯片平台的接口适配,再开发应用功能。
    • 开发包内容:开发包、工具
    • 开发者开发内容:Kernel、应用驱动、应用代码
类型开发包 按照开发框架的分类以及开发包的类型不同,可选择不同的开发包。
开发平台 开发框架对应的硬件支持选择,按照处理器类型、厂商、分类、芯片型号依次选择当前开发框架所需要的硬件支持。
TuyaOS 版本 xx.xx.xx
本地项目名称 本地项目自定义名称。
位置 使用默认下载位置或自定义下载位置。
说明:使用自定义下载目录时,需要确保在该目录有写入权限,不然会下载失败。

如果想要进一步了解开发模式及类型开发包的概念,请选择相应操作后,单击右上角弹出对话窗的相应链接。

  • 开发框架介绍:

    Tuya Wind IDE
  • 类型开发包介绍:

    Tuya Wind IDE
  • 请在正确的开发环境下,下载对应的 TuyaOS 开发框架。并且在对应的开发环境下使用。单击 完成,可下载开发包。

    Tuya Wind IDE

右键菜单

Tuya Wind IDE
  • 下表中 {project} 表示当前 TuyaOS 开发框架路径。

  • 下表中 {project}/software/apps/{application} 表示当前 TuyaOS 开发框架应用名称路径。

    右键菜单 功能 使用范围
    Create Project 创建应用 {project}/software/apps
    Build Project 编译当前应用 {project}/software/apps/{application}
    Clean Project 清除当前应用编译相关文件 {project}/software/apps/{application}
    Config Project 图形化配置当前应用(仅适用于已支持动态配置的产品开发包) {project}/software/apps/{application}
    Flash App/Flash Prod 烧写固件,仅支持 Windows 环境下开发 {project}/software/apps/{application}
    Quick Start 开发框架相关文档 {project}/software/ 及其子目录
    Tuya Home 登录/退出帐号,下载/导入 TuyaOS 开发框架 {project}/software/ 及其子目录
    Show Project Information 当前 VS Code 工作区中所有的开发框架信息 {project}/software/ 及其子目录

开发框架相关操作

由于 Visual Studio Code 当前工作区中,如果已经有了 TuyaOS 的产品开发包,如下图所示:

Tuya Wind IDE

展开左侧 software 目录,并在右键单击 software 目录或者任意子目录后选择 Show Project Information。或者单击 Tuya Home 左侧 开发框架,会在右侧显示当前开发框架的信息。

切换开发框架(仅支持 Linux 环境)

如果当前开发框架提供多个版本,TuyaOS 版本后面会出现下拉框。

Tuya Wind IDE

单击下拉框,找到想到切换的 TuyaOS 版本,会显示切换按钮。

Tuya Wind IDE

单击切换按钮切换 TuyaOS 开发框架。

Tuya Wind IDE

产品开发包下载

如果 TuyaOS 开发框架提供产品开发包下载,则会在当前开发框架信息页显示产品开发包选项卡。

Tuya Wind IDE

单击产品开发包 申请权限 按钮,弹出申请权限对话框:请认真填写申请权限中的所有信息。

产品开发包权限申请相关操作,仅对企业开发者开放,请在申请产品开发包权限之前,一定确认有对应的涂鸦商务人员。请在商务邮箱中准确填写您对应的涂鸦商务邮箱。如果填写的涂鸦商务邮箱不正确,请务必联系您的涂鸦商务人员确认。

Tuya Wind IDE
  • 如果已经完成申请,对应产品开发包则会显示 权限申请中,请等待 提示。此时可撤消产品开发包申请权限。

    Tuya Wind IDE
  • 如果申请审批已完成,则可以下载当前产品开发包。

    Tuya Wind IDE
  • 下载完成之后,会在工作区的 software/TuyaOS/apps 目录下显示已下载的产品开发包。

    Tuya Wind IDE

资源中心

Tuya Wind IDE
  • 单击资源中心左上角的搜索按钮,可以展开或者收缩搜索功能框。搜索区提供 开发模式(多选),类型开发包(多选),开发平台(多选),TuyaOS 版本(多选)及 权限状态(单选)功能的组合搜索。如果不选择某一搜索项,则忽略当前搜索项。

    下部表格支持 开发模式类型开发包开发平台TuyaOS 版本 单独排序,或者权重排序。

    • 单独排序:加载页面之后,单击表格头部,则可单独只对这一项进行排序。
    • 权重排序:权重优先级,开发模式 > 类型开发包 > 开发平台 > TuyaOS 版本。单击表格头部 开发模式 排序完之后,按照 开发模式 的展示顺序,对 类型开发包 进行排序。如果再次单击 开发平台,则 开发模式类型开发包 不变,对 开发平台 进行排序。
  • 同时支持 Easy GO 开发资料包的权限申请,以及审核状态中的权限申请撤消。权限申请通过之后,为可下载状态,即可在主页新建 TuyaOS 开发框架。

    Tuya Wind IDE

创建应用

展开左侧 software/TuyaOS/apps 目录,并在右键单击 apps 目录后选择 Create Project

编译应用

  1. 展开左侧 software/TuyaOS/apps/xxx 目录,并在右键单击 xxx 目录后选择 Build Project。如果路径选择不正确,会在右下角报错提示。

    Tuya Wind IDE

    由于 Visual Studio Code 本身的原因,如果 apps 目录下仅有一个应用示例时,会在一行显示两级目录。请注意选择 apps 目录的子目录后再右键单击该目录,如果右键单击了其它的目录,则会在屏幕右下角提示错误。

  2. 选择 Build Project 后,在跳出的文本框内输入编译固件的版本号(格式为 x.x.x)后,按回车键确认。其中需注意,蓝牙 Mesh 和 Beacon 相关应用版本格式为 x.x,其它应用版本格式为 x.x.x

    Tuya Wind IDE
  3. 等待 IDE 终端开始自动下载工具链,下载完成后自动编译生成固件产物并告知固件产物路径。

    Tuya Wind IDE

清除编译内容

  1. 展开左侧 software/TuyaOS/apps/xxx 目录,并在右键单击 xxx 目录后选择 Clean Project

    Tuya Wind IDE

    由于 Visual Studio Code 本身的原因,如果 apps 目录下仅有一个应用示例时,会在一行显示两级目录。请注意选择 apps 目录的子目录后再右键单击该目录,如果右键单击了其它的目录,则会在屏幕右下角提示错误。

  2. 选择 Clean Project 后,在跳出的文本框内输入编译固件的版本号(格式为 x.x.x)后,按回车键确认。其中需注意,蓝牙 Mesh 和 Beacon 相关应用版本格式为 x.x,其它应用版本格式为 x.x.x

    Tuya Wind IDE

烧写固件

  • Windows 搭载 Linux 虚拟机环境:在 pc/tools 目录中提供了相应芯片的烧写工具。在 Windows 环境下,您可以使用这些工具完成烧写固件和验证固件。
  • 已在右键菜单栏中提供了 Flash App 和 Flash Prod 功能,可直接进行烧写。
  • 展开左侧 software/TuyaOS/apps/xxx 目录,并在右键单击 xxx 目录后选择 Flash App
    • Flash App 支持只擦除用户区的数据。
  • 展开左侧 software/TuyaOS/apps/xxx 目录,并在右键单击 xxx 目录后选择 Flash Prod
    • Flash Prod 支持擦除所有区域的数据。

TuyaOS 文档导航

  1. 在项目 software 或其任何子目录,单击鼠标右键,会显示 Quick Start 按钮。

    Tuya Wind IDE
  2. 单击 Quick Start 按钮,出现 TuyaOS 文档导航页。

    Tuya Wind IDE

    TuyaOS 项目文档包含以下文档信息:

    • hardware 目录:嵌入式开发所需的资料文档。
    • pc/tools 目录:上位机相关的程序,例如烧写工具,以及文档。
    • software 目录:Demo 文档以及 API 文档。

    您可以进行以下操作:

    • 单击网页左上角 TuyaOS 文档向导 链接,会再次回到导航页。

    • 单击 TuyaOS API 文档链接,会显示如下内容:

      Tuya Wind IDE
    • 单击 TuyaOS Demo 文档链接,会显示如下内容:

      Tuya Wind IDE

API 文档的目录结构

  • 首页:当前开发包的详细介绍。

  • 相关网页/开发者向导:当前开发包的通用流程开发介绍,以流程图及步骤说明展示开发中需要注意的流程。

  • 结构体:当前开发包的结构体的查询,单击之后查看结构体的相应信息。

  • 文件:包括函数、定认、枚举、宏等所有相关代码的选择及介绍。

  • 右侧搜索:搜索开发过程中代码相关的所有信息,可以全部搜索(默认选项),也可以选择某一限定范围(例如结构体、文件等)搜索。
    Tuya Wind IDE

    搜索项支持模糊查询搜索功能,例如输入 a 字符,会提示与 a 相关的所有信息,单击即可跳转到相应的页面。

    Tuya Wind IDE

调试

Visual Studio Code 支持多种调试方式,您根据自己的需求,选择合适的插件安装,运用插件的能力进行调试即可。

  • GDB 调试:在 Visual Studio Code 中安装 GDB Debugger - Beyond 插件后进行调试。
  • ARM 仿真器调试:在 Visual Studio Code 中安装 Cortex-Debug 插件后进行调试。