关于入手 IBM Beam Spring 键盘

买的 Beam Spring 键盘到了 继续讨论(

三月份因为看了上面那篇帖子之后十分好奇,我也定了一个 Beam Spring 键盘(布局是 space saver)。然后前天刚拿到,简单折腾之后打算写一写一些跟键盘相关但是少被提及的东西,然后写一下最初的感受。

其实四月中键盘就发货然后收到了,但是因为一些人尽皆知的原因需要被加征关税,然后报关申请被 UPS 卡了三周,所以前天才到我手上。


关于键盘,我的跟 LdBeth 的都是 Round 1 的 Beam Spring,不同之处是布局。按理说别的东西应该是一样的,实则不然。现在购买 BSSK 和 B104 默认的 Beam Spring 模块是不同的。

根据某人推论,应该是因为较少有人购买 space saver 布局的缘故,库存积压导致使用的模块还是有金属 washer 的;而全布局版本使用的是改良公差后的塑料制 press-fit washer。见图:

然后是金属版有些幽默的质量控制(顺便,这两个都是修过的,主要就是把掉下来的 washer 粘回去),如图:

(模块拆解图我就不放了,LdBeth 的帖子里有,里面是一样的。)

这就导致了金属版的「微」调过程会更蛋疼,因为你可能会遇到一个模块插不进外壳上的洞的情况,以及两个模块之间可能的冲突。然后就是你需要自备强力胶,把掉下来的 washer 粘回去。

同时,你需要使用 wiggle method 的机会会显著增加,不然一个模块可能会在某个方向下卡住。


关于「微」调,我这两天大概花了 10 小时左右:我是先拆掉所有 flyplate,分两组(一组是功能键的,另一组其他)调成差不多的形状然后一次性组装模块。这个大概耗时 3 小时。然后就是各种微调,处理各种坏掉的东西。

就是说我 re-seat 第一个 flyplate 的时候,花了5 分钟,的确比较艰难,但后来熟练了之后虽然因为凌晨连着调了三个小时手一直在抖,re-seat 一个也只需要几秒。我没完全参照 IBM 的维护手册上说的从预留的「维修孔」伸进去拨簧片,而是直接用的水笔笔芯从底部挑的。


一些技巧,提示,对「官方」指南的补充;

  1. 包装里面用来缓冲固定键盘的那两条泡沫塑料条很有用,不要扔(用来在打开底盖检修模块的时候把键盘撑起来);
  2. 调按压力度反馈的时候不一定要把模块取下来。可以用螺丝刀垫住簧片然后对 flyplate 上的导体片施力来微调;
  3. 装好键帽之后如果要调整某个键也不需要把所有键帽拿下来。只要用泡沫塑料把键盘垫的够高就可以从单独处理(有需要取下模块也可以从下面把它从下面抵出来);
  4. 拆下后盖的时候要注意从 xwhatsit 控制器上有一根接在外壳上的接地线。虽然我感觉没什么问题,但是某人是把它弄断了的;
  5. 取键帽的时候如果没有 key puller,可以先用尺从两个相反方向给他撬起来;
  6. 如果要粘金属 washer,三滴就可以。不一定要把模块卸下来再粘。只需要确保模块底部是固定的,然后胶水滴到白色的轴上,把金属片按在上面,保持按键按压状态若干秒(取决于你用的胶水),然后用手提着白色套键帽的地方给它提起来就可以(或者也可以直接把键帽盖上去,会自动弹起来的)。

购买建议:建议最好买 Round 2,如果实在不喜欢它的设计或者觉得太大了那也可以考虑 Round 1 的 B104,最后考虑 space saver,因为它会更折腾。

当然,如果完全不打算折腾,不太建议购买。强迫症也不太建议购买,因为它在某些地方不会很完美(


关于键盘的理念,也就是宣传里除了手感之外的 last for decades 和 100 percent self-reparable,在折腾了两天之后我深有体会。我一开始还怕买的额外模块不够用,现在发现完全不是这样的,坏掉的模块最坏情况只需要一管强力胶,一张胶带和一个长细和硬的东西就可以修好了,Beam Spring 的模块设计也决定了它基本上不会坏到不能修的程度,除非你大力出奇迹把簧片给折坏了。


关于固件,我还没来得及折腾。折腾完了应该会更新或者「从继续讨论」。最后感谢 LdBeth 耐心回答了我许多问题。

6 个赞

不懂 但感觉怎么像是继电器做的键盘… 虽然想过用mcu做一个键盘来着 但个人的动手力是真不足 就放弃了

用的是电容开关

1 个赞

总算是有时间更新了。


首先还是关于硬件的。因为上次调试完我不太满意,有很多键都需要微调,而且 QC 的问题体现的非常明显(键帽高度层次不齐),所以我打算回炉重造。

这次的方法非常成功,之后只微调了一次(F1Ctrl 键),故分享一下,可能只适用于 Round 1。

首先还是把所有的轴拆开。然后根据感受到的簧片的弹性给它分个组。改进版的两个簧片(黑色导体上的和白色轴体上的)的硬度是不一样的。我有 12 个改进版的模块,就把 F1F12 全替换成了改进版,然后先把所有黑色导体上的簧片上方开口宽度调整到统一距离。这个期间可以淘汰掉那些弹性不佳的簧片(估计是工人掰的时候没控制好力度)。然后同样的方法挑选黑色轴并分类(虽然感觉不太应该,但是它们也有不同的弹性反馈),同时筛出那些金属 washer 脱落或松动、塑料加工时有瑕疵的轴。这些轴可以修,但我有 12 个的冗余,所以直接退休。

上面一步建议分多天做。我第二次调键盘可能调了两个月。

然后组装的时候,根据你的喜好把每个键填上就好。装的时候也可以凭你的感觉去对每个轴做一些微调。建议在组装轴体的时候依次挑选弹性相似的轴填充在同一部分键盘区域,这样可以保证比如字母区的所有键手感一致。一定要遵从一定的顺序填充(比如左上到右下),因为公差的问题,每个模块嵌入键盘外壳上的槽的角度会有些许差别,这就意味着如果你把一个键周围都插满了,那个键你可能插不进去了(而且过程中极易将别的装好的模块的导体片弄出来导致前功尽弃)。

组装完了先测试再上键帽。如果你前几步做的足够细心(或者说完成花费的时间越长),需要微调的键就越少(我这次只有两个手感不对)。


然后是固件部分。它预刷的是 Vial,可以即时用 Chrome 内核的浏览器配置。但是,这显然是有代价的。所有你能实时配置的东西都要存储在只有 1kb 的 EEPROM 上。因其优势无法对冲劣势(键位稳定之后就没有优点了),所以我决定换到了(有更多特性)的 QMK。

期间参考了 LdBeth 的这篇文章。主要用到的就是 Purdea Andrei 当初给 QMK 打的 capacitive 的键矩阵的初始化和扫描函数。别的就是一些 trivial 的 QMK 更新带来的不兼容。需要额外注意的就是 SRAM 占用,因为它同样只有 1kb,而键的初始化和扫描已经占用了不少。动态键盘宏同样也会占用不少。

我同时也写了一篇文章,意在补充一些不那么细节的细节。我的配置在这里,目前是 42 个 commit(

1 个赞