# SmartKB32_v2 **Repository Path**: simonliu009/smart-kb32_v2 ## Basic Information - **Project Name**: SmartKB32_v2 - **Description**: 存放关于SmartKB32_v2多功能键盘的源代码仓库 - **Primary Language**: C++ - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 7 - **Created**: 2024-08-14 - **Last Updated**: 2024-08-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SmartKB32_v2 #### 介绍 存放关于SmartKB32_v2多功能键盘的源代码仓库 作为一个嵌入式爱好者,对各类设计软件运用的需求不同,对键盘快捷键的使用率也不同,市面上的键盘,对宏定义的层数没法完全兼容每款软件的需求,许多客制化键盘或多或少会带有旋钮功能,但大都只是调节电脑音量、屏幕亮度等,且旋钮都在键盘右侧,无法便捷与设计需求,因此我结合了蓝牙键盘及SmartKnob的设计,将其合二为一,并且接入了Surface dial且采用了左手设计提高了智能旋钮的利用率,配合鼠标及键盘上的多重键位映射表,实现更快捷的工作需求。 而且本设计接入了米家,可以实现和米家的设备联动功能,及控制自研的一些用电设备(包括智能台灯,桌面电源等)对智能台灯的精细调节。 作为一个懒癌患者,忘记各类账号密码是常有的事,所以本设计支持指纹识别一键输入账号及密码等 #### 安装教程 克隆后导入VScode开发 #### 使用说明 surface dial(与原版功能用途几乎相同,dial控制与键盘屏幕控制共用一套控制,通过键盘第X7Y1按钮实现两者的切换) 指纹识别,用于一键电脑开机及一键输入APP账号密码(两者采用了不同的指纹验证,需保存两次指纹信息(APP密码部分暂未实现功能)) 三层键位映射指定切换,单独可更换每层键位,可预设几十种APP快捷键及游戏快捷键(可用X1Y1按键实现默认键盘与数字键盘映射间的轮流切换,也可通过双按键控制指定切换映射) X1Y1+X1Y2切换至默认映射表 X1Y1+X1Y3切换至数字映射表 X1Y1+X1Y4切换至APP快捷键映射表 切换时屏幕伴随有弹窗提示(例如:键位映射表切换时会提示切换到什么映射表。电脑后台控制快捷键也会有弹窗提示) 电脑后台快捷键(包括音乐开始暂停,上一首下一首歌等采用双按键触发模式,此功能均可自定义映射表) **一键休眠功能**:通过双按键(X1Y1+X1Y5)实现双按键的休眠功能,触发时可保存当前智能设备的状态并关闭所有联动智能设备 **一键开机功能**:通过双按键(X1Y1+X2Y5)实现双按键的开机功能,触发时可通过上次休眠时所保存的设备状态使设备进入此前状态 **对智能家居设备的控制:** 可通过智能台灯控制区域按钮实现对智能台灯的色温及亮度控制,及键盘屏幕跳转到台灯控制弹窗界面,可利用旋钮进行精细的色温及亮度调控。 可通过桌面电源控制区域按钮实现对桌面电源的控制,控制采用了双层键位映射,实现点按开关及双按键实现pwm控制(pwm接口仅限两个(PWM部分暂未实现功能)) #### 参与贡献 2023.7 开始各种模块的打样测试 2023.9 开始功能框架架构及UI界面设计 2023.9.21 实现设备与智能台灯通信 2023.10.10 UI界面初版定稿并移植lvgl 2023.10.13 优化设备与台灯通信协议 2023.10.14 新增Surface dial功能 ​ 部分按钮新增防连击功能 ​ 优化按钮按下传输协议 2023.10.14 新增foc旋钮在 Surface dial和lvgl间切换控制功能 (KEY_X7Y1) ​ 新增电机运动模式记忆功能,可回退到前一运动模式,用于dial和lvgl间切换 2023.10.21重新定义键位顺序枚举, 优化键位触发发送协议以支持改键位映射代码 ​ 实现两组键位映射表切换 2023.10.22新增文件系统实现第三组键位映射表修改代码, 开机自检,SD卡存在 ​ key_app1_map.txt文件时更新映射表三 2023.10.26 完成各种模块的验证并完成集成电路设计,开始打样 2023.10.27 外壳设计完成 2023.11.13 完成样板的测试,开始外壳的打印申请 2024.1.5 新增加部分按钮弹窗提示功能,优化部分功能并转用rtos系统开发