FSC-BT618 AT 命令集

[English]

描述

本设计指南适用于工程师开发 FSC-BT618 系列蓝牙模块。

指令说明

规范说明

适用于整个文档

  • {} : 包括与{…}中的内容为可选项

  • << : 主机发给模组的 COMMAND

  • >> : 模组回复主机的 RESPONSE/EVENT

指令格式

AT+Command{=Param1{,Param2{,Param3...}}}<CR><LF>
  • 所有的指令使用 AT 开头,使用 <CR><LF> 结尾

  • <CR> 代表回车符,对应 HEX 为 0x0D

  • <LF> 代表换行符,对应 HEX 为 0x0A

  • 若指令包含参数,参数应使用 = 分隔

  • 若指令包含多项参数,参数应使用 , 分隔

  • 若指令有响应返回,响应使用 <CR><LF> 开始,使用 <CR><LF> 结束

  • 模组应当总是返回指令执行的结果 (成功返回 OK,失败时返回 ERROR)

Example:读取模块蓝牙名称

发送: <<AT+NAME<CR><LF>
响应: >><CR><LF>+NAME=FSC-BT618-XXXX<CR><LF>
响应:>><CR><LF>OK<CR><LF>

写入不支持的波特率

发送: <<AT+BAUD=0<CR><LF>
响应: >><CR><LF>ERROR<CR><LF>

Event格式

<CR><LF>+Indication{=Param1{,Param2{,Param3...}}}<CR><LF>
  • 所有的事件使用<CR><LF>开始, 使用<CR><LF>结束

  • 若事件包含参数, 参数应位于 “=” 后面

  • 若事件包含多项参数, 参数应使用 “,” 分割

Example: 指令模式下收到APP发来的数据

响应: >><CR><LF>+DATA=0,10,1234567890<CR><LF>

指令表

AT - 串口通信测试

Command

AT

Response

OK

Description

当上电或更改波特率时,测试主机和模块之间的UART通讯

Example:
<< AT
>> OK

AT+VER - 读取固件版本

Command

AT+VER

Response

+VER=Param

Param

固件版本

Description

读取版本号

Example:
<< AT+VER
>> +VER=1.0.0,FSC-BT618
>> OK

AT+ADDR - 读取蓝牙MAC地址

Command

AT+ADDR

Response

+ADDR=Param

Param

模块的蓝牙MAC地址(12 Bytes ASCII)

Description

读取蓝牙MAC地址

Example:
<< AT+ADDR
>> +ADDR=DC0D30010203
>> OK

AT+NAME - 读/写蓝牙名称

Command

AT+NAME{=Param1{,Param2}}

Param1

蓝牙名称(1~29 Bytes ASCII)

Param2

使能MAC地址后缀(0/1,default:0)
0: 关闭后缀
1: 开启后缀“-XXXX”(MAC地址后4Byte)

Response

+NAME=Param

Param

蓝牙名称

Description

如果存在参数则设置蓝牙名称,否则只是读取

Example:
读取蓝牙名称
<< AT+NAME
>> +NAME=FSC-BT618
>> OK

设置蓝牙名称
<< AT+NAME=ABC
>> OK

设置蓝牙名称为“ABC”并自动在广播包中添加地址后缀
<< AT+NAME=ABC,1
>> OK

AT+BAUD - 读/写串口波特率

Command

AT+BAUD{=Param}

Param

波特率(1200/2400/4800/9600/19200/38400/57600/115200/
230400/460800/921600, default:115200)

Response

+BAUD=Param

Param

波特率

Description

模块将在接收到这条指令后,马上切换波特率

Example:
读取波特率
<< AT+BAUD
>> +BAUD=115200
>> OK

设置波特率
<< AT+BAUD=9600
>> OK

AT+TXPOWER - 读/写发射功率

Command

AT+TXPOWER{=Param}

Param

发射功率

Response

+TXPOWER=Param

Param

发射功率

Description

修改发射功率

Example:
读取发射功率
<< AT+TXPOWER
>> +TXPOWER=5
>> OK

设置发射功率0dBm
<< AT+TXPOWER=0
>> OK

AT+LPM - 开启/关闭低功耗模式

Command

AT+LPM{=Param}

Param

低功耗模式 (0/1/2, default: 0)
0: 关闭
1: 串口唤醒模式
2: IO 唤醒模式

Response

+LPM=Param

Param

低功耗模式

