当前文档版本为 v0.2.0,您可以访问当前页面的 开发中 版本以获取最近可能的更新。

组网模式协议使用说明

1.模块概述

​ ChirpLAN模块定位为一个支持网络和点对点协议的低频半双工Chirp模块,内置功能完整的 AT 指令, 使用串口进行数据收发,降低了无线应用的门槛,可实现一对一或一对多的通信应用场景。本说明书主要介绍ChirpLAN模块对网关协议通信的使用说明。

1.1 硬件快速入门

  1. 使用 TTL 工具(连接方式如下图)将模组接入串口设备(以 PC 机代替),SETA和SETB拉高,让模块进入AT运行模式。

image-20220903161640230

模块与 TTL 工具连接

  1. 打开ChirpLAN模块上位机设置工具,依次点击“打开串口(串口参数:115200,None,8,1)”、进入配置状态、读取参数、填写相关参数、设置参数,如下图所示。

  • 模组协议选择 “网络”

  • 入网信道(freq)、速率参数(bw/sf/cr)要一致

  • 上下行频率表(上行8个,下行8个)要一致

  • 加密方式及密钥要一致

  • 应用ID要与网关应用ID一致

image-20220903161824409

设置参数

1.2 模块基本参数

分类

参数

取值

无线参数

工作频段

398-510MHz

无线参数

发射功率

NoPA:22dBm/PA:32dBm(峰值)

无线参数

接收灵敏度

-140dBm

无线参数

传输距离

(1)>300米 @SF7, BW250khz, TX power:22dBm
(2)>2000米 @SF9, BW125khz, Tx power:22dBm
(3)>5000米 @SF11,BW125khz, Tx power:22dBm

无线参数

天线选项

外接天线

硬件参数

数据接口

串口:115200(默认)

硬件参数

工作电压

NoPA:DC3.3V/PA:DC5.0V

硬件参数

工作电流

Mode A :
858nA@休眠电流
24uA@5分钟一次收发
Mode B:
1.6uA@休眠电流
3.8uA@30秒唤醒一次
Mode C:
工作电流20mA

硬件参数

工作温度

-40℃ ~ +85℃

硬件参数

存储温度

-45℃ ~ +90℃

硬件参数

尺寸

