从聊天窗口到桌面:用 AI 和 tscircuit 设计的分体键盘
From chat window to my desk: An AI-designed split keyboard
一位开发者用 AI 加 TypeScript 和 tscircuit,基于 Foostan 的 Corne 设计出可用的 RP2040 分体键盘,配备 Choc 轴、USB-C、两半之间的 TRRS 连接和配套外壳。AI 负责编写和修改代码,tscircuit 的自动布线器快速完成两半铜线与过孔布线,外壳与 PCB 共用同一套坐标。成品打字测试为 91 WPM、99% 准确率。
2026年10月11日5分钟阅读
用AI、TypeScript和tscircuit构建RP2040 Corne及可打印外壳。
我想看看能否把与AI的对话变成一把能用的键盘。我从Foostan的Corne入手,让AI复制PCB尺寸和按键布局,然后在tscircuit中为它设计一个可打印外壳。
最终我做出一把可用的RP2040分体键盘,配备Choc轴、USB-C、两半之间的TRRS连接,以及配套外壳。我的工作是描述我想要什么、检查预览,并不断要求修改直到装配合适。AI负责编写和修改代码。
在tscircuit中,设计用TypeScript和JSX编写。每个按键都是可复用组件,带有位置和旋转的props。连接也用代码编写。以下是项目中的一个小例子:
tsx
<ChocKey
name={component.name}
pcbX={component.pcbX}
pcbY={component.pcbY}
pcbRotation={-(component.pcbRotation ?? 0)}
/>
<trace from=".SW1 > .pin1" to=".U1 > .pin14" />ChocKey组件将导入的热插拔插座封装与轴的机械几何形状结合在一起。可拆卸轴被标记为doNotPlace,以便与工厂组装分开安装。
无需漫长等待的布线
组件和连接就位后,tscircuit的自动布线器处理了两半的铜走线和过孔。在tscircuit中为这块板布线很快。我试了Astra,然后失去了耐心,因为它花了3个多小时还在继续。能够通过tscircuit自动布线器快速重新布线,让尝试更改和检查结果变得更容易。

tscircuit PCB查看器中的面板布局,两半键盘并排显示。
制造限制也在同一份代码中:
tsx
<board
outline={outline}
minTraceToHoleEdgeClearance={0.21}
minViaHoleDiameter={0.2}
minViaPadDiameter={0.45}
>
{layout.components.map(renderComponent)}
</board>对于外壳,我要求AI做一个扁平外壳、薄壁、轴板和支撑以减少形变。它使用PCB的外形、安装孔和按键位置,因此所有内容共享相同坐标。在把板子送去制造之前,我可以在tsci dev中检查PCB和外壳如何装配在一起:
tsx
import { assembly } from "tscircuit"
<assembly.device name="CORNE_LEFT">
<CorneHalf side="left" />
<CorneEnclosureParts side="left" />
</assembly.device>在这个包装器内部,外壳和板是assembly.printedpart元素,带有生成的CAD几何形状。底座和板导出为单独的STEP文件,用于切片和3D打印。
对于CAD工作,CLI还可以将外壳的打印部件一起导出为STEP装配体。对于左半部分:
Shell
tsci export left.circuit.tsx \
--format assembly-step \
--output corne-left-enclosure.stepassembly-step格式将打印部件保留为一个装配体中的独立命名部件。使用--format step可导出PCB及其电子元件的STEP。

PCB和黑色外壳在tscircuit的3D查看器中一起预览。
当需要更改时,我可以直接要求:“把板做平”、“使用现有安装孔”或“给线缆留出空间”。然后我会在订购或打印任何东西之前检查更新后的预览。
我把导出的STEP文件导入Bambu Studio,为3D打印准备外壳和轴板。

Bambu Studio中的外壳和轴板,准备打印。
在制造之前,我还在tscircuit的3D查看器中查看了包含两半键盘的面板。

制造前在tscircuit中渲染的3D面板预览。
从制造到首次固件测试
一旦我对设计满意,就把Gerber和钻孔文件、分组BOM以及包含两半的面板贴片文件发给PCBWay。制造文件打包进一个ZIP:
Shell
tsci export panel.circuit.json --format gerbers --output corne-fabrication.zip
PCBWay发来的面板,包含两半键盘。
AI 还生成了固件。刷写两半只需拖放:我在 bootloader 模式下通过 USB 分别插入每一半,然后把它的固件文件拖到出现的驱动器上。两半都刷好后,我把它们连接起来进行第一次测试。

刷写完 AI 生成的固件后的第一次测试,两半的 LED 都亮了。
完成的键盘
固件运行起来后,我装上了轴体和键帽,并把两半放进它们黑色的打印外壳里。就这样:我桌上出现了一把能用的键盘。


再看一眼完成的键盘,蓝色背光已亮起。
快速打字测试
91 WPM,准确率 99%。键盘能用;离我的最好成绩还有点距离。😅


疯狂的时代就在前方,你可以在不懂一行代码、也不是硬件专家的情况下,把一个产品从提示词变成现实。去看看 tscircuit.com
来源:Hacker News · imrishabh18.github.io