Description

查询修改低功耗模式

Example:
读取低功耗模式
<< AT+LPM
>> +LPM=0
>> OK

设置串口唤醒模式
<< AT+LPM=1
>> OK

AT+ADVIN - 读/写广播间隔

Command

AT+ADVIN{=Param}

Param

广播间隔 (20~10000 ms, 默认: 152ms)

Response

+ADVIN=Param

Param

广播间隔

Description

查询修改广播间隔

Example:
读取广播间隔
<< AT+ADVIN
>> +ADVIN=152
>> OK

设置广播间隔100ms
<< AT+ADVIN=100
>> OK

AT+LECHCNT - 读/写BLE的最大连接数量配置

Command

AT+LECHCNT{=Param}

Param

最大允许连接数量 (1~8, default:1)

Response

+LECHCNT=Param

Param

最大允许连接数量

Description

更新最大连接数,需要重启生效

Example:
读取最大连接数
<< AT+LECHCNT
>> +LECHCNT=1
>> OK

设置最大8路连接
<< AT+LECHCNT=8
>> OK

AT+IDCFG - 读/写8字节ID

Command

AT+IDCFG{=Param}

Param

8字节ID

Response

+IDCFG=Param

Param

8字节ID

Description

查询修改8字节ID

Example:
读取ID
<< AT+IDCFG
>> +IDCFG=12345678
>> OK

设置ID
<< AT+IDCFG=12345678
>> OK

AT+LEDISC - 断开指定连接

Command

AT+LEDISC{=Param}

Param

连接索引

Response

OK

Description

断开指定通道的蓝牙连接

Example:
断开索引为1的设备
<< AT+LEDISC=1
>> OK

断开全部连接
<< AT+LEDISC
>> OK

AT+FILTER - 读/写搜索过滤条件

Command

AT+FILTER{=Param1{,Param2}}

Param1

过滤类型(0~3)
0: 删除全部条件
1: 地址过滤
2: 广播数据过滤
3: 信号强度过滤

Param2

过滤类型为1,参数为地址
过滤类型为2,参数为广播数据
过滤类型为3,参数为信号强度

Response

+FILTER=1,Param1
+FILTER=2,Param2
+FILTER=3,Param3

Description

过滤指令只会影响AT+SCAN=2
过滤广播数据时,参数字段依次为:tag,offset,len,data
配置完毕后启动 AT+SCAN=2时按照设置参数过滤扫描到的设备
AT+FILTER=0,删除全部过滤条件。
过滤参数不会保存到flash。
Example:
地址过滤
<< AT+FILTER=1,DC0D30010203
>> OK

过滤广播数据 \x是十六进制
<< AT+FILTER=2,\xFF,\x04,\x02,\xDC\x0D
>> OK

清除过滤条件
<< AT+FILTER=0
>> OK

AT+SCAN - 搜索附近的设备

Command

AT+SCAN{=Param}

Param

扫描方式(0~2)
0: 停止扫描
1: 扫描附近的设备,过滤重复地址,最多可以搜到8个设备
2: 扫描BLE广播包,输出原始广播数据包,可以通过AT+FILTER指令进行过滤

Response

+SCAN=Param1,Param2,Param3,Param4,Param5,Param6 (AT+SCAN=1格式)
+SCAN=Param21,Param22,Param23,Param24,Param25,Param26 (AT+SCAN=2格式)

Param1

列表序号

Param2

地址类型(1字节)

Param3

地址(12字节)

Param4

RSSI

Param5

设备名长度

Param6

设别名名

Param21

地址类型(1字节)

Param22

地址(12字节)

Param23

RSSI

Param24

广播数据包类型

Param25

广播数据包长度

Param26

广播数据包

Description

AT+SCAN=1 常用于连接前的搜索
AT+SCAN=2 常用于作为蓝牙网关使用,搜索周围的Beacon设备
Example:
搜索设备
<< AT+SCAN=1
>> +SCAN={
>> +SCAN=0,1,70CFC9A98840,-43,24,LE-Bose QuietControl 30
>> +SCAN=1,1,DC0D30001ED4,-65,10,FSC-BT946
>> +SCAN=}

嗅探 BLE 广播,并返回原始数据(乱码部分为原始数据,使用 hex 格式)
<< AT+SCAN=2
>> +SCAN{
>> +SCAN=0,DC0D24CFB6D0,-70,1,31,?.曹$隙衐 觜40#-BP104D
>> +SCAN}

