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

Arduino IDE 离线安装 ESP32 开发板支持(3.3.10)

Arduino IDE 离线安装 ESP32 开发板支持(3.3.10)

背景

Arduino IDE 通过package_esp32_index.json定义 ESP32 的依赖链。添加开发板时,IDE 从 GitHub Releases 逐个拉取文件。国内网络环境下单线程下载速度约 30KB/s,395MB 的编译器需要 3 小时以上,整个依赖链 28GB 全部下完在实际操作中基本不可行。

IDE 的下载逻辑是一个文件一个文件校验的:检查%LOCALAPPDATA%\Arduino15\下目标路径是否已有对应文件,有则跳过。利用这一点,提前把文件放到正确位置即可绕过下载。

依赖链

package_esp32_index.jsonesp32:esp32@3.3.10的依赖如下:

esp32:esp32@3.3.10├─xtensa-esp-elf-gcc14.2.0+20260121395MBC/C++Xtensa机器码├─esp32-arduino-libs-idf5.5-129cd0d2425MBWiFi/BLE/FreeRTOS/LWIP├─esp32-libs3.3.1042MB外设驱动SPI/I2C/UART/GPIO/ADC├─esp32-core3.3.1044MBArduinoAPI封装+bootloader└─esptool5.3.061MBUSB-Serial烧录

合计 967MB。IDE 自动下载还会拉取其他 7 种芯片的 libs、32 位工具链、RISC-V GCC、各版本 OpenOCD、mkspiffs 等不需要的文件,总量约 28GB。

文件清单

① 编译器

项目
文件名xtensa-esp-elf-14.2.0_20260121-x86_64-w64-mingw32.zip
分卷xtensa_compiler_part_00.zip~_04.zip(5 卷,90MB×4 + 35MB)
合并copy /b xtensa_compiler_part_00.zip + xtensa_compiler_part_01.zip + xtensa_compiler_part_02.zip + xtensa_compiler_part_03.zip + xtensa_compiler_part_04.zip xtensa-esp-elf-14.2.0_20260121-x86_64-w64-mingw32.zip
解压到%LOCALAPPDATA%\Arduino15\packages\esp32\tools\xtensa-esp-elf\14.2.0+20260121\

② IDF 框架库

项目
文件名esp32-arduino-libs-idf-v5.5.zip
分卷idf_libs_part_00.zip~_04.zip(5 卷,90MB×4 + 66MB)
合并copy /b idf_libs_part_00.zip + idf_libs_part_01.zip + idf_libs_part_02.zip + idf_libs_part_03.zip + idf_libs_part_04.zip esp32-arduino-libs-idf-v5.5.zip
解压到%LOCALAPPDATA%\Arduino15\packages\esp32\tools\esp32-arduino-libs-idf\5.5-129cd0d2\

③ 芯片驱动库

项目
文件名esp32-libs-3.3.10.zip
分卷无,单文件
放到%LOCALAPPDATA%\Arduino15\staging\packages\esp32-libs-3.3.10.zip(不解压)

Arduino IDE 的安装流程中对这个文件做了特殊处理:下载到staging/packages/后校验 SHA256,通过后自动解压。所以直接放 ZIP 本身即可,IDE 检测到文件存在就会跳过下载并自行解压。

④ Arduino 核心

项目
文件名esp32-core-3.3.10.zip
分卷无,单文件
解压到%LOCALAPPDATA%\Arduino15\packages\esp32\hardware\esp32\3.3.10\

⑤ 烧录工具

项目
文件名esptool-v5.3.0-windows-amd64.zip
分卷无,单文件
解压到%LOCALAPPDATA%\Arduino15\packages\esp32\tools\esptool_py\5.3.0\

操作步骤

1. 获取文件

编号组件CSDN 下载链接
编译器download.csdn.net/download/llm765800916/93107209
IDF 框架download.csdn.net/download/llm765800916/93107213
芯片驱动download.csdn.net/download/llm765800916/93107214
Arduino Coredownload.csdn.net/download/llm765800916/93107215
烧录工具download.csdn.net/download/llm765800916/93107243

付费资源,¥6.90/个。下载后得到 ZIP 文件,解压密码csdn2026,解压后内含download.txt(蓝奏云直链 + 合并说明)。

2. 合并分卷

①和②是大文件拆分。所有分卷下载到同一目录后,CMD 执行:

copy /b xtensa_compiler_part_00.zip + xtensa_compiler_part_01.zip + xtensa_compiler_part_02.zip + xtensa_compiler_part_03.zip + xtensa_compiler_part_04.zip xtensa-esp-elf-14.2.0_20260121-x86_64-w64-mingw32.zip copy /b idf_libs_part_00.zip + idf_libs_part_01.zip + idf_libs_part_02.zip + idf_libs_part_03.zip + idf_libs_part_04.zip esp32-arduino-libs-idf-v5.5.zip

PowerShell 下用cmd /c "copy /b ..."包裹。

3. 创建目录结构

%LOCALAPPDATA%\Arduino15\下创建以下目录(如果不存在):

mkdir%LOCALAPPDATA%\Arduino15\packages\esp32\tools\xtensa-esp-elf\14.2.0+20260121mkdir%LOCALAPPDATA%\Arduino15\packages\esp32\tools\esp32-arduino-libs-idf\5.5-129cd0d2mkdir%LOCALAPPDATA%\Arduino15\packages\esp32\hardware\esp32\3.3.10mkdir%LOCALAPPDATA%\Arduino15\packages\esp32\tools\esptool_py\5.3.0mkdir%LOCALAPPDATA%\Arduino15\staging\packages

4. 解压

逐个解压到对应目录。③号不解压,直接把 ZIP 文件放到staging\packages\