34.5/*20.5/*4.1mm

硬件参数

封装接口

SMT表贴

表 - 技术参数

1.3 引脚说明

image-20220902185739159

ChirpLAN网络模块引脚示意图

引脚名称

IO 类型

引脚描述

VCC

电源

供电引脚

GND

电源

参考地

ANT

模拟

射频信号输入/输出端口, ANT 端口预留匹配电路,
走线使用 50 Ω 阻抗匹配, 铺地并在周围加过孔

AUX

输出

模块状态指示引脚:
0: 模块可以接收串口数据
1: 模块不可以接收串口数据

UART-RX

输入

TTL 串口接收引脚

UART-TX

输出

TTL 串口发送引脚

SETA

输入

AT 与透传切换, 内部上拉,
0: 透传模式
1: AT 指令模式

SETB

输入

控制模块休眠, 内部上拉
0: 休眠(或无线电唤醒)
1: 唤醒

注意: 调试时如果 SETA, SETB悬空,则是 AT 指令模式,方便进行测试; 当进入到休眠模式后这两个脚会浮空, 需要接到确定的电平上, 否则会产生漏电。

2. 功能介绍

ChirpLAN终端支持主动上报、空中唤醒和全速运行三种工作模式,下图为设备的功能整体框图,可帮助对系统有一个总体的认识。

image-20220621134226677

ChirpLAN系统基本功能框图

2.1 工作模式

本章主要介绍ChirpLAN网络模块的指令模式,以及和网关配合使用的节点主动上报、空中唤醒和全速运行三种工作模式。

名 称

说 明

条 件

AT 指令模式

用户可用AT 指令对模块进行参数配置

SETA=1
SETB=1

网络模式 (NORMAL)

SETB为1时,模块不会进入休眠状态
全速运行模式时,模块同时监听串口和RF,有数据就转发

SETA=0
SETB=1

网络模式(LOWPOWER)

SETB为0时,模块根据工作模式来休眠和唤醒
主动上报模式时,模块进入休眠状态
空中唤醒模式时,模块会启动RTC定期唤醒检测RF前导码

SETA=0
SETB=0

2.1.1 AT 指令模式

AT 指令模式主要实现用户通过串口发送命令设置模组相关的参数。 在 AT 指令模式下,模组串口用于接收 AT 命令,用户可以通过串口发送 AT 命令给模组,用于查询和设置模组的 UART、Chirp等相关参数。 详细的 AT 指令介绍请参考“3.3 AT 指令格式”

2.1.2 终端组网

2.1.2.1 主动上报模式 (Mode A)

通讯双方需满足 以下几个条件:

  • 入网信道(freq)、速率参数(bw/sf/cr)要一致

  • 上下行频率表(上行8个,下行8个)要一致

  • 加密方式及密钥要一致

  • 网关应用ID要一致

  • 工作模式:主动上报

工作流程:

模组上电后根据设置参数进行入网,入网成功后由网关分配工作参数。模块之后将按新的工作参数与网关进行数据通信。

在本工作模式下,模块的工作状态由SETB状态来决定:

  • SETB为低电平时,模块进入休眠状态;

  • SETB为高时,模块退出休眠状态并处于长接收状态;

  • 若外部MCU有数据要发送,则先拉高SETB,再等待AUX变低后(模块完全醒来),即可通过串口发送数据,模块收到串口数据后,随即将收到的数据通过ChirpLAN协议栈发送到网关;

  • 若外部MCU需要模块进入休眠,先将SETB拉低,再等待AUX变高,才能确定模块已进入休眠状态。

***注:*AUX的行为方式请看 2.2章节。

image-20220621134226677

控制流图

模组设置:

配置模组为网络协议,应用ID为网关应用ID,信道、速率与网关通道一配置一致,具体见下图 。

image-20220903135817448

模组设置

2.1.2.2 空中唤醒模式(Mode B)

通讯双方需满足 以下几个条件:

  • 入网信道(freq)、速率参数(bw/sf/cr)要一致

  • 上下行频率表(上行8个,下行8个)要一致

  • 加密方式及密钥要一致

  • 网关应用ID要一致

  • 工作模式:空中唤醒

工作流程:

模组上电后根据设置参数进行入网,入网成功后由网关分配工作参数,之后模块将按新的工作参数与网关进行数据通信。

模组参数配置成功后进入间隔唤醒状态(间隔休眠唤醒),被唤醒的模块接收到正确的网关轮询数据后会将 AUX引脚拉高来唤醒主控MCU,经过AUXT0时间(可通过AT_AUXT设置)后再将接收到的Chirp数据通过串口发送给主控MCU,串口发送完成后,再经过AUXT1时间(可通过AT_AUXT设置)拉低AUX引脚。

之后模块再判断SETB引脚状态,若SETB为低电平则立即进入休眠,进入休眠后,模块将AUX引脚置高;若SETB为高电平,则模块不进入休眠,继续定时检测空中唤醒信号。

工作流程图:

image-20220903135817448

工作流程图

下面是轮询唤醒模式下模块和集中器数据传输时序,如下图所示,网络模块接收到前导码后会被唤醒,直到接收完数据,然后模块进行数据处理。

image-20220903135817448

传输时序图

模组设置:

配置模组为网络协议,应用ID为网关应用ID,信道、速率与网关通道一配置一致,具体见下图。

image-20220903140010232

模组设置

2.1.2.3 全速运行模式(Mode C)

通讯双方需满足 以下几个条件:

  • 入网信道(freq)、速率参数(bw/sf/cr)要一致

  • 上下行频率表(上行8个,下行8个)要一致

  • 加密方式及密钥要一致

  • 网关应用ID要一致

  • 工作模式:全速运行

工作流程:

模组上电后根据设置参数进行入网,入网成功后由网关分配工作参数,模块之后将按新的工作参数与网关进行数据通信。

在本工作模式下,模块的工作状态由SETB状态来决定:

  • SETB为高时,模块进入全速运行状态,无数据通信状态下模块的串口和RF都处于持续接收状态。

  • SETB为低电平时,模块进入休眠状态;

当主控有数据要发送到网关时,先保证SETB是拉高且模块是的空闲状态(AUX低),才能通过串口发送数据,主控在发送数据过程中,要不断检测AUX引脚状态,如果突然变高,则说明模块的缓冲区变满或者其它情况发生,此时主控应立即停止发送数据,须等到AUX变低之后才能继续发送数据。模块对串口包有分包检测机制,若模块收到一个字节数据之后UARTINT时间(通过AT+UARTINT设置)内没有再收到其它字节数据,则认为收到一个完整的数据包,之后模块会将此数据包经过ChirpLAN协议层发送到网关。

当网关有数据两要发送到节点模块时,网关通过ChirpLAN协议栈发送一包数据,模块收到数据包之后,会将 AUX引脚拉高(如果主控休眠可唤醒主控),经过AUXT0时间(可通过AT_AUXT设置)后再将接收到的数据通过串口发送给主控,再经过AUXT1时间(可通过AT_AUXT设置),拉低AUX引脚。

image-20220903140010232

流程图

模组设置:

配置模组为网络协议,应用ID为网关应用ID,信道、速率与网关通道一配置一致,具体见“图 15” 。

image-20220903150549530

模组设置:

2.2 AUX时序说明

高电平表示复位初始化中: 大约 30ms

image-20220903150549530

AUX时序说明:

高电平表示唤醒初始化中: 大约 5ms

image-20220903150549530

AUX时序说明:

透传下接收到串口数据的逻辑: 当串口接收到第一个字节后,AUX 变成高电平,表示 FIFO 非空进入 TX 状态,全部发送完成后 AUX 低电平表 示 FIFO 无数据。

image-20220903150549530

AUX时序说明:

串口数据输出指示( 用于唤醒休眠的外部 MCU) AT+AUXT=10,0

image-20220903150549530

串口数据输出指示:

2.3 固件升级

固件升级步骤

  1. 模块断电状态下,保持SETA,SETB引脚浮空,将uart tx,rx引脚连接至电脑(一般要用到usb转ttl模块)

  2. 模块上电,打开模块设置软件,之后依次打开串口、点击进入配置状态、点击固件升级、选择固件升级文件等,具体操作如下图。

image-20220903135513832

操作流程

3. 产品配置

3.1. 配置工具

产品配有通用设置软件(AT 指令设置软件)以及配套设置软件,支持参数设置,可简化用户的操作,推荐使用配套设置软件来配置参数。

3.1.1. 配套设置软件

该配套设置软件适用于ChirpLAN系列模组的参数读取以及配置。下图中序号依次对应以下 7 个步骤:

image-20220903135339806

软件设置

  1. 在串口设置界面中,将波特率、校验位、数据位、停止位设置为节点对应参数,

    节点串口默认参数为 115200、NONE、8、1。点击打开串口按钮。

  2. 点击进入配置状态按钮,节点回复+OK,即节点进入 AT 指令模式。

  3. 选择点网络协议。

  4. 点击读取参数按钮,软件自动读取节点参数信息。

  5. 可在基本参数中查看以及修改节点参数。

  6. 如果是读取参数则点击退出配置状态按钮退出 AT 指令模式;如果是设置参数则点击设置参数按钮,软件会自动设置节点参数,设置完毕后节点重启,参数生效。

  7. 点击退出配置状态按钮,模块退出配置模式进入网络数据通信模式。

3.2. 配置指令介绍

配置指令即 AT 指令,是指在 AT 指令模式下用户通过 UART 与模组进行命令传递的指令集,后面将详细讲解 AT 指令的使用格式。

上电启动成功后,可以通过 UART 对模组进行设置。

模组的缺省 UART 口参数为: 波特率 115200、无校验、8 位数据位、1 位停止位。

从非 AT 命令模式下切换到 AT 命令模式,若用配套设置软件点击进入配置模式即可进入,若手动进入 AT 命令模式需要以下两个步骤:

  • [ ] 在 UART 上输入“+++”,模组在收到“+++”后会返回一个确认码“a”;

  • [ ] 3 秒内在 UART 上输入确认码“a”,模组收到确认码后,返回“+OK”确认,进入命令模式,如下图所示;

image-20220903135607892

软件设置

模组进入指令模式需要按照如下图的时序要求:

image-20220903175634241

软件设置

表 - AT 指令返回值

返回代码

返回说明

OK

响应成功

ERR CHECK ARGS FORMAT FAILED!

无效的命令格式

ERR CMD MATCH FAILED!

无效的命令

ERR PARSE ARGS FAILED!

无效的参数

ERROR

其它错误

3.3. AT 指令格式

发送命令格式:以回车<CR>、换行<LF>或者回车换行<CR><LF>结尾

表x AT 指令格式

类型

指令格式

说明

举例

0

AT+CMD? <CR><LF>

查询参数

AT+VER? <CR><LF>

1

AT+CMD <CR><LF>

查询参数

AT+VER<CR><LF>

2

AT+CMD=para <CR><LF>

设置参数

AT+CH1=66<CR><LF>

模组回复格式(关闭回显): 设置参数:<CR><LF>OK<CR><LF> 查询参数:<CR><LF> +CMD=PARA<CR><LF>OK<CR><LF> CMD:命令字 PARA:参数

3.4. AT 指令集

AT 指令列表

命令

描 述

命令格式

可保存 (Y/N)

AT

测试模块响应

发:AT
收:OK

No

AT+ENTM

退出 AT 命令,切换到工作模式重启设备

发:AT+ENTM
收:OK

No

AT+E

设备 AT 命令回显设置

发:AT+E
收:OK

No

AT+Z

重启设备

发:AT+Z
收:OK

No

AT+SAVE

保存当前设置为默认设置

发:AT+SAVE
收:OK

No

AT+DEFAULT

恢复默认设置

发:AT+DEFAULT
收:OK

No

AT+VER

查询设备固件版本号

发:AT+VER?
收:+VER=1.0.0
OK

No

AT+UART

设置/查询串口参数

发:AT+UART=<baudrate>,<databits>,<stopbits>, <parity>
收:OK

Yes

AT+UARTINT

串口包之间时间间隔,0~100,单位ms

发:AT+UARTINT=<0~100>
收:OK

Yes

AT+RFPOWER

设置/查询发射功率, 可以减低电源消耗, 但是会减少通讯距离Power:0~29

发:AT+RFPOWER=<0~29>
收:OK

Yes

AT+SF

设置/查询SF

发:AT+SF=<7~12>
收:OK

Yes

AT+BW

设置/查询BW

发:AT+BW=<6~9>
收:OK

Yes

AT+CR

设置/查询CR

发:AT+CR=<1~4>
收:OK

Yes

AT+AID

设置查询应用 ID: 0~FFFFFFFF

Yes

AT+WMODE

设置模块工作模式:
透传模式:0
网络模式:1(本工作模式)

发:AT+WMODE=<workmode>
收:OK

Yes

AT+AUXT

设置/查询 AUX 输出时间:当接收到数据后,AUX 相对与串口 TX提前置高和延时置低的时间默认为 0ms, 如果 MCU 可能处于休眠,则需要设置一个合理的值, 用于等待MCU 唤醒,PreTime、auxDelayTime。范围:0-100 ,单位:ms

发:AT+AUXT=<PreTime>,<auxDelayTime0>
收:OK

Yes

AT+WAKET

设置/查询模组的唤醒间隔(组网模式下,需要服务器下发唤醒间隔),需要与AT+PREAMABLE指令配合使用,休眠模式下,PREAMABLE时间应大于等于WAKET时间,范围:100~5000,单位ms。
注:当WAKET=0且SETB为0时进入休眠不定时唤醒。

发:AT+WAKET=<wakeuptime>
收:OK

AT+ENC

设置/查询通信加密使能标志:
加密关闭:0( 默认)
加密开启:1

发:AT+ENC=<0/1>
收:OK

Yes

AT+KEY

十六进制字符串,占用32个字节

发:AT+KEY=<KeyHexStr>
收:OK

Yes