苹果公司对蓝牙免提AT指令的扩充

介绍

苹果公司对蓝牙HF profile进行了一些HF AT指令的扩充。不过为了兼容起见,尽量实现HF标准规范规定的内容,如果标准规范没有规定相应的内容,为了适配苹果设备新增的功能,还是可以适应苹果公司新增的一些AT指令的。这里就对苹果公司新增的一部分AT指令作下介绍。本文这里提到的蓝牙配件指的是与苹果设备相连接的蓝牙外部设备。

AT+IPHONEACCEV命令

该命令是用来提示蓝牙配件的电池状态,可以提示两方面:一方面是电池的电量百分比,一当面是蓝牙配件的当前的充电状态。该命令的说明见下方:

格式:AT+IPHONEACCEV=Number of key/value pairs,key1,val1,key2,val2,…

附带的参数的含义分别是:①键值对的数目:接下来的参数文本的数量;②接下来就是键值对分别是:键值为1表示的是电量,该键所对应的值就是电量百分比,使用字串”0“到”9“表示;键值为2表示的是充电状态,0表示不在充电,1表示正在充电。

举例:AT+IPHONEACCEV=1,1,3 该AT指令就说明附带了一个键值对(第一个参数是1);键是1,那么表示的是电量,且电量是40%(因为使用的是0~9,这里3就对应的百分比是40%)。

AT+XAPL命令

配件要在成功地和苹果设备建立SLC连接(也就是连接上HF)之后,就随后发出AT+XAPL命令。在发出其他苹果定义的AT命令之前,配件要先发出AT+XAPL命令。

格式:AT+XAPL=vendorID-productID-version,features

说明

l  vendorID:使用字符串表示的制造商的供应商ID的十六进制值,该字串不带0x前缀。

l  productID:使用字符串表示的制造商的产品ID的十六进制值,该字串不带0x前缀。

l  version:软件的版本号

l  feature:比特表。这些比特的含义分别是:

  0:保留

  1:配件支持电池汇报(仅由电池驱动的配件使用)

  2:配件处于充电或者充满(仅由电池驱动的配件使用)

  3:配件支持Siri状态汇报

  4:配件支持降噪状态汇报

   其他比特位保留。

例如:AT+XAPL=ABCD-1234-0100,10 (支持电池汇报和Siri状态)

随后苹果设备(例如iPhone也会回复+XAPL=iPhone,features)。

很有意思的是,其他很多手机厂商也支持了XAPL指令,但是它们仍然也会回复+XAPL=iPhone,features,因此你不能依据这个iPhone判断对方就真的是iPhone。其实按道理来讲,它们应该在回复中讲iPhone替换成自己公司的名称或者手机型号名称即可。

 

posted @ 2021-07-17 11:15  WestMountain  Views(1315)  Comments(0Edit  收藏  举报