完成后目录结构如下:

%LOCALAPPDATA%\Arduino15\├──staging\└──packages\└──esp32-libs-3.3.10.zip└──packages\└──esp32\├──hardware\└──esp32\└──3.3.10\├──boards.txt├──platform.txt├──cores/├──libraries/└──...└──tools\├──xtensa-esp-elf\14.2.0+20260121\└──bin\├──xtensa-esp-elf-gcc.exe└──...├──esp32-arduino-libs-idf\5.5-129cd0d2\└──esptool_py\5.3.0\

5. 验证

重启 Arduino IDE。工具 → 开发板 → 开发板管理器,搜索esp32,版本选3.3.10,点击安装。IDE 会逐个校验文件,已就位的直接跳过,应该在 30 秒内完成。

工具 → 开发板 → ESP32 Arduino → ESP32 Dev Module,编译 Blink:

voidsetup(){pinMode(2,OUTPUT);}voidloop(){digitalWrite(2,HIGH);delay(500);digitalWrite(2,LOW);delay(500);}

编译通过且不触发任何下载,说明离线安装成功。


其他芯片型号

上面 5 个包对应经典 ESP32(单模组 Xtensa 双核)。用到其他芯片时只需替换③号:

芯片③号包文件名架构
ESP32-S3esp32s3-libs-3.3.10.zipXtensa LX7
ESP32-C3esp32c3-libs-3.3.10.zipRISC-V
ESP32-C6esp32c6-libs-3.3.10.zipRISC-V
ESP32-S2esp32s2-libs-3.3.10.zipXtensa LX7

①、②、④、⑤仍用上面列的文件,不换。

RISC-V 芯片(C3/C5/C6/H2/P4)还需要 ⑥号包:RISC-V GCC 编译器(riscv32-esp-elf-14.2.0_20260121-x86_64-w64-mingw32.zip),路径为packages\esp32\tools\riscv32-esp-elf\14.2.0+20260121\。本文不展开,留作后续。


原理

Arduino IDE 的 Boards Manager 安装流程:

1.解析package_esp32_index.json获取文件列表+URL+SHA2562.遍历files[]:a.检查目标路径/staging路径是否已有文件b.已有且SHA256匹配跳过c.没有GitHub下载校验解压3.全部完成显示INSTALLED

关键在第 2.a 步:IDE 不区分文件是手动放的还是自己下载的。只要文件在预期位置且校验通过,就认为是已下载。这就是整个离线安装的基础。

③号包(芯片驱动)不走解压——它在 JSON 里的archiveFileName指向staging/packages/,IDE 下载完原样保留 ZIP,编译时按需引用。其他 4 个包的archiveFileName指向packages/下的工具目录,下载后自动解压到对应版本号子目录。

http://www.jsqmd.com/news/1169889/

相关文章:

  • TEL 2L81-050174-V1 印刷电路板
  • 问题解决方法:vscode的ai聊天突然不能用了,No utility model is configured for ‘copilot-utility-small‘ while the select
  • 生命涌现的小龙虾技能之【Elderly Gait Instability / Shuffling Step Detection | 老年人步态不稳/小碎步识别】简介
  • RT-Thread 软件定时器 5 大 API 实战:单次/周期模式在 STM32 上的 3 个应用案例
  • 从零到一 | CV转多模态大模型 | week17 | LLM 推理优化 vLLM 详解
  • 保安岗亭厂家测评:日硕科技质量定制出色,服务响应却稍慢!
  • 产品经理开会:2026年5款视频号内容总结工具,快速生成会议纪要
  • SQL性能优化实战
  • Tab补全总卡顿、不精准、漏提示?这5个配置项改完立竿见影,团队已全员落地
  • Unity中5自由度机械臂物理仿真:从ArticulationBody到关节控制实战
  • AI Agent市场2026年关键词:从“能不能聊”到“能不能干” | 企业级数字员工落地深度实测
  • 终极解决方案:3步彻底修复TranslucentTB的Microsoft.VCLibs依赖缺失问题
  • 2026 年国内真人数字人制作平台TOP10:晟诺科讯达第一,企业选型正规参考
  • 8086 实模式寻址:20位地址总线下的基址偏移计算与 1MB 内存访问
  • 解决设备状态黑盒:注塑机数据采集从现场实施到报表生成
  • 2026家装瓷砖十大品牌盘点:主流瓷砖品类特点汇总
  • Windows内核驱动中C++异常处理(vcrtl)原理与实践指南
  • 系统装好了,高拍仪等外设却“罢工”?这个老大难终于有解了
  • 2026年7月最新太原劳力士官方售后客服中心地址电话及服务网点分布 - 劳力士官方服务中心
  • 为什么Google内部团队弃用JetBrains改用Windsurf IDE?——源码级性能压测报告首次公开
  • 实现RAG系统的24小时极速原型:从Paper到可运行Demo的工程笔记
  • 三星AR眼镜2026量产:MicroLED与Android XR生态协同落地
  • 如何实现跨平台直播内容的智能捕获与永久保存?
  • 亚马逊多店铺独立运营如何选择环境隔离工具(隐私隔离浏览器技术解析)
  • 如何三步完成微博备份到PDF:Speechless 终极指南
  • Windows 11优化终极指南:如何用Win11Debloat让你的系统更干净更快速
  • LM358/LM393 选型实战:3个关键参数对比与5个典型电路应用场景
  • ChatGPT-o1推理模型性能真相:实测128K上下文下P99延迟达4.8s——但通过3层缓存预热+逻辑单元隔离可压至1.2s!
  • Rust实现Windows本地搜索工具
  • 不掉屑卫生纸哪家性价比高:联盛森宝专业一流 - MXyuyu