[bluez] linux下蓝牙鼠标的延迟问题
引言
现在的便携设备,接口越来越少了。所以我们没有理由不用蓝牙鼠标。高大上也不贵。
蓝牙4.0之前,蓝牙设备的问题是特别费电。蓝牙4.0之后省电的要命,我的上一个鼠标Microsoft Designer Mouse
两节七号电池差不多能用6-8个月不需要换电池。而且是很少关闭的前提下。基本上处于常开的状态。
当然这里边还有一个特殊情况是,我是emacs和小红点用户,所以可能几个小时也不碰一下鼠标。
[author: classic_tong; date: 20190921]
前言
可是遗憾的是。鼠标还是脆弱的,特别是左键。铜片的老化,以及挤压会很容易导致损坏。特别是挤压。于是我的designer终于
在三年之后左键失灵了。
然后我买个新的,发现延迟很明显。我以为是DPI或者之类的问题,于是又买了一个,于是一口气买了三个。发现竟然都有延时问题(延迟问题,不灵敏,反应慢)
于是我才意识到,可能是软件的问题。
开始之前,我需要感谢这三款鼠标,和京东商城。他们分别是:
1.
2.
3.
问题
当意识到其实可能是软件问题时,只有随手一google:“linux bluetooth mouse lag”,问题和答案马上呈现。
面临这个问题的人还是很多的。罗列一下有用的资料,可以自己看,也可以看我下文的解决方案:
archlinux是wiki里早就给了方法:
https://wiki.archlinux.org/index.php/Bluetooth_mouse#Troubleshooting
BBS里边也有详细的讨论:
https://bbs.archlinux.org/viewtopic.php?pid=1857256#p1857256
linux 内核里边关于这个问题的一段讨论:
解决方法
解决方案很简单
1. 连接蓝牙。
这个时候会在var下生成这个文件
/var/lib/bluetooth/E4\:70\:B8\:A7\:07\:19/DF\:B6\:2E\:A4\:60\:08/info
2. 修改这个文件,加入如下行
[ConnectionParameters]
MinInterval=
MaxInterval=
Latency=
Timeout=
3. 重启笔记本上的蓝牙设备
之后,我的问题就解决了。
有关这几个配置的解释,详见
https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/settings-storage.txt
另外
另外,为什么之前的鼠标是好的,新买的这几个都不行呢?
推测可能是,bluez更新了版本,不在追加这些值了。因为只要在最开始配置的时候加上就可以了,可能bluez几年前的版本
是加的吧?
为了排除硬件的差别。我把旧鼠标的info文件删掉了,再重新链接。配置并没有被追加。所以,硬件是无差别的。
最后,我还是选择了红色的3600,好看嘛?

[author: classic_tong; date: 20190921]
[bluez] linux下蓝牙鼠标的延迟问题的更多相关文章
- linux下的短延迟
nanosleep,sleephttps://www.jianshu.com/p/42abcc2c9e50
- Linux下TCP延迟确认(Delayed Ack)机制导致的时延问题分析
版权声明:本文由潘安群原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/105 来源:腾云阁 https://www.qclo ...
- Linux 下蓝牙bluez分析及使用 (1)
蓝牙耳机的使用 由于Linux下蓝牙使用不及Windows下直观,致使使用时会出现一些小问题.虽然是小问题,但是由于普通的操作都具有顺序性,前面的中断了,后面的哪怕再简单,也无法继续了.正好近期工作与 ...
- linux 下使用 tc 模拟网络延迟和丢包-使用 linux 模拟广域网延迟 - Emulating wide area network delays with Linux
tc 是linux 内置的命令:使用man pages 查看 我们看到,其功能为 show / manipulate traffic control settings,可对操作系统进行流量控制: ne ...
- linux下蓝牙开发(bluez应用)
编译blueZ-5.25 需要先编译安装以下包: bluez-libs-3.36.tar.gz expat-2.1.0.tar.gz dbus-1.10.0.tar.gz glib-2.26.1.ta ...
- 【转】Linux下进程/程序网络带宽占用情况查看工具 -- NetHogs
http://www.cnblogs.com/carbon3/p/5930803.html 之前VPS侦探曾经介绍过流量带宽相关的工具如:iftop.vnstat,这几个都是统计和监控网卡流量的.但是 ...
- Linux下的IO模式
对于一次IO访问(以read举例),数据会先被拷贝到操作系统内核的缓冲区中,然后才会从操作系统内核的缓冲区拷贝到应用程序的地址空间.所以说,当一个read操作发生时,它会经历两个阶段:1. 等待数据准 ...
- Linux下显示ip所属位置
在linux下,要是网络出现延迟,通常我们需要分析自己到对端的服务器的网络环境 例:ping www.baidu.com traceroute www.baidu.com 通过分析来确定大概是什么问题 ...
- linux下多路复用模型之Select模型
Linux关于并发网络分为Apache模型(Process per Connection (进程连接) ) 和TPC , 还有select模型,以及poll模型(一般是Epoll模型) Select模 ...
随机推荐
- Gan-based zero-shot learning 论文整理
1 Feature Generating Networks for Zero-Shot Learning Suffering from the extreme training data imbala ...
- postgresql数据库中多个Schemas互相访问
背景: 用postgresql创建了一个数据库userDataBase,在这个数据库中创建了Schemas userA,Schemas userB,Schemas userC三个Schemas之后,给 ...
- 【知识总结】动态 DP
勾起了我悲伤的回忆 -- NOIP2018 316pts -- 主要思想:将 DP 过程分解为方便单点修改和一个区间合并的操作(通常类似矩阵乘法),然后用数据结构(通常为线段树)维护. 例:给定一个长 ...
- PHP_MySQL高并发加锁事务处理
1.背景: 现在有这样的需求,插入数据时,判断test表有无username为‘mraz’的数据,无则插入,有则提示“已插入”,目的就是想只插入一条username为‘mraz’的记录. 2.一般程序 ...
- Asp.net Core CORS 跨域
本文主要介绍在Asp.net Core采用CORS方式解决跨域 关于跨域的原理介绍可参考Asp.net Web API 解决跨域详解 1 在Startup添加允许跨域的策略 services.AddC ...
- HTML常用技巧
1. 为网页链接添加快捷键:accesskey 属性 https://zhidao.baidu.com/question/2267343500557447508.html 2. 键盘事件设置快捷键:h ...
- Django总结篇
1.0 简述http协议和常用请求头 http协议: ( 基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)) HTTP协议是Hyper Text Transfer Pro ...
- 【scratch3.0教程】1.3 了解scratch界面内容
第3课 了解Scratch界面内容 1.认识Scratch界面 双击桌面快捷方式,启动Scratch程序.我们来认识一下Scratch界面吧! (1)指令区 Scratch程序一共有运动.外观.声音. ...
- Pycharm下直接升级库所遇到的'main'问题
Pycharm下直接升级库所遇到的pip模块中无'main'问题 Author : Benjamin142857 Date : 8/19/2018 对于Pycharm中直接升级库,只需在 \(Sett ...
- 全栈项目|小书架|微信小程序-首页水平轮播实现
首页效果 首页功能主要有 搜索(下篇文章介绍) 图书列表 图书列表 分析一波: 列表是水平滑动 点击列表会有按压效果:布局整体缩小 每个布局的信息从上到下排列分别是:图片.书名.作者.出版社 每个布局 ...