Embedder:一个硬件感知的嵌入式系统AI编码智能体


Embedder 是一个硬件感知的 AI 编码代理,可以编写固件并在物理硬件上进行测试。

我们曾经满怀希望地让Cursor(某个代码生成AI)为STM32上的一个新型传感器写个I2C驱动,结果它信心满满地输出了一堆代码,用的寄存器在芯片手册里压根儿没这号人物,调用的HAL函数更是来自另一个芯片家族,仿佛它穿越到了平行宇宙的意法半导体总部,拿错了设计图纸还自以为是地开工了。

更离谱的是,它输出代码时那副“我肯定没错”的姿态,简直像极了那些刚毕业就敢在评审会上拍桌子说“这逻辑不可能出错”的实习生,让人又气又笑。

问题的根源在于:它根本不知道自己在写什么。

没有上下文,没有芯片手册,没有原理图,甚至连你用的是STM32F4还是STM32H7都分不清,就敢开写?这就像让一个只会背菜谱的机器人去做满汉全席,结果它把东坡肉和佛跳墙混在一起,还自信满满地说:“这是创新融合菜!”

可笑的是,哪怕它偶尔碰巧写对了代码,也完全无法验证——它不能烧录到板子上,不能看串口输出,不能测波形,不能调GDB,只能靠开发者手动复制粘贴、编译、烧录、测试、发现问题、再回去改提示词,然后重复整个流程。

于是我们忍无可忍,决定自己动手,丰衣足食——于是诞生了Embedder,一个真正懂硬件的“嵌入式AI程序员”。

它不是那种只会背API的书呆子,而是会看数据手册、能读原理图、知道你用的是哪个引脚、哪个时钟源、哪个外设配置的“实战派”。你可以把芯片手册、参考手册、电路图、应用笔记一股脑儿上传到我们的Web控制台,Embedder会像人类工程师一样“预习功课”,在执行任务时自动带入上下文。

这意味着它不会再把I2C1的寄存器写到I2C3的位置上,也不会再调用一个只存在于STM32L4系列的函数却用在F1系列的项目里——它终于学会了“实事求是”,而不是“凭空捏造”。

但Embedder的野心不止于此。它不只是个会读文档的AI,它还能动手!是的,你没听错——它能直接和你的硬件互动,真正实现“写完即验证”的闭环开发。它可以通过串口控制台像普通开发者一样读取板子的输出,检查是否打印了预期的日志,确认I2C通信是否成功,甚至能判断传感器返回的数据是否在合理范围内。

如果发现异常,它不会像其他AI那样一脸懵地问“你要不要试试改个寄存器?”,而是会主动分析问题,提出修复方案,甚至自动重试。

更厉害的是,面对复杂bug或疑似硬件问题,Embedder还能启动一个专门的“调试代理”,支持单步调试,连接本地或远程的GDB服务器,像老练的嵌入式工程师一样深入寄存器层面排查问题。

这哪是AI,简直是请了个24小时在线的嵌入式专家,还不用付五险一金。

你可能会问:这么厉害的东西,难不成得买个专用服务器才能跑?错!我们深知嵌入式开发者喜欢轻量、灵活、命令行操作,所以Embedder被设计成一个简单的npm包,一句话就能安装运行:

npm i -g @embedder/embedder && embedder

就这么简单。装完就能用,无需复杂的配置,也不用绑定一堆云服务(当然,你要是想用云端算力也行)。它就在你的终端里,随时待命,等你扔一个“帮我写个SPI驱动”或者“调试一下这个DMA传输失败的问题”的任务过去。它会先看看你上传的文档,再结合当前工程代码,然后动手写、烧录、测试、反馈,整个过程一气呵成,省去了你反复切换IDE、串口工具、GDB、文档PDF的痛苦。想象一下,以前你可能花半天时间调一个I2C地址不对的问题,现在Embedder十分钟内就定位到是设备地址少了个右移位,还贴心地告诉你:“兄弟,你忘了从机地址通常左对齐,需要左移一位再传。”——这种体验,简直像从骑自行车升级到了开特斯拉。

目前Embedder正处于免费公测阶段,整个本月都无需付费,我们鼓励大家大胆试用、疯狂提bug、尽情吐槽。我们不怕你发现问题,就怕你不说。因为我们知道,真正的嵌入式开发充满了各种“只有踩过坑才知道”的细节:比如某个引脚复用功能需要先开启时钟,比如某个HAL函数在特定模式下会死锁,比如某个传感器的初始化序列必须严格按手册的时序来,差一毫秒都不行。这些坑,光靠AI自己学是学不会的,必须靠你们这些每天和示波器、逻辑分析仪打交道的“硬核战士”来教会它。

所以我们真诚邀请你分享你的开发故事,无论是“我昨天被一个电源噪声搞崩溃了”还是“我用三行汇编救了整个项目”,我们都想听。

未来,我们计划推出按使用量计费的个人版和功能更强大的团队版,支持多设备协同调试、私有模型微调、企业级文档安全等高级功能。

但现在,我们只想把Embedder打造成嵌入式开发者最靠谱的“AI搭子”——不浮夸、不画饼、不搞玄学,只解决真实问题。毕竟,在嵌入式世界里,代码能不能跑,示波器说了算,而不是PPT。

我们不信“AI将取代程序员”,但我们坚信“AI能让程序员少干蠢活”。而Embedder的使命,就是让你少烧几块开发板,少熬几个通宵,多一点时间去思考真正有价值的问题。