/Small-keyboard---based-on-QMK-and-VIA

Small keyboard - based on QMK and VIA

Primary LanguageCGNU General Public License v3.0GPL-3.0

小键盘是在淘宝上购买的由网友DIY制作的.

  • 它使用了一个4*6的键盘矩阵, 一块1.3寸的 4针接口, ssd1315驱动(兼容1306) 128*64的OLED点阵屏幕和一个旋转编码器.
  • 主控芯片为ATmega32U4, 8 bit 单片机.
  • 固件由网友从mak01这个键盘的基础上修改而来. 最早制作于2018年, 在2022年我修改固件时发现使用QMK的最新编译方式已经不能成功编译老的所有文件, 经过我的研究, 将其中过时的代码修改成最新的写法, 可以使用QMK官网的编译方法成功编译.
  • 编译键盘固件主要需要以下文件: config.h, rules.mk,<键盘名>.c, <键盘名>.h, 如果要使用via图形界面来修改键盘固件, 省却每次都要编译的麻烦 , 还要有via.c.
  • 根目录下的三个JSON文件是键盘的外观设计, 其中keyboard-layout.json是qmk官网的在线编辑器使用的, 但是由于生成的太早, 现在新版的编辑器已经不支持打开. 剩下两个JSON是给VIA这个键盘编辑器用的, 分别对应左手版和右手版, 因为作者定制了两个款式. 我的是按键在左边的版本.
  • 小键盘本来已经具有基本的功能, 需要更改按键使用VIA即可, 但是原版固件只写了3层按键, 导致如果想要多一些层的话就会不太够, 我主要想将层数修改为默认的16层, 这样按键应该就够多了.
  • Custom Keys.json 是我自己的VIA键位设置, 是根据我自己的需求来设定的, 刷写固件时默认的键位设定只是用来演示的一些按键,拿到手还要自己去写入自己的键位. 只有一个地方需要注意, 默认键位第二页右下角是RESET键, 在刷写固件的时候需要用到来进入刷机模式。如何知道在第二页? LED灯右边的几颗颜色是不一样的时候就处于第二页。 为什么不把键位直接刷进固件中呢, 因为在文本编辑器里面写键位设定比较麻烦, 远没有VIA中来的直观, VIA修改起来也要方便得多。所以固件里面的默认键位我就基本留空没有去修改。在VIA中先读取VIA.json, 再在键位设置里面读取Custom Keys.json就可以一次性设置好所有我保存的键位.
  • xjp_via.hex是最新版的键盘固件文件. 可以直接刷入键盘.