简体中文
简体中文
English
联系我们
注册
登录
layout空间导航
TuyaOSTuya Wind IDE

Tuya Wind IDE

更新时间:2022-12-06 02:08:54下载pdf

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

背景信息

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

安装环境

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

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

    此方式已在 Virtual Box 虚拟机上通过测试,其中虚拟机系统为 Ubuntu 18.04 和 Ubuntu 20.04。

  • Windows 10/11:用于子设备开发。

Windows 主机搭载 Linux 虚拟机

第一步:安装虚拟机环境

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

虚拟机安装完成之后,需要在虚拟机中安装以下软件:

$ sudo apt update
$ sudo apt install net-tools openssh-server python3.8 python3-pip python3-distutils build-essential lib32stdc++6
  • pip3:

    • 确保当前的 pip3 指向 Python3.8,而不是其它 Python 版本。

      $ pip3 --version
      pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)
      
    • 如果 pip3 指向版本是其它 Python 版本,请在 pip3 脚本中,修改当前执行的 Python 版本为 Python3.8。

      $ which pip3
      修改 pip3 文件第一行为 python3.8
      #!/usr/bin/python3.8
      
  • Python3-distutils:

    • 如果 Python3-distutils 无法安装,则需要手动更新 pip,并确保 pip3 的版本在 21.xx 以上。
      curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
      python3.8 get-pip.py --user
      pip3 --version
      
  • Ubuntu 系统:

    • 如果系统新装 Ubuntu 20.04 虚拟机,又把虚拟机升级到 Ubuntu 22.04,会导致无法安装的问题。请注意在安装时,不要升级 Ubuntu 的版本。
    • 查看当前 Ubuntu 系统的版本号。
      cat /proc/issue
      
  • Python 3.9:

    如果当前系统中提前安装了 Python 3.9,且又安装了 Python 3.8,后续会导致一系列问题。问题详见 GitHub pypa 仓库 ModuleNotFoundError: No module named ‘distutils.cmd’,当前暂无解决办法。

  • 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

第二步: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。

  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

第四步:配置端口映射

  1. 打开 SSH 配置文件。

    Tuya Wind IDE

  2. 修改端口映射

    Tuya Wind IDE

    Host、User 和 HostName 变量根据虚拟机的配置确定。

  3. 输入如下代码配置端口映射:

    Host 192.168.56.105
    	HostName 192.168.56.105
    	User vscode
    	LocalForward 127.0.0.1:8319 127.0.0.1:8319
    	LocalForward 127.0.0.1:8320 127.0.0.1:8320
    
  4. 关闭并重新打开 IDE,即可正常显示。

    如需了解 VS Code 端口映射的更多信息,请参考 VSCode 教程 Remote Development using SSH

Windows 系统

  1. 根据 Python 3.8 官网 页面指示安装 Python3.8 环境。

  2. 在安装过程中确保勾选 Add Python 3.8 to PATH 将 Python3.8 的路径加入 PATH 变量。
    Tuya Wind IDE

  3. 安装 Python 3.8。

    • 单击 Install Now
    • 如果选择 Customize installation,则需要确保安装 pip 后再重启电脑,最后打开 Visual Studio Code 再安装 Tuya Wind IDE 插件。

安装 IDE

首先要确保已安装 Visual Studio Code,安装方法请参考官网指示。

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

    Tuya Wind IDE

  2. 等待底部会出现如下图的提示,此时等待进一步安装即可。

    Tuya Wind IDE

  3. 安装完成后,在重新加载提示框中单击 马上重新加载,或者直接关闭并重新打开 Visual Studio Code。

    Tuya Wind IDE

IDE 使用流程

登录

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

Tuya Wind IDE

退出登录

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

Tuya Wind IDE

下载开发框架

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

    Tuya Wind IDE

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

    Tuya Wind IDE

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

    Tuya Wind IDE

    下载完成之后,开发包的所有资料下载如下图所示。

    Tuya Wind IDE

编译应用

  1. 展开左侧 TuayOS/apps/tuyaos_demo_xxx 目录,并在右键单击 tuyaos_demo_xxx 目录后选择 Build Project
    Tuya Wind IDE

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

    Tuya Wind IDE

  2. 选择 Build Project 后,在跳出的文本框内输入编译固件的版本号(格式为 x.x.x)后,按回车键确认。
    Tuya Wind IDE

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

清除编译内容

展开左侧 TuayOS/apps/tuyaos_demo_xxx 目录,并在右键单击 tuyaos_demo_xxx 目录后选择 Clean Project

Tuya Wind IDE

Tuya Wind IDE

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

Tuya Wind IDE

查看开发框架对应信息

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

Tuya Wind IDE

此时单击左侧 开发框架,会在右侧显示当前开发框架的信息。

Tuya Wind IDE

TuyaOS 文档导航

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

    Tuya Wind IDE

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

    Tuya Wind IDE

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

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

    您可以进行以下操作:

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

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

      Tuya Wind IDE

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

      Tuya Wind IDE

API 文档的目录结构说明

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

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

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

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

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

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

    Tuya Wind IDE

搜索注意事项

由于 Visual Studio Code 的限制,我们无法直接在此页面使用搜索功能。通过 Ctrl + 鼠标左键单击当前页面中的 首页 可以将当前页面跳转到系统浏览器中,从而在浏览器中进行正常的搜索。

Tuya Wind IDE

当跳转到当前系统默认浏览器(例如 Chrome)后,我们可以正常使用搜索功能。

Tuya Wind IDE

调试

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

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

烧写固件

  • Windows 搭载 Linux 虚拟机环境:在 pc/tools 目录中提供了相应芯片的烧写工具。在 Windows 环境下,您可以使用这些工具完成烧写固件和验证固件。

  • Windows 环境:已在右键菜单栏中提供了 Flash App 和 Flash Prod 功能,可直接进行烧写。

    • Flash App 支持只擦除用户区的数据。
    • Flash Prod 支持擦除所有区域的数据。

    Tuya Wind IDE