复刻一个现成项目

他人已经完成了一个项目,你按清单采购一套一样的硬件,把工程复制一份,改成你的 WiFi,烧进去就能跑。这是这个平台上最快的一次成功

一览

复刻之后你得到什么一个完全属于你的项目:源码、硬件方案、依赖清单、资料,全都在
和原作者的关系互不影响。你改你的,他改他的
要不要登录才能看公开项目不登录也能看,还能下载固件。要复刻才需要登录
要花多久屏幕前 10 分钟左右
需要什么和原项目一样的板子和器件——发布页上有清单

为什么值得从这里开始

从零开始做一个项目,你要同时应付四件新事:怎么描述需求、方案对不对、硬件买对没有、烧录环境通不通。复刻把前两件消掉了——方案是验证过的,固件是编译过的。你只需要确认硬件和烧录环境。

等这一轮流程走通、板子上确实有程序在运行,再回头做自己的,你会清楚得多。

第一步:挑一个

打开 whispbuild.com 往下滚,就是项目广场不登录也能看,「项目广场」标题右侧的「查看全部 →」是完整列表。

WhispBuild 首页:上半部分是描述设备的输入框,往下是「项目广场」,列着两个可以复刻的项目卡片
首页下半部分的「项目广场」,标题下面一行写着「点开能看到硬件方案、接线、代码和可直接烧录的固件,以及复制项目继续开发」。每张卡片是一个别人发布出来的完整项目——封面、名字、一句简介,底部一行是它用的芯片和框架(ESP32-S3 · esp-idf)。被复刻过的项目还会在这一行右端标出次数:左边那张「ESP32-S3 HC-SR04 实时距离监控网页」写着「被 clone 2 次」,右边那张一次都没有,这一格就是空的。左边这个项目,就是本文档从头用到尾的那个。

点进去是发布页——那是一份完整的复刻指南。

登录之后,应用首页下方还会多出两个标签页:我的 project公开共享公开共享里是同一批项目,切过去挑也一样。

第二步:读发布页,确认你能做

发布页由固定的几节组成,左边有目录可以直接跳过去。默认次序是:

成品做出来长什么样。有图或视频最直观
项目概览该项目的用途
购买链接作者填了才有这一节
烧录固件下载、烧录参数,以及这份固件里已经烧进去的配置
复制项目「克隆继续开发」按钮在这一节,下面还列着克隆之后你必须改的那几项配置
工作原理框图、时序,想理解就看这里
快速复刻步骤你要看的重点——两条路:「在 WhispBuild 上复刻」(标着「推荐」)和「手动搭建」。接线和装配的图也在这一节
测试结果作者验证过什么、遇到过哪些问题
物料清单(BOM)需要采购哪些器件,外观如何
参考资料引脚映射、依赖清单、固件明细、原理图与 datasheet

前五节的位置固定;后面几节的次序作者可以调整,所以你看到的顺序未必和上表一致。「购买链接」和「参考资料」没有内容时整节不出现,其余各节即使是空的也在。

本文一直在用的那个示例项目就有这样一个发布页:物料清单、引脚映射、烧录参数都在上面,不登录也能看打开这个发布页 ↗

按这个项目做出来的实物:面包板上的 HC-SR04 与 ESP32-S3-DevKitC-1
照着它复刻出来就是这个样子。发布页的「物料清单(BOM)」那一节会告诉你要买哪些器件。

先看「物料清单(BOM)」,确认你买得到、或者已经有。硬件对不上,复刻出来也跑不了——固件是按照那套硬件编的。缺什么就先补齐。

第三步:点「克隆继续开发」

这个按钮在发布页的「复制项目」那一节,就在标题右侧。点下去平台会把整个工程完整复制一份,创建成你自己的项目

  1. 点「克隆继续开发」。
  2. 屏幕上弹出「基于模板新建 project」窗口。Project name 默认沿用原项目的标题,你可以改成自己的叫法。
  3. 点窗口里的「创建 project」。按钮会变成「正在创建…」,等它跑完。

创建失败的话:窗口不会关闭,「创建 project」按钮上方会多出一行红色的错误说明。按它说的处理完,再点一次「创建 project」——重试是重新创建一次,不接着上一次的半成品往下走。

看到什么算成功:创建完成后界面直接进入这个新项目,不用自己去项目列表里找。Main 面板上已经有完整的硬件方案,源码面板里已经有代码,Main 面板顶部标着「源自 XXX v1」。

第四步:改成你自己的

复刻过来的工程里,通常留着原作者的配置——他家的 WiFi 名和密码。发布页上有两处讲这件事:「烧录」那一节用一张表列出这份固件里已经烧进去的配置,「复制项目」那一节里的「项目配置」则是一份逐条写明的清单,告诉你复刻之后必须改哪几项。以本文一直在用的那个测距项目为例,「烧录」那一节列出的是:

字段
MEASUREMENT_INTERVAL_MS1000
WIFI_SSID"whispbuild"
WIFI_PASSWORD"whispbuild"

你不用自己去找是哪一行代码,直接在对话里说明即可:

把 WiFi 改成我的:名字 MyHome,密码 12345678。 测距间隔从 1 秒改成 500 毫秒。

它会改好对应的配置项、重新编译,产出一份属于你的固件。

为什么不能直接用发布页上下载的固件?那个固件是已经编译好的字节,里面烧死了原作者的配置,改不了。发布页上也写着这句话。想换成你自己的,必须通过克隆拿到源码。

第五步:接线、烧录

接下来和自己做的项目完全一样:照 引脚连接表接线,然后 烧录

接线之前还是要对实物核一遍。原作者用的板子和你买的可能是同一型号的不同版本,引脚不一定完全一致。核的是板子上印的丝印字

不想用平台,自己从头搭也行

「快速复刻步骤」那一节除了「在 WhispBuild 上复刻」,还有一条「手动搭建」的路:先克隆拿到源码,再脱离平台自己装工具链、自己编译。发布页上给了完整的依赖清单和构建参数。

这条路更繁琐,但如果你原本就有一套熟悉的开发环境,可能反而更顺手。

如果你熟悉软件开发

克隆的语义接近 git clone + 一次完整的 fork:源码、硬件方案、依赖清单、上传的资料全都复制一份到你名下,之后两边独立演进,没有 upstream,也没法拉取原作者后来的更新

「源自 XXX v1」只是一条血缘记录,不是一个可同步的引用。原作者要是撤下整个模板,你的副本照常存在——那条记录会变成不可点的灰字并标上「(已撤下)」。

常见问题

复刻会不会影响原作者?

不会。你获得的是一份独立的副本,改什么都跟他无关,他也看不到你改了什么。

原作者删了他的项目,我的还在吗?

在。你的副本是完全独立的。而且删除项目并不会把他已经发布出去的那一版下架。只要那个模板还是公开的,发布页照常打开,Main 面板上那条「源自 XXX」也仍然是一个可以点开的链接。如果作者先把它转成私有再删项目(文档建议的下架顺序就是这个),那条记录会变成不可点的灰字;只有执行「撤下整个模板」时才会另外标上「(已撤下)」。

我可以复刻之后再发布出去吗?

可以。发布的是你自己那一份。怎么发布 →

公开项目我不登录能干什么?

能看发布页全文、能下载固件。要复刻就必须登录,因为复刻会在你名下创建一个项目。