机械键盘坏了怎么办?——客制化QMK改造重铸记!

2020-03-11 23:46:25 8点赞 34收藏 14评论
  • 故事主角的背景

同事淘宝购买的机械数字键盘,用了不久久开始出现不受控制的乱码、且导致电脑死机。寄回淘宝店家维修, 修回来用了两周就又同样故障。淘宝客服沟通麻烦,还搭了不少运费,当尸体扔给了我。所以借着假期时间就有了这篇改造。铝合金外壳,国产的青轴键盘。

机械键盘坏了怎么办?——客制化QMK改造重铸记!


  • 打开看看

机械键盘坏了怎么办?——客制化QMK改造重铸记!

电路板很干净,主控ic估计是上次返修被重新换过有很明显的焊接痕迹,检查发现电路也很简单的矩阵键盘。所有很大概率还是主控IC又挂了。板载的IC是HOLTEK生产的HT68FB560,专门键盘控制的芯片,没有厂家代码所以什么也做不了啦。所以借这自己之前做GH60的经验,直接考虑更换开源的主控就好啦!

  • 开始做自己的客制化键盘

制作思路

  1. 制作就完全基于客制化键盘的概念,最早应该是国外geekhack论坛的爱好者发起的,现在淘宝有各种客制化的方案。从外壳,键帽,等外观,到各种特殊造型、功能的键盘,都可以完全个性化定制。

客制化键盘_淘宝搜索s.taobao.com去看看
  1. 软件上也是有国外已经开源的TMK或QMK固件,这次就选用QMK固件好啦。QMK基于TMK项目的改进,有很友好的刷入的程序。

  2. 硬件就采用自带usb的 Atmege32U4,淘宝上有很多可以选择,包括tennsy 2.0,arduino pro micro(注意不是pro mini 芯片不同)大概十几块钱 就可以搞定。

arduinopromicro_淘宝搜索s.taobao.com去看看


硬件材料准备

  1. 开源主控芯片Arduino Pro Micro

  2. 开关二极管若干(1N4814)*21个

  3. 导线若干

  4. 焊接工具

开源主控芯片Arduino Pro Micro开源主控芯片Arduino Pro Micro


开关二极管开关二极管

皮尺部检测下原有键盘的硬件电路

首先是键盘部分,机械键盘就是一个个开关嘛,非常简单的键盘矩阵。困惑的一点,所有按键都是直接和主控的引脚相连的,对于熟悉朋友知道,客制化键盘的电路是需要串联二极管来保证键盘没有冲突的。这部分在后期改造过程中也费了不少功夫。那么对于原有的主控,是如何控制键盘无冲突的呢?简单测量了下,每行的电压是不同的,4.9-2.7v递减的,难道是通过电压软件判定?没有源码只能猜测了。不过已经坏了的可不好判断。有了解的朋友可以帮解答哈哈。

示意图示意图

皮尺部测量按键灯的原电路

这部分也废了一些些时间,row行是l低电平导通,col列是高电平导通。

led灯的缩略图led灯的缩略图

  • 软件 定制自己的专有键盘固件

  1. 根据键盘布局设定layout

  2. 根据layout 在线编辑自己的固件

  3. 将编辑好的固件刷入到pro micro (需用到1.固件 xxx .hex ,2.qmk_toolbox,3.zadig2.3)

  4. 测试接线——就OK啦


layout网站

机械键盘坏了怎么办?——客制化QMK改造重铸记! 此网站是可以设计键盘的布局,设计好之后,可以导出键盘布局。对于本次来讲,只需要键盘的布局正确,不用太在意里面文字内容。

设计好的布局设计好的布局

Keyboard Firmware Builder网站

设计好布局后,复制 raw data选项卡里面的内容到 Keyboard Firmware Builder网站,点击Import

从此网站方便设计自己的固件从此网站方便设计自己的固件

键盘矩阵的接线方式

注意diode处为二极管的方向选择,这里选择的是列到行,那么二极管的黑色标记向着行,后续焊接要用到。注意diode处为二极管的方向选择,这里选择的是列到行,那么二极管的黑色标记向着行,后续焊接要用到。

