跳转到内容

Wokwi 在线仿真 ​

Wokwi 是浏览器里的电子仿真器,可以在没有开发板的情况下,拖出一块 ESP32、接上 LED、OLED、传感器,然后运行真实编译出来的固件。适合教学、分享可复现的问题,以及在 CI 里跑固件测试。

概览 ​

Wokwi 对个人用户免费,商业与专业用途有付费方案。它的仿真器与 Wokwi CI 使用同一引擎。

在 Wokwi 的 ESP32 文档里(2026-10-14)能看到:

  • 稳定支持:ESP32、C3、S2、S3、C6、C61、H2。
  • 测试阶段:C5 与 S31 为 alpha,P4 为 beta。
  • 支持 Wi-Fi(项目可以通过虚拟网络访问 MQTT、HTTP、NTP 等),P4 使用 ESP-Hosted 提供 Wi-Fi。
  • 外设:GPIO、UART、SPI、I2C(仅主机,不支持 10 位地址)、RMT、LEDC、ADC、定时器、看门狗、RNG、AES / SHA / RSA 加速器等。
  • 支持 GDB 调试。
  • 不支持或仅部分支持:蓝牙 / BLE 在所有芯片上都没有实现;MCPWM 不支持;I2S 仅原版 ESP32 部分支持;TWAI、RTC 为部分支持;ULP 仅 C6 可用。
  • 默认把 CPU 频率上限设在约 8 MHz 以保持仿真速度,所以时序相关的结论要谨慎。

关键信息 ​

在浏览器里用 ​

打开 wokwi.com,选 ESP32 项目模板,会有两个主要文件:sketch.ino(或 MicroPython、Rust 项目文件)和 diagram.json(电路图)。点击运行就开始仿真,串口输出显示在下方。可以把项目链接分享给别人复现问题,也适合在论坛提问时附上。

VS Code 扩展 ​

Wokwi 提供 VS Code 扩展,让你在本地用 ESP-IDF 或 PlatformIO 构建出固件后,直接在编辑器里仿真,不用上传源码到网站。配置文件 wokwi.toml 指向固件文件,diagram.json 描述电路。具体字段请参考官方文档,本文没有核对最新格式。

Wokwi CI ​

Wokwi CI 在 GitHub Actions、GitLab CI 等环境里运行仿真,把固件上传到云端仿真,再把串口输出传回,用于判断测试是否通过。官方说明固件不会被保存,仿真结束后即删除。

命令行工具 wokwi-cli 的基本用法是在命令里加 --timeout 控制运行时长。更复杂的测试用「自动化场景」模拟按键、改变传感器数值并检查输出。

不同方案有仿真时长配额(滚动 30 天窗口):

方案每 30 天分钟数单次最长
Free505 分钟
Hobby2005 分钟
Hobby+50010 分钟
Pro200050 分钟

套餐与额度会变,请以官网当前定价为准。

一个典型流程 ​

  1. 用 Arduino-ESP32 或 MicroPython 在 Wokwi 里先把逻辑跑通。
  2. 把电路图与代码拷贝到本地项目,用 VS Code 扩展继续仿真。
  3. 在 GitHub Actions 里用 wokwi-cli 做回归测试。
  4. 真机上验证蓝牙、射频、功耗这些仿真器覆盖不到的部分。

仿真不等于实机

仿真器里跑通不代表真机一定能用:BLE 没有仿真,真实射频、功耗、电源噪声、引脚电气特性都不在仿真范围内。涉及 5V 与 3.3V 电平、市电、电池的电路,仍需要按数据手册设计,不能只看仿真结果。

适合谁 / 不适合谁 ​

适合:教学、没有硬件时试验、在论坛分享最小复现、为固件写自动测试。不适合:蓝牙、无线射频、功耗优化、精确时序调试。想了解选硬件,参见 第一次上手。

参考资料 ​

ESP32 非官方中文调查手册,与乐鑫科技(Espressif Systems)无隶属关系。