当前位置: 首页 > news >正文

使用乐鑫 Web IDE 助力物联网开发

乐鑫 Web IDE 是基于 Eclipse Theia 的框架,支持 ESP-IDF VS Code 插件同时具备多项辅助工具。您可以观看我们在 Espressif DevCon22 上的演示视频​​​​​​​,了解它的实际应用。

【乐鑫开发者大会-21】搭载 ESP-IDF Visual Studio Code 插件的乐鑫 Web IDE


若您此前没有接触过 Eclipse Theia,它是一个开源框架,为开发人员提供了一个平台,可以使用 TypeScript 编程语言构建云和桌面集成开发环境(IDE)工具。Eclipse Theia 的用户界面基于流行的 Visual Studio Code。此外,开发人员可以利用 VS Code 提供的扩展插件,或者使用 OpenVSX 注册表中的扩展插件。

乐鑫 Web IDE 不仅支持 ESP-IDF VS Code 插件的大部分功能,还针对芯片串口连接开发了特定指令。为此,我们研发了两款附加实用工具:

  1. ESP-IWIDC (Espressif IDF Web Desktop Companion)  支持通过 websocket 连接 Web IDE 与计算机上连接的串口设备。此工具基于 Python 开发,提供设备烧录和串口监视功能。  ​​​​​​​
  2. esptool-js 作为 ESP-IDF esptool 的 TypeScript 实现,支持使用 WebSerial API 与芯片通信。此工具以 NPM 包形式发布,可在任何 JS 工程中使用。  

为了您能便捷地使用上述工具,Web IDE 提供了下列可用选项:

对于 ESP-IWIDC,您可以在 Remote(远程)菜单下,选择 Remote Flash (远程烧录)或Remote Monitor(远程监控)。对于 esptool-js,您可以在 Remote(远程)菜单下,选择 Flash with Webserial (Webserial 烧录)或 Monitor with Webserial (Webserial 监控)。请在进行烧录或监控前指定对应的串口设备。

乐鑫 Web IDE 支持以下两种运行方式

  • 直接从源代码编译运行;
  • 使用附带的 Dockerfile 构建一个 Docker 容器
  1. 编译源码运行(需使用 NodeJS 和 yarn 编译工程)
git clone https://github.com/espressif/idf-web-ide.git 
cd idf-web-ide 
yarn 
cd browser-app 
yarn run start — port=8080 

在浏览器中打开 127.0.0.1:8080(推荐使用 Chrome 浏览器)

2. 使用 Docker 运行

拉取最新的 docker 镜像,命令如下:

docker pull espbignacio/idf-web-ide 

或从 IDF-Web-IDE 仓库构建 docker 镜像,命令如下:

docker run -d -e IWI_PORT=8080 -p 8080:8080 --platform linux/amd64 -v ${PWD}:/home/projects espressif/idf-web-ide 

在浏览器中打开127.0.0.1:8080(推荐使用 Chrome 浏览器)

如需使用 ESP-IWIDC,请点此获取 Windows 的可执行文件,或使用仓库中的 Python 脚本。

运行可执行文件,启动 ESP-IWIDC:

.\dist\main.exe — port PORT 

查看可用端口

.\dist\main.exe 

如果希望直接使用 ESP-IWIDC 的 Python 脚本,请确保已安装所需的 Python 软件包,安装命令如下:

pip3 install -r ${ESP-IWIDC}/requirements.txt
python3 main.py
python3 main.py - port [SERIAL_PORT_OF_ESP_32]

使用 esptool-js 命令则无需额外安装任何内容。

使用 Docker 容器的优势在于,容器中已配置 ESP-IDF 及支持 ESP32 的 QEMU 分支,无需额外为 IDE 配置ESP-IDF。打开任意 ESP-IDF 工程即可开始开发!

Clang OpenVSX 插件为 Espressif Web IDE 提供 C/C++ 语言支持。该插件通过 build/compile_commands.json 文件实现 Go to declaration 功能以及提供对其他语言的支持。

小结

欢迎使用乐鑫 Web IDE,您可以随时联系我们提出改进意见!您还可以浏览我们之前的博客,了解更多有关ESP-IDF VS Code 插件的信息。

