Android blueZ HCI(二):hcitool hcidump常用方法
关键词:hciconfig hcitool hcidump
作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢!)
欢迎指正错误,共同学习、共同进步!!
Android blueZ HCI(一):hciconfig实现及常用方法
Android blueZ hci(二):hcitool hcidump常用方法
一、Hcitool
1、这部分代码和hciconfig命令比较相似,不做详细分析
命令对应执行函数、解释数据表:
比如:hci scan命令,对应执行cmd_scan函数Idh.code\external\bluetooth\bluez\tools\hcitool.c
static struct {
char *cmd;
void (*func)(int dev_id, int argc, char **argv);
char *doc;
} command[] = {//命令定义描述
{ "dev", cmd_dev, "Display local devices" },
{ "inq", cmd_inq, "Inquire remote devices" },
{ "scan", cmd_scan, "Scan for remote devices" },
{ "name", cmd_name, "Get name from remote device" },
{ "info", cmd_info, "Get information from remote device" },
{ "spinq", cmd_spinq, "Start periodic inquiry" },
{ "epinq", cmd_epinq, "Exit periodic inquiry" },
{ "cmd", cmd_cmd, "Submit arbitrary HCI commands" },
{ "con", cmd_con, "Display active connections" },
{ "cc", cmd_cc, "Create connection to remote device" },
{ "dc", cmd_dc, "Disconnect from remote device" },
{ "sr", cmd_sr, "Switch master/slave role" },
{ "cpt", cmd_cpt, "Change connection packet type" },
{ "rssi", cmd_rssi, "Display connection RSSI" },
{ "lq", cmd_lq, "Display link quality" },
{ "tpl", cmd_tpl, "Display transmit power level" },
{ "afh", cmd_afh, "Display AFH channel map" },
{ "lp", cmd_lp, "Set/display link policy settings" },
{ "lst", cmd_lst, "Set/display link supervision timeout" },
{ "auth", cmd_auth, "Request authentication" },
{ "enc", cmd_enc, "Set connection encryption" },
{ "key", cmd_key, "Change connection link key" },
{ "clkoff", cmd_clkoff, "Read clock offset" },
{ "clock", cmd_clock, "Read local or remote clock" },
{ "lescan", cmd_lescan, "Start LE scan" },
{ "lecc", cmd_lecc, "Create a LE Connection", },
{ "ledc", cmd_ledc, "Disconnect a LE Connection", },
{ "dsn", cmd_dsn, "Try to get rid of scatternets", },
{ NULL, NULL, 0 }
};
2、 hcitool常用方法
(1)、hcitool帮助命令
hcitool –h
(2)、hcitool dev 显示本机MAC地址
root@android:/ # hcitool dev
hcitool dev
Devices:
hci0 00:16:53:96:22:53
(3)、hcitool inq
root@android:/ # hcitool inq
hcitool inq
Inquiring ...
C4:6A:B7:21:79:C8 clock offset: 0x7e48 class: 0x5a020c
1C:66:AA:66:68:2E clock offset: 0x5e27 class: 0x5a020c
AC:72:89:85:90:2A clock offset: 0x13ec class: 0x4a0100
68:17:29:78:37:4A clock offset: 0x5185 class: 0xff0104
B0:C4:E7:65:A7:3A clock offset: 0x267e class: 0x5a020c
(4)、hcitool scan扫描周围设备
(5)、hcitool name 8C:71:F8:AE:2A:C0(对应要获取名字的BT mac地址)
(6)、hcitool info 8C:71:F8:AE:2A:C0(对应要获取名字的BT mac地址)
(7)、hci clock
1|root@android:/ # hcitool clock
hcitool clock
Clock: 0x5ba67
Accuracy: 0.00 msec
二、hcidump常用方法
1、 hcidump -Xt
终端下显示相应HCI信息。
1、 hcidump –Bw /data/bt1.cfa(android2.3下)/data/bt1.cfa为文件路径
hcidump –w /data/bt1.cfa(android 4.0下)
用capture file viewer打开(frontline comprobe protocol analysis system 13.8)入下图就可以分析相应的协议。
(2)、hcidump -tr bt_0.log
显示bt hci log信息
(3)、hcidump -r bt_0.log
(4)、hcidump –Rtw
Android blueZ HCI(二):hcitool hcidump常用方法相关推荐
- 【Android游戏开发二十七】讲解游戏开发与项目下的hdpi 、mdpi与ldpi资源文件夹以及游戏高清版本的设置...
今天一个开发者问到我为什么游戏开发要删除项目下的hdpi.mdpi和ldpi文件夹:下面详细给大家解答一下: 首先童鞋们如果看过我写的<[Android游戏开发二十一]Android os设备谎 ...
- Android Studio(十二):打包多个发布渠道的apk文件
Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...
- Android 颜色渲染(二) 颜色区域划分原理与实现思路
在前面的系列我已经将Android中颜色渲染的原理及使用做了一个整体上概述. 现在开始根据一个比较复杂的实现进行具体的分析,这就是PhotoShop中的调色板应用 首先还是看一下最终的实现效果: ...
- dagger android 学习(二):AndroidInjector的使用
本系列博客主要用于自己学习积累,顺便帮助新手入门,如有问题,多多包涵.更详细的一些使用可以看看其他更加详细的博客. dagger android 学习(一):dagger基础使用 dagger and ...
- android怎样添加图片锐化功能,如何在android处理图片(图像二值化锐化转换格式).doc...
如何在android处理图片(图像二值化锐化转换格式) 链接:如何在android处理图片( 图像二值化.锐化.转换格式) /thread-36559-1-1.html package net.wea ...
- 基于ZXing Android实现生成二维码图片和相机扫描二维码图片即时解码的功能
NextQRCode ZXing开源库的精简版 **基于ZXing Android实现生成二维码图片和相机扫描二维码图片即时解码的功能 原文博客 附源码下载地址** 与原ZXingMini项目对比 N ...
- Android自定义视图二:如何绘制内容
这个系列是老外写的,干货!翻译出来一起学习.如有不妥,不吝赐教! Android自定义视图一:扩展现有的视图,添加新的XML属性 Android自定义视图二:如何绘制内容 Android自定义视图三: ...
- Android----Google code android开源项目(二)
Google code android开源项目(二) 1. achartengine http://code.google.com/p/achartengine/ android报表库 ...
- Android Studio生成二维码
Android Studio生成二维码 第一步 导入依赖 第二步 在清单文件里加权限 第三步 初始化 第四步 在清单文件里进行调用 第五步 在MainActivity 第六步 建一个管理类 第七步 新 ...
最新文章
- 【图论专题】最小生成树的扩展应用
- mysql中Table is read only 的解决方法小结
- 如何将yolo的标注(annotations).txt 坐标转换成tensorflow-yolov3(YunYang1994)的.txt 标注坐标?
- java oracle 视图不存在_Weblogic 10.3,JDBC,Oracle,SQL - 表或视图不存在
- 全国计算机等级考试 备考,全国计算机等级考试经验:如何调整备考心态
- python 复制文件_10 行 Python 代码写 1 个 USB 病毒
- akka 消息发送接收_Akka型演员:探索接收器模式
- java基于ssm的个人博客系统_调研了 100 来个 Java 博客系统,发现这5个最好用
- 有关linux的GPG签名验证错误的解决方法。
- 毕设题目:Matlab故障分析
- Python开发工具PyCharm中文版安装与配置详细图文教程
- 几何画板是哪方面的计算机应用,几何画板主要功能是哪些?了解后就能愉快使用啦...
- canape数据导入matlab,CANape使用介绍
- Ubuntu20安装向日葵
- centos7平台手动搭建snort入侵检测系统
- Sql Server Express版本升级到企业版
- 扒一扒 ScheduledThreadPoolExecutor
- 配置安装最新的Vue脚手架
- widows计算器恢复
- 仿写爱奇艺网页的问题和解决方法
热门文章
- 数据埋点前,你需要搭建指标体系
- c#创建画布_如何:创建和使用画布
- 难道真的忘记放洗衣粉了??
- 仿联想商城laravel实战---2、后端页面搭建(验证码如何在页面中使用)
- grunt 压缩 html,如何使用 grunt 插件压缩合并 js ?减少页面请求数的秘诀
- 《统计学基础》——第四章(朴素贝叶斯)
- protel99常用元件的电气图形符号和封装形式(二)
- 深入理解JavaScript系列(30):设计模式之外观模式
- 设置顺序表L是个递增的有序表,试写一算法将number插入L中,并使L任是一个有序表。
- 2018-07-05 第六十天 JavaScript