客制化键盘,这是一个巨大的坑,形形色色的轴体、外壳、PCB、数据线、键帽、灯效、音效甚至掌托,对于热爱DIY的玩家们来说,确实很吸引人,但再看看价格,只能打扰了。
T站上看到了一款主要零部件用3D打印的机械键盘(SICK68),打印外壳甚至键帽,不用PCB而是飞线,非常硬核,关键是价格,这应该算是除捡垃圾以外,最便宜的客制化机械键盘了。SICK68采用了QMK固件,拥有和大几千的客制化键盘相同的核心,作为一只程序汪,想要玩客制化键盘又玩不起,就只能着键盘的固件深入研究一番了。
QMK的官方网站为:https://qmk.fm/。包含了一套高度可定制的工具集:QMK Firmware,QMK Configurator,QMK Toolbox。QMKFirmware是固件的源代码;QMKConfigurator是在线配置键盘功能、生成固件的网络客户端;QMK_Toolbox是下载和调试固件时使用图形界面工具。
通常来说,使用QMK_Configurator就可以生成市面上一些客制化键盘套件的固件了。但对于想要高度定制的同学,特别是给键盘添加便宜的蓝牙模块、oled屏、旋钮等,就需要搭建编译环境,自己修改代码,自己编译,这也是折腾的乐趣所在。
编译QMK固件,首先需要搭建编译环境,按照官网文档一步步操作本应很轻松的。但得益于国内的网络环境,在安装编译环境的过程中会遇到很多坑。
Windows中使用开发环境,去官网下载免费的安装包。
安装则没有什么特别的,只需要设置一下安装路径,然后一直next就行。
按照官方文档,安装完成后需要更新MSYS2的软件库,最好先将MSYS2的源设置为清华大学的源。打开安装路径C:\msys64\etc\pacman.d中的配置文件
修改mirrorlist.msys,在最上面增加一行Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch;
修改mirrorlist.mingw32,在最上面增加一行Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686。
修改mirrorlist.mingw64,在最上面增加一行Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/x86_64。
运行安装路径根目录中的mingw64.exe。
输入命令pacman -Syu更新。
中途按提示可能需要重启该程序,再次执行该命令,等待更新完成。
然后安装编译qmk固件需要软件,输入命令pacman -S git mingw-w64-x86_64-toolchain mingw-w64-x86_64-python3-pip。
接着安装python中的qmk库,使用命令python3 -m pip install qmk -i https://pypi.tuna.tsinghua.edu.cn/simple从清华大学的pip源安装。
需要的软件安装完了,最后输入命令qmk setup。这一步会去下载qmk的固件源码,没有国内的源可以使用,速度比较慢,在网络不佳时极可能因错误中断,最好找个月黑风高的夜晚,消消地下完它。当然这也是可以加速的,不过内容会涉及到翻墙,这里就不赘述。
输入命令qmk compile -kb clueboard/66/rev3 -km default,如果能成功编译完成,那么编译环境就算搭建完成了。
在VSCode中点击File->Open Floder打开之前下载的QMK固件。
下载文件,保存到qmk_firmware/.vscode/文件夹中
修改该文件中WIN32部分的"includePath"的头文件路径为自己电脑内的对应路径,一些没有的路径,比如Visual Studio 2017等,直接删除也不影响编译,因为这里的头文件路径只是提供给插件使用,方便文件解析的。
修改settings.json,添加以下代码到文件中,
"terminal.integrated.shell.windows": "C:\msys64\usr\bin\bash.exe", "terminal.integrated.env.windows": { "MSYSTEM": "MINGW64", "CHERE_INVOKING": "1" }, "terminal.integrated.shellArgs.windows": [ "--login" ], "terminal.integrated.cursorStyle": "line",
将当前工程的终端设置为QMK使用的MSYS2。
设置完,VSCode会提示安装插件等,都是为了方便浏览代码的,安装完重启即可。然后就可以在vscode里修改代码,编译固件了。
Ctrl+` 打开终端,可以看到进入了MSYS2终端,输入qmk compile -kb clueboard/66/rev3 -km default测试一下编译环境,一切正常。
原网址: 访问
创建于: 2020-12-25 01:14:48
目录: default
标签: 无
未标明原创文章均为采集,版权归作者所有,转载无需和我联系,请注明原出处,南摩阿彌陀佛,知识,不只知道,要得到
java windows火焰图_mob64ca12ec8020的技术博客_51CTO博客 - 在windows下不可行,不知道作者是怎样搞的 监听SpringBoot 服务启动成功事件并打印信息_监听springboot启动完毕-CSDN博客 SpringBoot中就绪探针和存活探针_management.endpoint.health.probes.enabled-CSDN博客 u2u转换板 - 嘉立创EDA开源硬件平台 Spring Boot 项目的轻量级 HTTP 客户端 retrofit 框架,快来试试它!_Java精选-CSDN博客 手把手教你打造一套最牛的知识笔记管理系统! - 知乎 - 想法有重合-理论可参考 安宇雨 闲鱼 机械键盘 客制化 开贴记录 文本 linux 使用find命令查找包含某字符串的文件_beijihukk的博客-CSDN博客_find 查找字符串 ---- mac 也适用 安宇雨 打字音 记录集合 B站 bilibili 自行搭建 开坑 真正的客制化 安宇雨 黑苹果开坑 查找工具包maven pom 引用地 工具网站 Dantelis 介绍的玩轴入坑攻略 --- 关于轴的一些说法 --- 非官方 ---- 心得而已 --- 长期开坑更新 [本人问题][新开坑位]关于自动化测试的工具与平台应用 机械键盘 开团 网站记录 -- 能做一个收集的程序就好了 不过现在没时间 -- 信息大多是在群里发的 - 你要让垃圾佬 都去一个地方看难度也是很大的 精神支柱 [超级前台]sprinbboot maven superdesk-app 记录 [信息有用] [环境准备] [基本完成] [sebp/elk] 给已创建的Docker容器增加新的端口映射 - qq_30599553的博客 - CSDN博客 [正在研究] Elasticsearch, Logstash, Kibana (ELK) Docker image documentation elasticsearch centos 安装记录 及 启动手记 正式服务器 39 elasticsearch 问题合集 不断更新 6.1.1 | 6.5.1 两个版本 博客程序 - 测试 - bug记录 等等问题 laravel的启动过程解析 - lpfuture - 博客园 OAuth2 Server PHP 用 Laravel 搭建带 OAuth2 验证的 RESTful 服务 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区 利用Laravel 搭建oauth2 API接口 附 Unauthenticated 解决办法 - 煮茶的博客 - SegmentFault 思否 使用 OAuth2-Server-php 搭建 OAuth2 Server - 午时的海 - 博客园 基于PHP构建OAuth 2.0 服务端 认证平台 - Endv - 博客园 Laravel 的 Artisan 命令行工具 Laravel 的文件系统和云存储功能集成 浅谈Chromium中的设计模式--终--Observer模式 浅谈Chromium中的设计模式--二--pre/post和Delegate模式 浅谈Chromium中的设计模式--一--Chromium中模块分层和进程模型 DeepMind 4 Hacking Yourself README.md update 20211011
Laravel China 简书 知乎 博客园 CSDN博客 开源中国 Go Further Ryan是菜鸟 | LNMP技术栈笔记 云栖社区-阿里云 Netflix技术博客 Techie Delight Linkedin技术博客 Dropbox技术博客 Facebook技术博客 淘宝中间件团队 美团技术博客 360技术博客 古巷博客 - 一个专注于分享的不正常博客 软件测试知识传播 - 测试窝 有赞技术团队 阮一峰 语雀 静觅丨崔庆才的个人博客 软件测试从业者综合能力提升 - isTester IBM Java 开发 使用开放 Java 生态系统开发现代应用程序 pengdai 一个强大的博主 HTML5资源教程 | 分享HTML5开发资源和开发教程 蘑菇博客 - 专注于技术分享的博客平台 个人博客-leapMie 流星007 CSDN博客 - 舍其小伙伴 稀土掘金 Go 技术论坛 | Golang / Go 语言中国知识社区
最新评论