如上文所述 这是一个16键的自定义宏键盘
每个按键最大实现42行宏定义
以及带有一个滚轮 两个方向模拟了两个不同按键 同样支持最大42行宏定义
主控板 x1
本来想用arduino实现的 但是我发现了这个好东西
https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-15650377400.5.524dda783n9xmD&id=548316293212
这是使用的键盘主控 带有上位机 不需要改代码就能编辑宏
MX键轴 x16
键帽 x16
定制pcb x1 设计文件和Gerber文件在files里
这是提供滚轮功能的材料
不影响键盘部分工作 因此作为可选材料
机械式编码器 x1
光电式当然更好 不过我提供的源码是针对机械式编码器的
arduino promini x1
任何arduino都能工作 这里由于体积限制使用了promini
1kΩ 贴片电阻 封装0603 x6
9013 贴片三极管 封装sot-23 x3
这两个部分是为了配合arduino实现短接主控板C/R控制脚 具体原理图在files/encoder/encoder.pdf
代码在flies/encoder/encoder.ino
外壳采用3d打印方式加工
键帽我使用的是无刻键帽 再用pet贴纸打印图标黏贴在上面
经过最近的使用 牢固度挺好 不易掉色 是可选的键帽标识方案
由于主控板原因 没有再更换usb接口 懒 因此使用了miniusb接口2019年了
外壳的usb开口根据miniusb尺寸设计 更换typec接口请确认尺寸是否正确
电路原理图在files里 展示为pdf文件
原理图通过lceda绘制 .json文件是lceda源码
提供altiumdesigner文件 但不保证完整性与正确性
pcb源码展示为files/pcb/keyboard.json
可导入lceda编辑
pcb制造Gerber文件展示在files/pcb/Gerber_keyboard.zip
使用lceda绘制 生产前请使用Gerber浏览器检查要求
提供alitumdesigner文件 由lceda导出 展示为files/pcb/keyboard.pcbdoc
由于是导出文件 不确保准确性与可用性 具体参考lceda对于导出文件的解释
https://docs.lceda.cn/cn/Export/Export-Altium/index.html
打印件使用Sketchup绘制并输出stl
由于Sketchup特殊的实体密封 不保证所有切片软件&上位机不出错
打印前请检查切片结果
as its described, this is a 16-key custom macro keyboard
with maximum 42-line macro definition per key
and a wheel which can simulate two different keys, also support 42-line macro per key
controllerboard x1
I supposed to use an arduino,but later I found some excellent stuff for this project
This is the link of the controller which is used in this project
https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-15650377400.5.524dda783n9xmD&id=548316293212
Unfortunately,I didn't find anything similiar to this on aliexpress/ebay
MX switches x16
keycap x16
custom pcb x1 the design files and Gerber files are shown in the flies/pcb floder
this is the part which provides the wheel
it doesn't affect the normal function of the keyboard
mechanical encoder x1
photoelectric encoders are clearly better,but the sourcecode I provided is designed for a mechanical encoder
arduino pro mini x1
any arduino should work,I used promini here due to voulme limitation
1kΩ surface-mount resistor package 0603 x6
9013 surface-mount triode package sot-23 x3
this two components are usde to short the C/R pins on the controller with arduino
specific diagram are shown in the files/encoder/encoder.pdf
code is shown as files/encoder/encoder.ino
The case is 3d printed
I used none-marking keycap and then paste the icon with PET stickers
it seems to work well,and not faded during the recent use
due to the controller board,the usb interface is still a mini-usb
and the case was designed to fit the mini-usb controller
please check the size if you swap the interface to a typec connector
the circuit diagrams are shown as .pdf files in the\files folder
diagrams are drew using LCEDA also known as easyeda worldwide
the .json files are LCEDA source codes which allows import and reedit
the PCB is created via lceda
sourcecodes are shown as files/pcb/keyboard.json
also allows import and reedit
PCB Gerber files are shown as files/pcb/Gerber_keyboard.zip
its created via lceda, please check with Gerber broswer before production
Alitumdesigner files are provided, shown as files/pcb/keyboard.pcbdoc
but they are exported by lceda,so the accuracy is unknown
for more information,see the link below about lceda's exported files
https://docs.lceda.cn/en/Export/Export-Altium/index.html
the 3d print .stl files are created via Sketchup
due to the special solid sealing of Sketchup
there might be small problems while using different slicing softwares (it works fine with cura)
double check your slicing software before print