描述
                        
            
            
              <p># CyMouse: 一款支持健康监测的高性能鼠标</p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/8b1d4a00875f4229b59312e912990b9c.png" alt="" width="640" height="480"></p>
<p>    CyMouse 是一款支持健康监测的高性能鼠标。主控采用 **ESP32-S3FH4R2**,传感器为 **PAW3395DM-T6QU**,集成了血氧、心率传感器,并且配置了屏幕用于查看鼠标的相关状态和进行功能配置。</p>
<p>## ✨ 背景</p>
<p>    由于我的工作性质,每天都需要长时间久坐,这让我开始思考:有没有一款产品可以在无感知的情况下监控我们的健康状态?</p>
<p>目前市面上的健康监控产品主要是手环和手表,但我个人不喜欢在工作时佩戴它们,因为手腕上的设备总是会与键盘发生磕碰。健康监测模块要求与身体紧密接触,最常见的部位是手指或手腕。在工作场景中,我们接触时间最长的外设无疑是鼠标。</p>
<p>于是,将健康监测功能集成到鼠标中的想法便诞生了,这就是 CyMouse 项目的由来。</p>
<p> </p>
<p>## 🚀 主要功能</p>
<p>### 🖱️ 鼠标功能<br>- **三模连接**:USB-C 有线、蓝牙、2.4G 无线、三种连接方式。<br>- **高性能传感器**:采用 PAW3395DM-T6QU 传感器,最高支持 26000 DPI。<br>- **DPI 快速切换**:底部有独立的 DPI 切换按钮,方便快速调整。</p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/d6586a3b8def41918b6b858eadcc099b.jpg" alt="" width="250" height="187">   <img src="https://image.lceda.cn/oshwhub/pullImage/a7430761d5314c2abd742020e00e7556.jpg" alt="" width="250" height="188">  <img src="https://image.lceda.cn/oshwhub/pullImage/c5e8094586ce4ec2b65442184d0061dd.jpg" alt="" width="250" height="188"></p>
<p> </p>
<p><br>#### 性能数据<br>- **USB / 无线模式**:由于 ESP32-S3 的 USB Full-Speed (12 Mbit/s) 限制,回报率最高为 1KHz。虽然这未能完全发挥 PAW3395DM-T6QU 的全部性能,但实际使用体验比我的罗技 G102 更加丝滑、精准。对于办公和各类游戏(包括 FPS)已完全足够。</p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/8f027bde8c8c44859d3e2dbb1a9d04c7.png" alt="" width="250" height="185">  <img src="https://image.lceda.cn/oshwhub/pullImage/c65c5d4c0eea414b8d667276e597be44.png" alt="" width="250" height="178">  <img src="https://image.lceda.cn/oshwhub/pullImage/5caf2d4902ba4cbf84d747bd7f17adcb.png" alt="" width="250" height="178"></p>
<p> <img src="https://image.lceda.cn/oshwhub/pullImage/82b409b04bc5431b859a47c4a3942b55.png" alt="" width="250" height="178">  <img src="https://image.lceda.cn/oshwhub/pullImage/6382151b917041da80d17f27d5351593.png" alt="" width="250" height="179"> <img src="https://image.lceda.cn/oshwhub/pullImage/cc043cfadbe04694a6869ad15bd511d8.png" alt="" width="250" height="179"></p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/a6522e275f10451e9707de9cebed4648.png" alt="" width="250" height="178">  <img src="https://image.lceda.cn/oshwhub/pullImage/6aa92e20f2494ebcb7dcbebc09940b45.png" alt="" width="250" height="179">  <img src="https://image.lceda.cn/oshwhub/pullImage/230a96c217d9451296bd45d2da9f927c.png" alt="" width="250" height="178"></p>
<p> </p>
<p><br>- **蓝牙模式**:受限于 BLE 协议,性能上与有线和无线模式有一定差距,但完全满足办公等场景。</p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/391806f5c6a544aa91f3aa4b04ba597c.png" alt="" width="250" height="182">  <img src="https://image.lceda.cn/oshwhub/pullImage/7d5954bd47384afd9c74bee769fa2a5f.png" alt="" width="250" height="175">  <img src="https://image.lceda.cn/oshwhub/pullImage/6fd8bf6ccc3b446f9eac9b48c0332016.png" alt="" width="250" height="175"></p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/bdc0c4322c234c73b7a8d9a39fa5fb19.png" alt="" width="250" height="175">  <img src="https://image.lceda.cn/oshwhub/pullImage/db8a8f4b35374d1596424627eed23f8a.png" alt="" width="250" height="175">  <img src="https://image.lceda.cn/oshwhub/pullImage/e3d29f43f70e44b784a33e5901617987.png" alt="" width="250" height="175"></p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/d5027d018cec47abbb2a0c8df944d424.png" alt="" width="250" height="175">  <img src="https://image.lceda.cn/oshwhub/pullImage/0dfa75c6c79d4f2b9ef5edb0d52699dc.png" alt="" width="250" height="175">  <img src="https://image.lceda.cn/oshwhub/pullImage/3398ee6b754d4278b46d875fc5c28256.png" alt="" width="250" height="175"></p>
<p> </p>
<p><br>- **鼠标重量**:鼠标本体重量约83g,包含电池约110.4g</p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/da47683724234d848b7e04f4083a644f.jpg" alt="" width="250" height="333">  <img src="https://image.lceda.cn/oshwhub/pullImage/fd6861c1e14a4680a6b4ae1f03ae9d2a.jpg" alt="" width="250" height="333"></p>
<p> </p>
<p><br>### ❤️ 健康监测<br>- **多维度数据**:支持血氧、心率、疲劳指数、微循环、血压、心输出、外周阻力等健康数据的监测。</p>
<p>- **智能提醒**:通过振动方式进行久坐提醒。</p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/bbbcc86e9a094ba7bd11b045cf3b1aaa.jpg" alt="" width="250" height="333">  <img src="https://image.lceda.cn/oshwhub/pullImage/34428bb7f4174ac898b57e7a0a6e78ac.jpg" alt="" width="250" height="333"></p>
<p><br>注:当前灯光效果为随机色</p>
<p> </p>
<p><br>### 💡 更多功能<br>- **可以鼠标DPI、滚轮速度等**<br>- **可以设置鼠标运动时的屏幕动画**<br>- **可以设置RGB灯效**<br>- **可以查看记录的健康和鼠标数据**<br>- **支持多语言等**</p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/f8b104b5bd7d4607acebc647cd161b20.jpg" alt="" width="250" height="333">  <img src="https://image.lceda.cn/oshwhub/pullImage/bd9cc67709b74297851a44b3fea5b41f.jpg" alt="" width="250" height="333"></p>
<p> </p>
<p> </p>
<p><br>### 💻 PC 客户端<br>在 USB 模式下,可以通过 PC 客户端:<br>- 查看健康监测历史数据。<br>- 主动发起一次健康监测。<br>- 查看鼠标使用数据统计。</p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/dbd5762afce244a480482e2434f01d78.png" alt="" width="349" height="250">  <img src="https://image.lceda.cn/oshwhub/pullImage/ee203e14d531433dae1f61cf0a385437.png" alt="" width="320" height="250"></p>
<p> </p>
<p>---</p>
<p>### 采购注意事项<br>大部分元器件可在立创商城采购,如遇缺货可在**其他**渠道购买。以下是需要单独购买的特殊配件:</p>
<p>- **传感器**: PAW3395DM-T6QU,需配套镜头型号 `LM19-LSI`。<br>- **血氧模块**: 我选择了一款支持血压检测的特殊模块。套件自带 6pin 连接线,3D 模型也基于此模块尺寸设计。(关键字: JFH142、MQ-142、MKS-142、JFC103)<br>- **屏幕**: 0.49寸 OLED,`64*48` 分辨率,`16PIN` 接口。**注意**:务必购买与下图接口一致的屏幕。</p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/0f13ff557a03402db5378cfb1be084fd.jpg" alt="" width="359" height="270">    <img src="https://image.lceda.cn/oshwhub/pullImage/02f7b7ced606403da785e79acdce0ef6.png" alt="" width="244" height="270"></p>
<p><br>- **电池**: 型号 `103443-1500mAh` (尺寸: 10x34x43mm)。充满电可连续使用约 48 小时。可根据个人对重量和续航的平衡进行选择。如果只使用 USB 模式,可以不安装电池。<br>- **电池连接线**: `2P 1.25mm` 间距,公头 (单头),线长 `50mm`。<br>- **USB 线**: 推荐购买细软的 USB 2.0 Type-C 数据线以获得更好的有线模式体验。<br>- **微动**: TTC 防尘金微动 (0.65N 软脆手感),或任何尺寸兼容的微动。 <br>- **编码器**: TTC 防尘金轮编码器,高度 `12MM`。<br>- **中键**: 凯华静音微动,高度 `9.5mm`。<br>- **滚轮**: 罗技 G102 / G304 / G305 通用滚轮。<br>- **脚垫**: 小圆点冰版,直径 `7mm`。<br>- **螺丝和螺帽**:<br>    - 外壳螺丝: `M1.6 * 9mm` (头宽5mm, 头厚0.7mm)<br>    - 盖板固定螺丝: `M1.2 * 2mm` (头宽2.5mm, 头厚0.2mm)<br>    - 侧键固定螺丝: `M1.2 * 2.5mm` (头宽3.5mm, 头厚0.5mm)<br>    - 外壳螺帽: `M1.6` (长3mm, 外径2.5mm)<br>    - 盖板固定螺帽: `M1.2` (长1.5mm, 外径2mm)。**提示**: 热熔此螺帽时建议先拧上螺丝,防止堵孔。<br>- **FPC 连接线**: `4P`,`0.5mm` 间距,同向,长度 `5CM`。</p>
<p>### 焊接与组装说明</p>
<p>- **芯片方向**: `TPS61222DCKR` 和两颗 `TPS22919QDCKRQ1` 这三颗芯片容易焊错方向。芯片上的**竖线标记**必须与 PCB 丝印的**定位标记**保持一致。<br>- **接线座方向**: 4PIN 和 6PIN 接线座的方向不要装反,请参考下图</p>
<p>  <img src="https://image.lceda.cn/oshwhub/pullImage/fb6a6a5fd9ef433f87f1997968da026a.png" alt="" width="469" height="315"></p>
<p><br>  <br>- **血氧模块 FPC**: 用于连接血氧模块的 6PIN FPC 线方向**必须**与图中一致(注意FPC金属面的朝向),否则会烧毁模块!</p>
<p>   <img src="https://image.lceda.cn/oshwhub/pullImage/ab8896b2ea3a4094b12d7b65f09120d2.jpg" alt="" width="265" height="353"></p>
<p> </p>
<p>### 核心电路设计思路</p>
<p>- **充电芯片**: 选用 TI 的 `BQ24075RGTR` 而非常见的 `TP4056`,因为它支持路径管理,可以边充边放,并根据负载自动调整电流路径。<br>- **主电源**: 选用 `TLV62569DBVR` DCDC 芯片而非 LDO。这是综合功耗、发热和电池供电需求的考量。LDO 在长时间使用时产生的热量会在鼠标内部聚集,而本项目整体对电源纹波不十分敏感。<br>- **RGB LED 供电**: 增加了一颗 `TPS61222DCKR` 将 3.3V 升压至 5V,以确保在低亮度设置下 LED 发光稳定。同时配合 `TPS22919QDCKRQ1` 负载开关,可以由 MCU 彻底关断其供电,以获得最佳续航。屏幕电路也同理加入了负载开关。</p>
<p>### 3D 模型与打印说明<br>- **模型文件**: 3D 模型已拆分为上盖、上盖支撑、底壳、零件共 4 部分。<br>- **建模软件**: Autodesk Fusion 360,您可以下载源文件自行修改。<br>- **打印**: 提供了 Bambu Studio 的工程文件,导入后可直接打印。为提高成功率,建议将底壳和零件分盘打印。<br>- **打印后调整**: 打印完成后,左右按键的触杆长度可能需要根据实际装配情况进行微调。<br>- **推荐材料**: 半透明的 PETG 材料,配合 LED 灯光能获得不错的视觉效果。</p>
<p>  <br> - **注意1**:图中3处是我在建模时增加的支撑,打印出来后抠掉即可。<br> <img src="https://image.lceda.cn/oshwhub/pullImage/03bc0e9e077d423b9339b92ce0a0747d.png" alt="" width="600" height="230"><br> <br><br> - **注意2**:图中2处,左右键触杆长度,会受到支撑与上盖的组合情况导致过长或过短,需要根据实际情况调整<br> <img src="https://image.lceda.cn/oshwhub/pullImage/e2decf53c38346a2afbc11036ee2385c.png" alt="" width="600" height="267"><br> <br><br> - **注意3**:上盖支撑与上盖如果为一个整体打印质量会大幅下降,因此我分成了两个部分,用胶水粘合即可,推荐3D打印专用胶水。</p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/e50981ae7c074319b0955485d256580c.png" alt="" width="600" height="352"></p>
<p> </p>
<p>---</p>
<p> </p>
<p>## 💾 固件烧录与使用</p>
<p>### 烧录说明<br>- **鼠标本体**: 复刻硬件后,下载 **全量刷机固件** 进行首次烧录。后续更新时,只需刷入 **升级固件**,即可保留激活信息和历史数据。<br>- **无线接收端**: 任意一款 ESP32-S3 (带 R2 版本 Flash/RAM) 的开发板均可作为接收端。接收端固件完全开源,您可以根据自己的开发板修改源码适配。**注意**: 如果您的开发板有两个 USB 口,烧录后请将数据线连接到另一个用于通信的 USB 口。</p>
<p>### 关于激活<br>鼠标本体固件暂不开源。首次启动时,请扫描屏幕上的二维码,按照页面提示即可**免费获取**该设备的**终身**激活码。</p>
<p>> **扫码提示**:<br>> - 不要使用微信扫码,其内置浏览器不支持页面跳转。<br>> - 推荐使用手机系统自带的相机、浏览器或支付宝的扫码功能。<br>> - 如果扫码后无法跳转,可以手动连接 Wi-Fi 热点,名称为 `CyMouse_xxxx`,密码为 `12345678`,连接后会自动弹出激活页面。<br>> - 手机端打开页面获取设备ID后,访问以下地址以获取激活码:https://cynix.cc/license/activate</p>
<p>### 使用说明<br>- **进入设置**: 同时长按**两个侧键** 3 秒,即可进入鼠标设置菜单。</p>
<p><br><img src="https://image.lceda.cn/oshwhub/pullImage/1884a59fd6d24d619da9234658743719.png" alt="" width="300" height="186"></p>
<p> </p>
<p>---</p>
<p>### 🔋 未验证功能<br>硬件上已设计并支持无线充电功能,外壳建模也为无线接收模块预留了空间,相关电路和 PCB 均已完成设计,但暂未进行实际验证。您可以持续关注本项目的后续进展。</p>
<p>---</p>
<p><br>## 📜 开源与隐私</p>
<p>- **开源范围**: 本项目的**硬件 (PCB)**、**3D 模型**、**无线接收端固件**和 **PC 客户端**均完全开源。<br>  - 硬件开源地址:https://oshwhub.com/keivenliao/cymouse<br>  - 接收端开源地址:https://github.com/CynixPub/CyMouse_Receiver<br>  - PC端开源地址:https://github.com/CynixPub/PC_monitor</p>
<p>- **用户隐私**:鼠标本体固件没有任何联网逻辑,完全离线运行。PC 客户端记录的健康数据也完全存储在本地,代码开源可查。<br>- **开源协议**:开源内容均遵循CC BY-NC-SA 4.0   /  GPLv3 协议。</p>
<p>---</p>
<p> </p>
<p>## 🙏感谢</p>
<p>以下三个项目:</p>
<p>https://github.com/Ghost-Girls/PMW3360-3389-PAW3395_STM32-CH32-APM32</p>
<p>https://github.com/Li-Dongze/stm32_paw3395_mouse</p>
<p>https://github.com/kirltrz/PAW3395_Arduino_ESP32</p>
<p>---</p>
<p> </p>
<p>## ✍️ 写在最后</p>
<p>从技术上讲,PC 客户端完全可以实现对鼠标所有功能的配置。但这与我设计初衷——即在鼠标上通过屏幕直接完成所有配置——相冲突。因此,我仅在 PC 端实现了健康监测相关的部分功能。(当然,懒也是其中一个原因 😄)</p>
<p> </p>
<p>硬件开发确实不易,一路走来踩了不少坑,还有3D模型的试错也颇费心血,部分**“祭品”**</p>
<p><img src="https://image.lceda.cn/oshwhub/pullImage/a5fd0b690f08422998f77aa101d06c2a.jpg" alt="" width="500" height="376"></p>
<p> </p>
<p> </p>
<p>其他内容开源地址:<a href="https://github.com/CynixPub/CyMouse" target="_blank">https://github.com/CynixPub/CyMouse</a></p>
            
                                   
          
          
评论(2)