首页 > 技术知识 > 正文

1.0 蓝牙ibeacon的简介

Ibeacon,是苹果最新定义出来的。消息推送、室内定位 信标用途。目前接触到的客户的需求,是做一个ibeacon设备,然后客户的app收到之后,自动弹出他要做的事情,相当于一个信标一样 。0x004C是苹果的公司ID ,0x0059是nordic的ID。至于ibeacon的详细说明,可以网上再查查,做的复杂的其实也挺复杂的

1.1 硬件最小系统

基于KT6368A的ibeacon版本蓝牙电子标签说明书-etc蓝牙功能有什么用

目前标准的固件,给出的就是一个纯粹的ibeacon,可以AT指令设置 ibeacon的Major、Minor、uuid、厂商代码

以及蓝牙广播名称、蓝牙的mac地址

硬件上面也是非常的简单,参考KT6368A给出的标准原理图即可。

1.2 软件给出的ibeacon设置指令[S1][S2][S3][S4]

AT+S1ABCDrn 设置IBEACON的Major 2个字节 设置major为0xABCD

AT+S25678rn 设置IBEACON的Minor 2个字节 设置minor为0x5678

AT+S3000Crn 设置IBEACON的厂商代码

AT+S41234567812345678ABCDEF12345678FFrn 设置uuid ,注意这里的uuid只能是128位,也就是16个字节

0x12 ,0x34 ,0x56 ,0x78 ,

0x12 ,0x34 ,0x56 ,0x78 ,

0xAB ,0xCD ,0xEF ,0x12 ,

0x34 ,0x56 ,0x78 ,0xFF ,

如果不满足16个字节,芯片会直接返回错误

1、这里关于ibeacon的参数设置,给出的4条指令,分别是AT+S1 、AT+S2、AT+S3、AT+S4

2、发送AT指令之后,芯片会返回OK,代表AT指令设置成功

3、等到参数全部设置完毕之后,一定要断电,再上电,才生效

1.3 设置指令生效举例说明

基于KT6368A的ibeacon版本蓝牙电子标签说明书-etc蓝牙功能有什么用1

其中的Major = 52651 = 0xCDAB

其中的Minor = 30806 = 0x7856

其中的厂商代码 = 0x000C

其中uuid部分,和上面串口发送AT指令则一致

1.4 软件给出的ibeacon查询指令[N1][N2][N3][N4]

AT+N1rn 查询IBEACON的Major 2个字节 ,芯片返回:N1+ABCD/r/n

AT+N2rn 查询IBEACON的Minor 2个字节 ,芯片返回:N2+5678/r/n

AT+N3rn 查询IBEACON的厂商代码 ,芯片返回:N3+000C/r/n

AT+N4rn 查询uuid ,芯片返回N4+1234567812345678ABCDEF12345678FF/r/n

0x12 ,0x34 ,0x56 ,0x78 ,

0x12 ,0x34 ,0x56 ,0x78 ,

0xAB ,0xCD ,0xEF ,0x12 ,

0x34 ,0x56 ,0x78 ,0xFF ,

基于KT6368A的ibeacon版本蓝牙电子标签说明书-etc蓝牙功能有什么用2

查询的方法,如上图所示

1.5 设置蓝牙名和MAC地址以及查询

AT+BMBLE-1234rn 设置蓝牙名称为“BLE-1234”

AT+BN112233445566rn 设置BLE的地址。手机端显示的地址是:66 55 44 33 22 11

1、设置蓝牙名称之后,需要让芯片复位,发指令或者断电上电都可以,这样会显示新的蓝牙名称。我们默认的蓝牙名为“KT6368A-IBEACON_V2.1”。设置的蓝牙名最长为“30”个字节,请不要超过这个范围

2、如果AT指令修改蓝牙名称之后,注意,你的手机端可能没有同步更新,还是显示之前的名称

(1)、因为你只修改了蓝牙的名称,蓝牙的MAC地址是没有变化的,所以手机端那边是不会更新名字

(2)、你要做的就是,换一台手机搜索试试,或者之前的手机删掉配对信息,重新在搜索

(3)、只要设置了蓝牙名,蓝牙名一定是更新过来了的,不用怀疑。芯片上电也会返回蓝牙名给您查看

查询蓝牙名和MAC地址的指令如下:

AT+TMrn 返回TM+1234rn 代表蓝牙名为1234

AT+TNrn 返回TN+12345678AABBrn BLE的蓝牙地址:0xBB、0xAA、0x78、0x56、0x34、0x12

1.6 调试注意事项

基于KT6368A的ibeacon版本蓝牙电子标签说明书-etc蓝牙功能有什么用3

AT+VER2.1-20220920 — 芯片固件版本信息

TM+KT6368A-IBEACON_V2.1 — 默认芯片出厂名称

TN+156038CF8DA6 — 默认芯片的MAC地址

N1+ABCD

N2+5678

N3+000C

N4+1234567812345678ABCDEF12345678FF

芯片上电是一定会返回这些信息的,通过串口,波特率115200

这样做的目的,是方便您在使用的过程中,能增加一个排错的方法而已,并无其他绝对的作用

猜你喜欢