主控上的行线和列线的接线引脚

选择引脚选择引脚

32U4的pinout图盘,匹配蓝色处的引脚32U4的pinout图盘,匹配蓝色处的引脚

然后设计矩阵上每个按键的键值。点击每个按键,给每个按键赋值,并可以设计多层按键哦!!!

机械键盘坏了怎么办?——客制化QMK改造重铸记!

机械键盘坏了怎么办?——客制化QMK改造重铸记!

机械键盘坏了怎么办?——客制化QMK改造重铸记!

使用qmk_toolbox将固件刷入pro micro

因为pro micro 内置的是arduino的固件,可以直接被arduino IDE 直接识别,但不能被qmk_toolbox识别,我们需要用zadig安装libusb的驱动程序。

列出所有设备,将pro micro添加libusb驱动。列出所有设备,将pro micro添加libusb驱动。

toolbox工具选择固件和ICtoolbox工具选择固件和IC

注意!!!需要在电路板上短接RST引脚和GND引脚两次,电脑会有usb拔出插入的提示音,进入DFU模式,立即点击flash,会显示成功!

至此我们成功刷好了固件。

备注:刷好的 Pro Mirco连接后会自动识别为键盘,不会被Arduino IDE 识别,如果还想刷回Arduino的固件也是可以的,也很方便。这可以另起文章咯

  • 下面开始苦x的硬件改造啦

干掉原来的主控ic,这是必须的。由于原来的电路中没有二极管,需要添加二极管,我选择把列干掉,刮开使每个按键的列引脚独立。不切断的话,二极管是没有意义的。图中已经添加二极管和切断了列引线。引线刮的我手很累。刮好要测量每个引脚不能和别的引脚或者GND接通。

机械键盘坏了怎么办?——客制化QMK改造重铸记!

机械键盘坏了怎么办?——客制化QMK改造重铸记!

机械键盘坏了怎么办?——客制化QMK改造重铸记!

将行和列的引线接到pro mirco上。用坏掉的usb mirco 头转接下usb。

过程中也不断调试。重新编排引脚灯。还有将背光和num的灯也接入到主控中哦!!


最后测试完美通过

整体花费不高,不算等待快递时间3天,不断爬网找资料,最终完美实现的乐趣还是无穷的。现在将自己的经验风险给大家。当然,所有的按键你都可以自定义。你完全可以将这个键盘改装成游戏专用的键盘。深入可以编辑宏功能,等等等等。非常具有可玩性。而且大神们做好的网站,完全可视化操作,不需要接触代码,更加方便快捷。

测试按键通过一切正常测试按键通过一切正常

合体安装合体安装



展开 收起
14评论

  • 精彩
  • 最新
  • 104键盘估计眼睛要废 [高兴]

    校验提示文案

    提交
    哈哈哈,带眼镜焊

    校验提示文案

    提交
    收起所有回复
  • 这就是传说的飞线么

    校验提示文案

    提交
    对,哈哈半飞线,行线由于在背面没拆

    校验提示文案

    提交
    收起所有回复
  • 大佬, pro micro板子装过libusb驱动后 qmk工具还是不能识别啊

    校验提示文案

    提交
    要复位艺术布丁

    校验提示文案

    提交
    可以识别的,换回原驱动

    校验提示文案

    提交
    收起所有回复
  • 这动手能力逆天了

    校验提示文案

    提交
  • 硬核玩家 [尴尬] [尴尬] [尴尬] 紫薯布丁

    校验提示文案

    提交
  • 好奇你们到底做什么工作,,为啥我啥也不会。

    校验提示文案

    提交
  • 如果二极管不上可以用吗?

    校验提示文案

    提交
    应该没问题

    校验提示文案

    提交
    收起所有回复
  • 32u4引脚那不太懂

    校验提示文案

    提交
  • up您好,请问qmk固件如何刷回Arduino的固件,我搜了别的文章说要用isp下载器。
    去看看

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
34
扫一下,分享更方便,购买更轻松