AT+TPMODE - 读/写连接状态下的工作模式

Command

AT+TPMODE{=Param}

Param

模式(0~1,默认1)
0: 指令模式
1: 透传模式

Response

+TPMODE=Param

Param

模式

Description

指令模式:
蓝牙没有连接串口数据按照指令解析,蓝牙连接后串口收到
的数据按照指令解析
透传模式:
蓝牙没有连接串口数据按照指令解析,蓝牙连接后串口收到
的数据全部发到远端蓝牙
Example:
透传模式
<< AT+TPMODE=1
>> OK

指令模式
<< AT+TPMODE=0
>> OK

AT+ADVEN - 读/写广播使能

Command

AT+ADVEN{=Param}

Param

模式(0~1,默认1)
0: 禁用广播
1: 启用广播

Response

+ADVEN=Param

Param

模式

Description

控制蓝牙广播的使能

Example:
启用广播
<< AT+ADVEN=1
>> OK

禁用广播
<< AT+ADVEN=0
>> OK

AT+ADVDATA - 读/写BLE广播0xFF的数据

Command

AT+ADVDATA{=Param}

Param

tag为0xFF的广播数据

Response

+ADVDATA=Param

Param

tag为0xFF的广播数据

Description

查询修改蓝牙广播数据

Example:
查询tag 0xFF的广播数据内容,\x为十六进制数据
<< AT+ADVDATA
>> +ADVDATA=\x03\x01\x02
>> OK

查询tag 0xFF的广播数据内容,\x为十六进制数据
<< AT+ADVDATA=\x03\x01\x02
>> OK

AT+LESEND - 发送数据到远端设备

Command

AT+LESEND{=Param1{,Param2{,Param3}}}

Param1

连接索引

Param2

数据长度

Param3

数据

Response

OK

Description

此指令仅在指令模式下使用,指令模式模块串口接收数据默
认做 AT 指令解析,需要发送到远端需要使用指令发送,连
接索引信息使用 AT+CHINFO 指令查询
Example:
向连接索引为1的设备发送数据
<< AT+LESEND=1,4,2022
>> OK

AT+CHINFO - 读取连接对端信息

Command

AT+CHINFO

Response

+CHINFO=Param1,Param2,Param3,Param4

Param1

连接索引

Param2

连接状态 (1:未连接,2:连接中,3:已连接)

Param3

连接角色 (0:从机,1:主机)

Param4

对端地址

Description

查询连接信息

Example:
查询连接信息
<< AT+CHINFO
>> +CHINFO=0,3,0,4F85B3319170
>> +CHINFO=1,3,0,6A8E79C29A99
>> +CHINFO=2,1,0,000000000000
>> +CHINFO=3,1,0,000000000000
>> +CHINFO=4,1,0,000000000000
>> OK

AT+REBOOT - 软件复位

Command

AT+REBOOT

Response

OK

Description

模块将复位

Example:
<< AT+REBOOT
>> OK

AT+RESTORE - 恢复出厂设置

Command

AT+RESTORE

Response

OK

Description

模块将恢复为出厂设置

Example:
<< AT+RESTORE
>> OK

AT+LECCONN - 向指定地址发起连接

Command

AT+LECCONN{=Param1{,Param2{,Param3{,Param4}}}}

Param1

12字节设备地址+1字节地址类型

Param2

通信服务UUID

Param3

通信写权限特征值UUID

Param4

通信通知权限特征值UUID

Response

OK

Description

向指定设备发起连接,参数由12字节(设备地址)和1字节
(地址类型)组成,一般情况下地址类型为“0”或者“1”。地址
类型获取方式:
使用 AT+SCAN 扫描返回的第二个参数,例:
+SCAN=0,0,DC0D30001ED4,-65,10,FSC-BT946
连接命令:
AT+LECCONN=DC0D30001ED40
Example:
连接指定设备,0为地址类型
<< AT+LECCONN=DC0D3000039E0
>> OK

向指定地址发起连接,使用FFF0,FFF2,FFF1进行通信
<< AT+LECCONN=DC0D3000039E0,FFF0,FFF2,FFF1
>> OK

AT+PIN - 读/写配对密码

Command

AT+PIN{=Param}

Param

配对密码 (000000 ~ 999999, 默认000000)

Response

+PIN=Param

Param

配对密码

Description

修改配对密码