相关链接:

  1. ESP-IDF Web IDE
  2. Eclipse Theia
  3. ESP-IDF VS Code 插件
  4. ESP-IWIDC (Espressif IDF Web Desktop Companion)
  5. esptool-js
  6. OpenVSX 注册表
  7. Clang OpenVSX 插件

相关文章:

使用乐鑫 Web IDE 助力物联网开发

乐鑫 Web IDE 是基于 Eclipse Theia 的框架,支持 ESP-IDF VS Code 插件同时具备多项辅助工具。您可以观看我们在 Espressif DevCon22 上的演示视频​​​​​​​,了解它的实际应用。 【乐鑫开发者大会-21】搭载 ESP-IDF Visual Studio Code 插件的乐鑫 …...

Maven(5)---Maven的部署和发布

Maven的部署和发布 在前面的博客中,我们已经学习了Maven的基础知识、依赖管理、插件和生命周期,以及多模块项目管理。本篇博客将介绍Maven的部署和发布功能。 什么是部署和发布 在软件开发过程中,部署和发布是非常重要的环节。部署是指将软…...

内网渗透之权限维持-黄金白银票据隐藏账户远控-RustDeskGotoHTTP

0x01权限维持-隐藏用户 CreateHiddenAccount工具 CreateHiddenAccount -u test -p Psswrd用户管理能查看到,命令查看看不到,单机版无法删除(不在任何组),域环境(在administrator组中)可以删除 0x02权限维持-黄金白银票据 ⻩⾦票据⽣成攻…...

动态规划——带权活动选择

带权活动选择Time Limit: 3000 MSMemory Limit: 1000 KB Description 给定n个活动&#xff0c;活动ai表示为一个三元组(si,fi,vi)&#xff0c;其中si表示活动开始时间&#xff0c;fi表示活动的结束时间&#xff0c;vi表示活动的权重, si<fi。带权活动选择问题是选择一些活…...

软考A计划-真题-分类精讲汇总-第十八章(面向对象程序设计)

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例 &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff0c;以及各种资源分享&am…...

【C++ 入坑指南】(09)数组

文章目录 简介一维数组1. 定义2. 特点3. 用途4. 示例 二维数组1. 定义2. 用途3. 示例 简介 C 支持数组数据结构&#xff0c;它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据&#xff0c;但它往往被认为是一系列相同类型的变量。 一维数组 1. 定义…...

Vue.js

文章目录 Vue&#xff08;前端框架&#xff09;data基本语法v-bind&#xff08;属性&#xff09;v-if&#xff08;条件&#xff09;v-formethods事件v-model表单绑定todolist&#xff08;添加删除展示内容&#xff0c;含上下移动&#xff09;es6语法生命周期函数axios发送ajax请…...

博士毕业答辩流程 注意事项

前言&#xff1a;2023年5月17日14:00-17:00&#xff0c;与实验室其他同学一起旁听了本实验室的博士论文答辩。接下来&#xff0c;我对博士毕业答辩的大致流程进行简要介绍&#xff0c;并对个环节的注意事项进行总结归纳&#xff0c;供毕业生参考。 目录 1. 准备阶段2. 汇报期间…...

拼多多开放平台订单详情接口解析

API接口订单接口是指用于实现订单相关操作的程序接口。通过这个接口&#xff0c;用户可以实现创建、修改、查询和取消订单等功能。 常见的API接口订单接口包括&#xff1a; 创建订单接口&#xff0c;用于实现用户下单操作。 修改订单接口&#xff0c;用于修改已有订单信息。 …...

如何把ipa文件(iOS安装包)安装到iPhone手机上? 附方法汇总

苹果APP安装包ipa如何安装在手机上&#xff1f;很多人不知道怎么把ipa文件安装到手机上&#xff0c;这里就整理了苹果APP安装到iOS设备上的方式&#xff0c;仅供参考 苹果APP安装包ipa如何安装在手机上&#xff1f;使用过苹果手机的人应该深有感触&#xff0c;那就是苹果APP安…...

由浅入深了解 深度神经网络优化算法

CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 导言 优化是从一组可用的备选方案中选择最佳方案。优化无疑是深度学习的核心。基于梯度下降的方法已经成为训练深度神经网络的既定方法。 在最简单的情况下&#xff0c;优化问题包括通过系统地从允许集合中…...

LIN-报文结构

文章目录 协议规范一、字节场二、报文头&#xff08;HEADER FIELDS&#xff09;同步间隔&#xff08;synchronisation break)同步场&#xff08;SYNCH FIELD&#xff09;标识符场&#xff08;IDENTIFIER FIELD&#xff09; 三、数据场&#xff08;DATE FIELDS&#xff09;四、校…...

南京邮电大学通达学院2023c++实验报告(三)

题目 实验题目1 某公司财务部需要开发一个计算雇员工资的程序。该公司有3类员工,工资计算方式如下: (1)工人工资:每小时工资额(通过成员函数设定)乘以当月工作时数(通过成员函数设定),再加上工龄工资。 (2)销售员工资:每小时工资额(通过成员函数设定)乘以当月…...

ISO9000和ISO9001有哪些区别?

作为ISO标准体系的新手&#xff0c;ISO9000和ISO9001是第一个接触到的标准。有些人可能会含糊地表达包含关系的词语&#xff0c;但他们仍然无法真正理解它们。两者的关系是什么&#xff1f;有什么区别&#xff1f;事实上&#xff0c;两者的主要区别体现在以下三个方面: 第一&am…...

第7章异常、断言和曰志

Java和C异 在C中&#xff0c;throw说明符在运行时执行。Java在编译时执行。 处理错误 异常处理的任务就是将控制权从产生错误的地方转移到能够处理这种情况的错误处理器。 如果由于出现错误而使得某些操作没有完成&#xff0c;程序应该&#xff1a;返回到一种安全状态&#…...

springboot读取和写入csv文件数据

前言 csv格式的表格&#xff0c;和xls以及xlsx格式的表格有一些不同&#xff0c;不能够直接用处理xls的方式处理csv&#xff1b; 以下我将介绍如何读取并写入csv数据 准备工作 要处理csv格式的表格数据&#xff0c;我们首先需要引入pom.xml的依赖 <dependency><art…...

【产品经理】工作交接

一、前言 相信大家对这样的场景一定不陌生&#xff1a;有一天去找某个业务的负责人&#xff0c;突然被告知调岗了&#xff0c;或是辞职了&#xff0c;更坏的情况是&#xff0c;甚至完全找不到相关人员了&#xff0c;直接导致工作搁置了。这种情况&#xff0c;你应该多少会感到…...

Springer期刊 latex投稿经验分享

Springer Nature期刊的latex模板下载: Download the journal article template package 以MTAP为例(修改之后对修订稿的投递过程) 第一步:将您的文章提交到适当的期刊轨道或特刊。 如有必要,从下拉菜单中更改您提交的文章类型。 然后点击Proceed 第二步: 与您提交的先前修…...

Python 文件读取的练习

读取文本文件 给定一个名为 ‘example.txt’ 的文本文件&#xff0c;编写一段Python代码&#xff0c;读取文件并打印其内容。 行数统计 给定一个名为 ‘example.txt’ 的文本文件&#xff0c;编写一段Python代码&#xff0c;计算文件中的行数。 单词统计 给定一个名为 ‘exam…...

Redis:主从复制_通过此功能实现对内存上的数据更好的保护

什么是主从复制&#xff1f; 简单的意义上来讲就是一个主人带着几个奴隶&#xff0c;奴隶的全部都是主人给他的&#xff0c;刚开始的时候奴隶是一无所有&#xff0c;是主人将自己的一部分给到奴隶了。因此奴隶翻身了&#xff0c;变得有钱了&#xff0c;也就是有一定价值了&…...

如何彻底修复Windows更新故障:Reset Windows Update Tool完整使用指南

如何彻底修复Windows更新故障&#xff1a;Reset Windows Update Tool完整使用指南 【免费下载链接】Reset-Windows-Update-Tool Troubleshooting Tool with Windows Updates (Developed in Dev-C). 项目地址: https://gitcode.com/gh_mirrors/re/Reset-Windows-Update-Tool …...

