返回

不会编程
也能做一个应用。

你只要把需求说给 AI 编程助手(WorkBuddy / Claude Code / Cursor),剩下的它替你做完——生成、编译、烧录、发布,一路跟它走就行。

做一个应用

你不用碰命令行,也不用懂代码。把下面的话复制给 AI 编程助手,它会替你生成应用、编译、烧录到徽章上,还会截图给你看效果。

⌘
我是开发者,想直接写代码? 这里的教程是给「不会编程的普通用户」看的。会写代码请直接去看 GitHub 上的完整 README——那里有环境搭建、工程派生、编译烧录、发布的全套命令。
1

先把徽章连上电脑

用一根带数据功能的 Type-C 线把「谷仓电子徽章」连到电脑(普通充电线可能只供电、不能传数据)。这一步要在让 AI 动手之前完成——只有连着设备,AI 才能替你烧录、截图、验证效果。

2

让 AI 检查开发环境

把这句话复制给你的 AI 助手(WorkBuddy / Claude Code / Cursor 任选其一):

发给 AI
请先克隆这个仓库:https://github.com/SDGOODS/SDGOODS-ESP32S3
然后按里面 docs/ENVIRONMENT.md 的要求,
检查并配置这台电脑的开发环境。缺什么装什么,每一步都告诉我在做什么;
装完跑一次环境检查,把结果汇总给我。

AI 会自动检查并安装 Python、ESP-IDF 工具链和 USB 驱动,最后给你一份环境报告。过程中弹出的「是否允许」点确认即可。

3

生成并烧录第一个应用

环境好了,再把这句发给 AI,先跑通一个最小的「Hello SDGOODS!」例子:

发给 AI
请先克隆这个仓库:https://github.com/SDGOODS/SDGOODS-ESP32S3
然后按里面的 README 与 AGENTS.md 规范,
用 tools/new_app_project.py 生成一个叫 HelloApp 的独立应用工程,
把屏幕问候语改成 Hello SDGOODS!,编译后烧进连着的谷仓电子徽章,烧完截屏给我看效果。

AI 会生成一个最小应用,圆屏中央显示 Hello SDGOODS!,然后烧录到徽章并截图给你看。看到画面就说明整条链路跑通了。

4

把「Hello」换成你想要的应用

跑通之后,用大白话把你想做的应用描述给 AI(计时器、相册、小游戏、时钟天气、待办……都可以),它会在 HelloApp 的基础上改出来:

发给 AI
请把 HelloApp 改造成一个「番茄钟」应用:圆屏中央显示倒计时,
点一下开始/暂停,顶部下滑的控制中心保持默认就好。
改完编译烧录到徽章,并截图给我看效果。

(上面「番茄钟」换成你自己的想法即可。)AI 改代码时都会遵守仓库里的 AGENTS.md 规范,不用你操心细节。

~10min
第一次跑通
0 行代码
需要手写
3 段
可复制提示词
按设备 / 约 15.9MB
多应用上限(看设备剩余空间)/ 单应用上限

发布到平台

应用做好、真机上验证没问题了,就可以发布到平台。两条路结果一样,选一条跟着走即可。

1

让 AI 帮你发布(推荐)

把这句话发给 AI,它会引导你生成一个开发者令牌,然后自动打包、填信息、配截图、提交审核:

发给 AI
请帮我把 HelloApp 发布到谷仓开放平台。
我会在平台开发者设置里生成一个 sdg_ 开头的开发者令牌发给你,
你负责打包固件、填名称 / 简介 / 分类、配好截图并提交审核,完成后把结果告诉我。

AI 会先让你去平台的「开发者设置」里生成一个 sdg_ 开头的开发者令牌(粘贴给 AI 一次即可),剩下的自动完成。过审即上架。

2

或自己在网页上发

不想用 AI,也可以自己动手:

① 先跟 AI 说一句「帮我把 HelloApp 打包成能上传的 app.bin」;② 打开 sdgoods.ai 登录,进入「我的中心 → 上传固件」;③ 上传那个 app.bin,填名称 / 分类 / 简介(中英文)/ 截图(最多 4 张,360×360,第一张作封面),截图可以点「从设备截图」直接连真机抓图;④ 提交审核。

3

等审核上架

提交后进入审核队列(状态显示「审核中」),通常 1-2 个工作日 通过,过审即公开上架到市场。想再改可以先存成草稿,之后随时回来完善再提审。

!
注意: 平台上同一个应用任何时候只应有一条记录——重新发布 = 先删旧记录再上传新固件,避免出现两个同名应用。审核中也可以先取消再改。
⌘
开发者想用命令行 / MCP 直推? 见 GitHub docs/PUBLISHING.md(打包 → 令牌 → 直推全流程)。

安装到徽章

你无需安装任何驱动。Chrome 89+ / Edge 89+ 内置 WebSerial API,一根 USB 线即可完成安装,整个过程 ≤ 30 秒。

1

打开固件市场

在市场页面找到想安装的固件,点开详情,点击底部的 安装 按钮(不是下载 .bin 文件)。

2

浏览器弹出串口授权

Chrome 会弹窗让你选择 USB 串口设备。找到 SDGOODS · USB-JTAG/serial 这一项,点连接。

JS · webserial.js requestPort
const port = await navigator.serial.requestPort({
  filters: [{ usbVendorId: 0x303A }]   // Espressif VID
});
3

开始烧录

浏览器接管 USB 后会自动 擦除 → 写入 → 校验 → 重启。屏幕会显示绿色进度条,整个过程不需要你动手。

TERMINAL · OUTPUT ~30s
> connecting... OK
> erasing flash... 100%
> writing 0x10000 / 0x80000 [████░░]
> verifying... OK
> restarting device... OK
// 你的固件已经在徽章上跑起来了
i
浏览器兼容: 仅 Chrome / Edge / Opera 支持 WebSerial。Firefox / Safari 用户需要先用 USB 线安装一次(开发者代装)。

FAQ

开发者高频问题速查。如果你的问题不在这里,去看 开源仓库 README 与 docs/,或邮件联系 zhangzuoliang321@126.com。

Q固件最大能多大?
提交与上架不受体积限制:大包同样能上传、过审、上架,能不能装才是问题。

· 多应用:没有全平台统一的上限,装不装得下取决于那台设备的剩余空间。设备会按应用大小安排位置,每个应用另需 56 KB 的保留区(放封面)和一点余量,以免写到相邻应用。判据始终是最大的一块连续空闲空间,不是剩余总量。
· 单应用:应用直接写进出厂区,不受上面这条线约束 —— 设备会让它一直用到用户数据区之前,当前布局下最大约 15.9 MB(比整个多应用槽区还大,代价是不能与别的应用共存)。这个上限由设备自己的分区表决定,不是写死的常量。

官方示例「Hello SDGOODS!」约 1.7 MB,一般应用都远小于上限。
Q可以闭源吗?
可以。平台支持上传 预编译的 .bin,不要求公开源码。但市场页面会标注为「闭源固件」,用户可能更倾向于开源项目。
Q下载次数怎么算?
每次用户点击 安装 且成功烧录到设备算 1 次。失败的连接尝试不计入。同一个用户重复安装同一固件算多次(开发自测是常见情况)。
Q能商用吗?
开源工程以 Apache-2.0 发布,代码可自由商用、可闭源分发;但「SDGOODS」品牌名与标识不在代码授权范围内(见仓库 TRADEMARK.md)。你自己的应用固件想怎么分发、收费由你决定。