Example:
查询配对密码
<< AT+PIN
>> +PIN=000000
>> OK

修改配对密码为 123456
<< AT+PIN=123456
>> OK

AT+PLIST - 读/删除配对设备信息

Command

AT+PLIST{=Param1{,Param2{,Param3}}}

Param1

连接索引

Param2

地址类型(没有配对默认为FF)

Param3

配对设备的地址信息(没有配对默认为FFFFFFFFFFFF)

Response

+PLIST=Param

Param

删除配对设备信息

Description

清除配对设备信息,清除后需要关闭设备蓝牙才能生效

Example:
查询配对设备地址
<< AT+PLIST
>> +PLIST=1,00,4C0220734E68
>> +PLIST=2,00,2848E74AB69D
>> +PLIST=3,FF,FFFFFFFFFFFF
>> +PLIST=4,FF,FFFFFFFFFFFF
>> +PLIST=5,FF,FFFFFFFFFFFF
>> +PLIST=6,FF,FFFFFFFFFFFF
>> +PLIST=7,FF,FFFFFFFFFFFF
>> +PLIST=8,FF,FFFFFFFFFFFF
>> +PLIST=9,FF,FFFFFFFFFFFF
>> +PLIST=10,FF,FFFFFFFFFFFF
>> OK

清除全部配对设备信息(清除后需关闭设备蓝牙)
<< AT+PLIST=0
>> OK

清除指定配对设备信息()
<< AT+PLIST=1
>> OK

AT+SMCFG -

Command

AT+SMCFG{=Param}

Param

模式(0~1,默认0)
0: 直接配对模式
1: pin码配对模式

Response

+SMCFG=Param

Param

模式

Description

直接配对模式:
无需输入pin码即可直接进行配对
pin码配对模式:
需输入pin码才可以进行配对
Example:
模式
<< AT+SMCFG=1
>> OK

模式
<< AT+SMCFG=0
>> OK

Events表

+SCAN - AT+SCAN=1扫描结果上报

Indication

+SCAN=Param1,Param2,Param3,Param4,Param5,Param6

Param1

列表序号

Param2

地址类型(1字节)

Param3

地址(12字节)

Param4

RSSI

Param5

设备名长度

Param6

设别名名

Description

模组收到AT+SCAN=1后,会持续扫描,发现设备后通过+SCAN进行上报

Example:
搜索设备
<< AT+SCAN=1
>> +SCAN={
>> +SCAN=0,1,70CFC9A98840,-43,24,LE-Bose QuietControl 30
>> +SCAN=1,1,DC0D30001ED4,-65,10,FSC-BT946
>> +SCAN=}

+SCAN - AT+SCAN=2扫描结果上报

Indication

+SCAN=Param1,Param2,Param3,Param4,Param5,Param6

Param1

地址类型(1字节)

Param2

地址(12字节)

Param3

RSSI

Param4

广播数据包类型

Param5

广播数据包长度

Param6

广播数据包

Description

模组收到AT+SCAN=2后,会持续扫描,发现设备后通过+SCAN进行上报

Example:
嗅探 BLE 广播,并返回原始数据(乱码部分为原始数据,使用 hex 格式)
<< AT+SCAN=2
>> +SCAN{
>> +SCAN=0,DC0D24CFB6D0,-70,1,31,?.曹$隙衐 觜40#-BP104D
>> +SCAN}

+GATTSTAT - 连接状态上报

Indication

+GATTSTAT=Param1,Param2

Param1

连接索引

Param2

连接状态 (1~3)
1: 未连接
2: 连接中
3: 已连接

Description

指令模式下,模组的连接状态发生变化,通过+GATTSTAT主动上报

Example:
连接成功
>> +GATTSTAT=0,3

+DATA - 收到蓝牙数据上报

Indication

+DATA=Param1,Param2,Param3

Param1

连接索引

Param2

数据包长度

Param2

数据包内容

Description

透传模式:上报数据不带+DATA包头
指令模式:上报数据带+DATA包头 +DATA=1,5,12345
Example:
收到数据1234567890
>> +DATA=1,10,1234567890

开发与应用

参阅 FSC-BT618x系列 用户指南

本指南详细介绍了 FSC-BT618x 系列模块的硬件说明、功能说明、数传通讯原理、快速开发套件、快速测试、典型应用开发示例、以及固件升级方法和FAQs

附录

下载 PDF版本

下载PDF版本