企业级OpenClaw集中部署安全架构避坑全攻略

只需1小时全链路加固&#xff0c;让OpenClaw稳定上线、合规无忧 在一次大型制造业项目中&#xff0c;某金融客户耗时三个月完成OpenClaw功能对接&#xff0c;却因忽略安全配置&#xff0c;半天内被黑客扫光知识库、篡改AI流程&#xff0c;直接触发合规问责。你是否也担心“一装…...

SQL表连接终于讲明白了:INNER JOIN、LEFT JOIN、RIGHT JOIN 一次学透

SQL表连接终于讲明白了&#xff1a;INNER JOIN、LEFT JOIN、RIGHT JOIN 一次学透 很多人学 SQL&#xff0c;卡得最久的不是 SELECT、WHERE&#xff0c;而是表连接&#xff08;JOIN&#xff09;。这篇就不绕弯&#xff0c;直接把 SQL 表连接讲到能上手。 一、为什么一定要学会表…...

【电压调整+无功优化】考虑泄流效应的风电场并网点电压系统侧增援调控方法Matlab实现

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。&#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室&#x1f447; 关注我领取海量matlab电子书和…...

保姆级 uPyPi 教程|从 到 :MicroPython 驱动包一键安装 + 分享全攻略交

这个代码的核心功能是&#xff1a;基于输入词的长度动态选择反义词示例&#xff0c;并调用大模型生成反义词&#xff0c;体现了 “动态少样本提示&#xff08;Dynamic Few-Shot Prompting&#xff09;” 与 “上下文长度感知的示例选择” 的能力。 from langchain.prompts impo…...

Fluent计算总发散?别急着重画网格,先检查这5个隐藏设置(附诊断命令)

Fluent计算总发散&#xff1f;别急着重画网格&#xff0c;先检查这5个隐藏设置&#xff08;附诊断命令&#xff09; 凌晨三点&#xff0c;屏幕上的残差曲线突然像过山车一样飙升&#xff0c;你盯着"floating point exception"的报错提示&#xff0c;咖啡杯悬在半空—…...

【仅限首批200家认证企业获取】Java 25虚拟线程生产就绪检查清单(含JDK25.0.1 Hotfix补丁验证报告)

第一章&#xff1a;Java 25虚拟线程生产就绪核心定义与认证准入机制Java 25正式将虚拟线程&#xff08;Virtual Threads&#xff09;从预览特性升级为**生产就绪&#xff08;Production-Ready&#xff09;** 的标准特性&#xff0c;其核心定义聚焦于轻量级、高密度、可扩展的并…...

针对30%重复率的论文,aibiye的AI功能提供五条速成方案。智能识别高相似内容并重构表达,确保快速达到学术机构的基本要求。

嘿&#xff0c;大家好&#xff01;我是AI菌。今天咱们来聊聊一个让无数学生头疼的问题&#xff1a;论文重复率飙到30%以上怎么办&#xff1f;别慌&#xff0c;我这就分享5个实用降重技巧&#xff0c;帮你一次搞定&#xff0c;轻松压到合格线以下。这些方法都是我亲身试验过的&a…...

**雾计算中的边缘智能:基于Python的轻量级任务调度优化实战**在当前物联网与5G融合发展的背

雾计算中的边缘智能&#xff1a;基于Python的轻量级任务调度优化实战 在当前物联网与5G融合发展的背景下&#xff0c;雾计算&#xff08;Fog Computing&#xff09; 正成为连接云端与终端设备的关键桥梁。它通过将计算、存储和网络服务下沉至靠近数据源的边缘节点&#xff0c;显…...

从气象小白到数据达人:我的GPM/CHRS降雨数据下载与预处理全记录(避坑指南+代码分享)

从气象小白到数据达人&#xff1a;GPM/CHRS降雨数据实战全流程解析 第一次接触气象数据时&#xff0c;我盯着屏幕上密密麻麻的代码和陌生的术语发呆——GPM、CHRS、NetCDF、WGS84&#xff0c;这些词汇像天书一样令人困惑。作为地理信息系统专业的研究生&#xff0c;导师只丢下一…...