跳转至

自定义 AT 通用与 USIM 命令

自定义 AT 命令

自定义-通用

设置ID:+NTSETID

命令描述

设置UUID或IMEI值。对于可能的<err>取值,请参见“错误码”章节。

命令语法

命令

返回结果

示例

+NTSETID=<snt>,<data>

-

错误情况:

+CME ERROR: <err>

AT+NTSETID=1,123456789012347

OK

+NTSETID=?

+NTSETID: (支持的<snt>列表)

AT+NTSETID=?

+NTSETID: (0-3)

OK

参数描述

参数

描述

<snt>

整数类型,表示请求的序列号类型。

0:设置<sn>;

1:设置IMEI(国际移动设备标识);

2:设置SVN(软件版本号)。

3:设置IMEI1(国际移动设备标识);

<data>

0:<sn>;

1:<imei>;

2:<svn>。

3:<imei1>。

<sn>

UE的128位UUID(十六进制字符串)。

<imei>

15位字符串类型,十进制字符串格式。

<svn>

2位SVN,十进制字符串格式。

实现说明

  • <sn>应以下列两种格式之一输入:

    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX(32个十六进制字符)

    XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX(32个十六进制字符加上给定位置的4个'-')

    sn配置限制:32个十六进制字符代表16位ASCII码值,每一位必须在0~9、A~Z、a~z之间。

  • 设置的ID可以通过发送AT+CGSN来查询,其中<sn>将以第二种格式显示。

  • 分配的序列号、IMEI和SVN值在重启期间保持不变。

设置永久标识:+NTPERMID

命令描述

将序列号或IMEI移至不可修改的存储中。这要么是无法写入的闪存,要么是无法擦除的一次性可编程存储。

对于可能的<err>取值,请参见“错误码”章节。

命令语法

命令

返回结果

示例

+NTPERMID=<snt>,<dest>

-

错误情况:

+CME ERROR: <err>

AT+NTPERMID=1,1

OK

+NTPERMID?

+NTPERMID: <snt>,<dest>

AT+NTPERMID?

+NTPERMID: 0,1

+NTPERMID: 1,1

OK

+NTPERMID=?

+NTPERMID: (支持的<snt>列表),(支持的<dest>列表)

AT+NTPERMID=?

+NTPERMID: (0,1),(1,2)

OK

参数描述

参数

描述

<snt>

整数类型,表示请求的序列号类型。

0:设置<sn>;

1:设置IMEI(国际移动设备标识)。

<dest>

0:非永久性,可能出现在查询命令的返回值中,但不能设置;

1:永久闪存;

2:一次性可编程存储。

实现说明

  • 只有对应的设备ID存在时才能查询锁定状态。
  • 参数snt等于0时,参数dest不支持2。
  • 该命令不支持IMEI1的设置。

配置AT UART波特率:+NATSPEED

命令描述

配置AT UART波特率。

对于可能的<err>取值,请参见“错误码”章节。

命令语法

命令

返回结果

示例

+NATSPEED=<baud rate>[,<timeout>[,<store>[,<stop bits>[,<parity>[,<xonxoff>[,<lp_ds_xo_enable>[,<lp_clk_sel>]]]]]]]

-

错误情况:

+CME ERROR: <err>

AT+NATSPEED=9600,30,1,1,0,0,0,0

OK

+NATSPEED?

+NATSPEED: <baud rate>,<stop bits>,<parity>,<xonoff>,<lp_ds_xo_enable><lp_clk_sel>

AT+NATSPEED?

+NATSPEED: 9600,1,0,0,0,0

OK

+NATSPEED=?

+NATSPEED: (支持的<baud rate>列表),(支持的<timeout>列表),(支持的<store>列表),(支持的<stop bits>列表),(支持的<parity>列表),(支持的<xonxoff>列表),(支持的<lp_ds_xo_enable>列表),(支持的<lp_clk_sel>列表)

+NATSPEED: (0,4800,9600,57600,115200,230400,921600,1000000,2000000,4000000),(0-30),(0,1),(1,2),(0-2),(0,1),(0,1),(0,1)

OK

参数描述

参数

描述

<baud rate>

整数类型,表示所请求的AT UART波特率。若波特率配置为0,则进入自适应模式。

<timeout>

整数类型,表示使用新波特率发送AT命令(非AT+RESET/非阻塞式AT命令/非交互式AT命令)的等待时间,保证波特率切换成功。否则,AT UART将切换回原来的速度。单位:秒。默认值为3秒。最大值为30。

<store>

整数类型,表示参数<baud rate>和<stop bits>、<parity>、<lp_ds_xo_enable>、<lp_clk_sel>是否存储到NV。默认值为0。

0:不存储到NV,重启后需要重新配置;

1:将存储到NV,超时前有交互。

<stop bits>

AT UART停止位,默认值为1。

1:1个停止位;

2:2个停止位。AT UART波特率小于等于230400时使用LP_UART,不支持2个停止位。

<parity>

AT UART奇偶校验,默认值为0。

0:未启用奇偶校验;

1:奇校验;

2:偶校验。

<xonxoff>

AT UART软件(XON/XOFF)流控。

0:XOFF;

1:XON(不支持配置)。

<lp_ds_xo_enable>

AT UART深睡XO时钟配置,默认值为0。AT UART波特率大于230400或lp_clk_sel为0且波特率小于等于9600时该配置无效。

0:深睡关闭XO时钟;

1:深睡开启XO时钟。

<lp_clk_sel>

AT UART使用LP_UART时的时钟选择配置,默认值为0。

0:波特率小于等于9600时使用RTC时钟分频,大于9600且小于等于230400使用XO时钟分频;

1:LP_UART全波特率使用XO时钟分频。

实现说明

  1. AT UART波特率大于230400或lp_clk_sel为0且波特率小于等于9600时,lp_ds_xo_enable配置无效,均为深睡关闭XO时钟。
  2. 使用AT+NATSPEED设置函数返回OK之后,需要在串口使用新波特率下发非阻塞式AT/非交互式AT命令,建议下发AT+NATSPEED?查询当前配置,否则超时后恢复原配置。
  3. 若设置命令参数(<stop bits>、<parity>、<xonxoff>、<lp_ds_xo_enable>、<lp_clk_sel>)缺省,则缺省项以NV存储值为准,不会进行修改。
  4. lp_clk_sel配置为0时,LPUART波特率4800/9600的TX精度大于2%;lp_clk_sel配置为1时,LPUART波特率4800/9600的TX精度小于2%。
  5. 若配置AT UART波特率非9600或115200,则不支持进行PPP拨号。
  6. 单板AT_UART波特率高于230400深睡时,需客户自保证使用非ATUART相关GPIO唤醒单板后再下发AT命令。
  7. 单板ATUART波特率小于等于230400时,若使用XO时钟分频且配置深睡XO时钟不开启且需要使用AT命令,需要执行以下操作:

    • 每次深睡唤醒必须先发送 AT\0 指令,等待30ms后同时在2s内下发AT命令,需保证AT命令可在2s内执行到业务。

    • 2s约束可通过 uapi_pm_lpuart_ds_delay_time_set 接口配置。

  8. 单板ATUART波特率小于等于230400时,若深睡XO时钟开启且需使用长度超过32Byte的AT命令,需要先执行以下任一操作:

    • 使用AT+NDSDELAY命令延迟A核深睡后再下发,超长AT命令需要在A核深睡前处理完成。
    • 使用AT+NVETOSUPERDS=A,1 命令禁止A核深睡,超长AT命令执行完成后, 使用AT+NVETOSUPERDS=A,0命令允许A核深睡。
  9. 使用AT+NATSPEED设置函数配置波特率为0时,单板进入自适应模式。使用说明及限制如下:

    • 支持三种波特率自适应规格[9600, 57600, 115200],自适应时必须使用AT/at字符进行自适应,串口回复AT OK则说明自适应成功,否则均为失败。自适应场景下,发端的TX精度必须保证在2%以内,偏差超出规格可能会导致自适应失败。
    • 支持波特率自适应范围[4000, 14000]之间,自适应时必须使用AT/at字符开头且指令不大于20Byte的AT命令进行自适应,串口回复AT OK则说明自适应成功,否则均为失败。
    • ATUART使用低频时钟自适应切换成功打印可能存在乱码,切换成高频时钟无乱码问题。
    • 自适应场景下,只允许配置数据位为8,无奇偶校验位,1个停止位。
    • 若自适应完成后需要进行FOTA/PPP/校准综测等业务,必须先执行AT+NATSPEED=baud,timeout,1将配置保存至NV中,否则会导致业务执行异常。同时FOTA升级新版本时,新版本不支持默认打开自适应使能,否则升级时打印会出现乱码。
    • 进入自适应方法:

      • UART口发送AT+NATSPEED=0 后进入自适应模式。
      • 系统启动时NV项(0x600)配置extra_cfg[2]为1,但需注意FOTA业务/PPP业务及校准综测业务等场景。
    • 自适应场景下,ATUART可进入深睡模式,需要先发送AT\0指令唤醒单板后,再发送AT/at字符进行自适应,可参考实现说明7

    • 使用场景
      1. 发送AT+NATSPEED=0,自适应成功后,发送AT+RESET复位,单板进入自适应模式。
      2. 发送AT+NATSPEED=0,自适应成功后,发送AT+NATSPEED=baud,timeout,1保存配置,发送AT+RESET复位单板以baud启动。
      3. 发送AT+NATSPEED=0,自适应成功后,发送AT+NATSPEED=baud,timeout切换配置,发送AT+RESET复位单板进入自适应模式。

表 1 ATUART不同配置下的功耗及唤醒机制

波特率

baud rate

ATUART时钟源

lp_clk_sel

深睡XO配置

lp_ds_xo_enable

深睡后AT命令执行机制

功耗差异

4800

0

0

AT命令可直接响应。

几十微安

1

0

先发送AT\0字符再发送AT命令,参考实现说明7

几十微安

1

AT命令长度小于32字节可直接响应,否则参考实现说明8

几百微安

9600

0

0

AT命令可直接响应。

几十微安

1

0

先发送AT\0字符再发送AT命令,参考实现说明7

几十微安

1

AT命令长度小于32字节可直接响应,否则参考实现说明8

几百微安

57600

0/1

0

先发送AT\0字符再发送AT命令,参考实现说明7

几十微安

1

AT命令长度小于32字节可直接响应,否则参考实现说明8

几百微安

115200

0/1

0

先发送AT\0字符再发送AT命令,参考实现说明7

几十微安

1

AT命令长度小于32字节可直接响应,否则参考实现说明8

几百微安

230400

0/1

0

先发送AT\0字符再发送AT命令,参考实现说明7

几十微安

1

AT命令长度小于32Byte可直接响应,否则参考实现说明8

几百微安

921600

0/1

0

客户自保证用非ATUART的GPIO唤醒单板再发送AT命令。

几十微安

1000000

2000000

4000000

注意: ATUART深睡XO使能不可以切换,否则有死机风险。

须知:

  • ATUART波特率若需使用2M/4M,必须保证单板处于非业务态,否则可能导致ATUART被阻塞。
  • ATUART波特率若需使用2M/4M,必须为可靠性传输场景。

重启:+RESET

命令描述

此命令用于重启终端。

说明: 并没有最终的OK信号表明命令行已完成处理,AT命令处理以此命令终止。重启之前不会收到任何确认消息。

命令语法

命令

返回结果

示例

+RESET

REBOOTING<CR><LF>

AT+RESET

REBOOTING

REBOOT_CAUSE_GLOBAL_APPLICATION_AT

OK

+RESET=?

-

AT+RESET=?

OK

实现说明

+RESET具有最高优先级,可以在任何时间使用,除非执行拦截和可中止的AT命令或AT命令被中断。

配置输出log等级:+NLOGLEVEL

命令描述

此命令设置日志级别。它可以采用参数<level>值之一: 该值在重启期间保持不变。

命令语法

命令

返回结果

示例

+NLOGLEVEL=<level>

-

错误情况:

+CME ERROR: <err>

AT+NLOGLEVEL=NORMAL

OK

+NLOGLEVEL?

+NLOGLEVEL: <level>

AT+NLOGLEVEL?

+NLOGLEVEL: NORMAL

OK

+NLOGLEVEL=?

+NLOGLEVEL: (支持的<level>列表)

AT+NLOGLEVEL=?

+NLOGLEVEL: (VERBOSE,NORMAL,WARNING,ERROR,NONE)

OK

参数描述

参数

描述

<level>

log等级。

VERBOSE:冗长;

NORMAL: 正常;

WARNING:警告;

ERROR:错误;

NONE: 无。

实现说明

默认的日志级别为VERBOSE。

固件更新:+NFWUPD

命令描述

此命令支持固件更新。它允许擦除数据包区、数据包下载和固件升级。

升级固件前,需要先擦除数据包区并下载数据包。下载完成后,发送固件升级命令。然后系统会重启并验证数据包,如果数据包合法,则启动将固件升级到新版本,否则将重启并且不升级,此时用户可以通过相应的AT命令查看数据包验证错误信息。

对于可能的<err>取值,请参见“错误码”章节。

命令语法

命令

返回结果

示例

+NFWUPD=<cmd>[,<download_type>,<sn>,<len>,<data>,<crc>]

<result>

+CME ERROR: <err>

AT+NFWUPD=0

OK

+NFWUPD=?

+NFWUPD: (支持的<cmd>列表)

AT+NFWUPD=?

+NFWUPD: (0,1,5,6)

OK

参数描述

参数

描述

<cmd>

数据包进程命令。

0:擦除内部闪存中的数据包区;

1:<download_type>,<sn>,<len>,<data>,<crc>下载一个数据包段。下载一个FOTA数据包。数据包段是FOTA数据包的连续段。段长度应为32/64/128/256/512,且必须按顺序提供;

5:执行升级;

6:获取升级结果。

将打印升级结果<result>(“Upgrade success!”或“Upgrade failed! (err = <errcode>)”)。

<errcode>

升级错误码。

0:升级初始化;

5:校验失败;

8:升级失败。

<download_type>

1:升级文件存储在文件系统中。

<sn>

序列号。它从0开始,每个数据包段递增1。

<len>

数据长度以字节为单位,应为32/64/128/256/512。

<data>

以十六进制字符串格式传输的数据。

<crc>

数据包段二进制数据的CRC。CRC以十六进制字符串形式发送。<crc>是数据包段中每个字节的xor8。

实现说明

  • AT+NFWUPD=0的超时时间为180秒。如果在180秒内擦除失败,则返回错误。
  • 当AT+NFWUPD=1时,只有在前一个数据包下载完成后,才能下载下一个数据包。响应时间一般小于180秒。

延迟深睡模式:+NDSDELAY

命令描述

设置命令设置拦截深睡模式的时长。该时长仅针对下一次深睡,不会存储在NV中,重启后需要重新配置。

对于可能的<err>取值,请参见“错误码”章节。

命令语法

命令

返回结果

示例

+NDSDELAY=<ms_value>

-

错误情况:

+CME ERROR: <err>

AT+NDSDELAY=1000

OK

+NDSDELAY=?

+NDSDELAY: (支持的<ms_value>列表)

AT+NDSDELAY=?

+NDSDELAY: (1-65535)

OK

参数描述

参数

描述

<ms_value>

整数类型。

拦截深睡模式的时长。单位:ms。

崩溃信息:+NCRASHINFO

命令描述

设置命令用于打印重启原因或A/C核心崩溃信息。

对于可能的<err>取值,请参见“错误码”章节。

命令语法

命令

返回结果

示例

+NCRASHINFO=<type>

-

错误情况:

+CME ERROR: <err>

AT+NCRASHINFO=1

REBOOT_CAUSE_GLOBAL_APPLICATION_AT

OK

+NCRASHINFO=?

+NCRASHINFO: (支持的<type>的列表)

AT+NCRASHINFO=?

+NCRASHINFO: (1,2,3)

OK

参数描述

参数

描述

<type>

整数类型。

1:打印最近一次重启原因;

2:打印AT UART口的A核崩溃信息;

3:打印AT UART口的C核崩溃信息;

崩溃信息为关于A/C核最近一次的异常重启信息。如果A/C核没有重启过或者最近一次重启没有异常,只返回OK,不会有崩溃信息。

硬复位会清除上次异常重启信息。

实现说明

A/C核死机后,不下电情况下,能读到死机信息,下电后则读不到。

软关机:+NPOWD

命令描述

通过执行AT+NPOWD来关闭模块是最安全的方式,推荐使用此方法来关闭模块。此AT命令让模块从网络注销并完成FLASH任务,之后模块进入安全的数据状态。

对于可能的<err>取值,请参见“错误码”章节。

命令语法

命令

返回结果

示例

+NPOWD=<mode>

-

错误情况:

+CME ERROR: <err>

AT+NPOWD=1

OK

POWERED_DOWN

+NPOWD=?

-

AT+NPOWD=?

OK

参数描述

参数

描述

<mode>

整数类型。

1:模块关机。

注意: 发送AT+NPOWD=1后,请勿执行任何其他AT命令。成功执行命令后,模块将输出主动上报 POWERED_DOWN,然后进入关机状态。 建议在输出POWERED_DOWN后等待1秒以断开电源,为避免数据丢失,在输出POWERED_DOWN之前不能断开电源。

芯片状态信息查询:+NQSTATE

命令描述

通过执行 AT+NQSTATE 来查询A/C核的相关状态信息,对于可能的<err>取值,请参见“错误码”章节。

命令语法

命令

返回结果

示例

+NQSTATE=<core>,<id>

-

错误情况:

+CME ERROR: <err>

AT+NQSTATE=1,1

[sleep_times=2:2][vote=0x0][cur_time=2660174747:permit=2660138019][soc_sleep=57381][freq=198]

OK

参数描述

参数

描述

<core>

1:A core;

2:C core。

<id>

1:SOC_QUERY_LPC_STATE,低功耗状态信息查询;

2:SOC_QUERY_MEM_STATE,内存信息状态查询;

3:SOC_QUERY_SYSERR_STATE,死机信息查询;

4:SOC_QUERY_TASK_STATE,线程信息查询;

5:SOC_QUERY_TIME_INFO,TIMER信息查询;

6:SOC_QUERY_USB_LPC_STATE,USB_LPC信息查询。

返回值说明

  • 低功耗状态信息解析:[准备深睡次数 : 实际深睡次数][深睡投票][当前时刻 : 超时时刻][睡眠次数][cpu频率(MHz)]
  • 内存信息状态查询:

    A-Core:total=总空间;used=已使用空间;free=空闲空间;peek=峰值;max_free_node=最大空闲可用内存大小;fail=申请内存失败次数。

    C-Core:total=总空间;used=已使用空间;free=空闲空间;peek=峰值;max_free_node=最大空闲可用内存大小;fail=申请内存失败次数。

    [SW]total=内存池大小;used=已使用空间;free=空闲空间;peek=峰值;max_free_node=最大空闲可用内存大小;fail=申请内存失败次数。

    [SW_CUSTOMER]total=内存池大小;used=已使用空间;free=空闲空间;peek=峰值;max_free_node=最大空闲可用内存大小;fail=申请内存失败次数。此条内存信息只在速率模式为低速模式下打印。

    A-Core:[HW]total=内存池大小;used=已使用空间;free=空闲空间;peek=峰值;max_free_node=最大空闲可用内存大小;fail=申请内存失败次数。

    C-Core:[HW]total=内存池大小;used=已使用空间;free=空闲空间;peek=峰值;max_free_node=最大空闲可用内存大小;fail=申请内存失败次数。

  • 死机信息查询:

    valid=死机信息是否有效:

    0:无效;

    1:有效;

    last=是否上次死机;

    crash_sec=启动到死机的时间(单位:s); main_type=主死机原因; sub_type=从死机原因; phase=保存死机信息有效阶段,如果在信息保存过程中发生了新的异常,则可能不执行最后一步。

  • 线程信息查询:线程名; id=线程id; pri=线程任务优先级; state=线程状态;stack size=线程栈大小; top=栈顶地址; peek=栈使用峰值。

  • TIMER信息查询:os_tick=启动到当前时刻的ms数; rtc=从上次上电到当前rtc计数; rtc_s=以秒为单位从上次上电到当前rtc计数; rtc_freq=频率(单位Hz)。
  • USB_LPC信息查询:

    • USB传输事件信息:

      disconnect_num=断开次数;connect_num=连接次数;rst_num=复位次数;suspend_num=休眠次数;resume_num=唤醒次数;remote_wakeup_err_num=远程唤醒失败次数;phy_err_num=phy异常次数;unsuccess_num=trb处理异常计数;combo_num=多事件计数;eb_full_num=缓冲区满计数。

    • USB端点信息:

      epnum=端点号;enable=是否使能;flow_control=流控使能;is_in=是否是in端点;succ_num=传输成功计数;short_num=短包传输计数;nrdy_num=传输未就绪计数;babble_num=数据错误计数; fifo_err_num=缓冲错误计数;isoc_overrun_num=等时传输超时计数;trans_err_num=传输错误计数;miss_service_num=服务错误计数;ctrl_short_num=控制错误计数。

    • USB网络数据包信息:

      tx_count=发送数据包计数;tx_buff_len=发送数据包累计长度;rx_count=接收数据包计数;rx_buff_len=接收数据包累计长度。

须知:

  • C核只可查询低功耗状态信息,即当core=2时,ID只可为1。
  • 内存信息中,内存池自身句柄占一定大小,因此已使用空间与空闲空间之和小于总空间值。

信号强度自动上报:+NSQ

命令描述

该命令用于配置信号强度变化的上报。打开后功耗增加,测试DRX功耗会有额外代价。

命令语法

命令

返回结果

示例

+NSQ=<mode>,<interval>,<stride>

-

错误情况:

+CME ERROR: <err>

AT+NSQ=1

OK

+NSQ?

+NSQ:<mode>[,<interval>,<stride>]

AT+NSQ?

+NSQ:1,1,2

OK

+NSQ=?

+NSQ: (支持的<mode>), (支持的<interval>),(支持的<stride>)

AT+NSQ=?

+NSQ: (0,1),(1-300),(2-10)

参数描述

参数

描述

<mode>

整型值,必选参数,是否打开自动上报。

0:关闭自动上报;

1:打开自动上报。

默认值0。

<interval>

整型值,可选参数,检测周期(单位:秒)。

取值范围[1,300],默认值为1。

mode=0时不生效,mode=1时不携带该参数则取默认值。

<stride>

整型值,可选参数,步长(单位:dB)。

取值范围[2,10],默认值为2。

mode=0时不生效,mode=1时不携带该参数则取默认值。

<rssi>

整型值,接收信号强度指示。

0:等于或小于-113dBm;

1:-111dBm;

2~30:-109dBm~-53dBm,步长为2dB(2:-109dBm;3:-107dBm;……30:-53dBm);

31:等于或大于-51dBm;

99:未知或不可测。

<ber>

0~7:整型值,比特误码率等级,具体描述请参见“3GPP TS 45.008 [20] subclause 8.2.4”;

99:未知或不可测。

实现说明

设置关闭上报/关机/进入PSM后不进行上报。设置打开上报,在开机且不处于PSM状态时进行上报。上报进行期间,每隔<interval>秒检查满足条件:之前上报处于关闭状态或RSSI和上次上报时的值相差大于等于<stride>db,触发上报。该配置不会存储在NV中,重启后需要重新配置。

配置深睡投票:+NVETOSUPERDS

命令描述

通过执行AT+NVETOSUPERDS配置A核深睡投票。

对于可能的<err>取值,请参见“错误码”章节。

命令语法

命令

返回结果

示例

+NVETOSUPERDS=<chip_core>,<veto>

-

错误情况:

+CME ERROR: <err>

AT+NVETOSUPERDS=A,1

OK

参数描述

参数

描述

<chip_core>

字符串类型。

A:A核。

<veto>

整型值。

0:取消A核深睡投票;

1:添加A核深睡投票。

配置BANKD电平:+NBANKD

命令描述

通过执行AT+NBANKD配置或查询BANKD电平配置。AT设置命令会将BANKD电平配置进NV,NV重启后生效。

命令语法

命令

返回结果

示例

+NBANKD=<bankd_level>

-

错误情况:

+CME ERROR: <err>

AT+NBANKD=3000

OK

+NBANKD?

+NBANKDLEVEL: <bankd_level>

AT+NBANKD?

+NBANKDLEVEL: 3000

OK

参数描述

参数

描述

<bankd_level>

bankd电平等级,仅支持三种配置2800、3000、3300,单位:mV。

请求组件版本: +NVER

命令描述

通过执行AT+NVER可以查看组件版本号。

命令语法

命令

返回结果

示例

+NVER

-

错误情况:

+CME ERROR: <err>

AT+NVER

+NVER: Hi2131V100R001C10SPC001B010

OK

+NVER=?

-

AT+NVER=?

OK

播放支付金额:+TTSAMOUNT

命令描述

播放支付金额。

命令语法

命令

返回结果

示例

+TTSAMOUNT=<amount>

OK

+CME ERROR: <err>

AT+TTSAMOUNT=52

OK,播放语音”收款五十二元”

+TTSAMOUNT=?

+TTSAMOUNT: 支持amount的最大长度

AT+TTSAMOUNT=?

+TTSAMOUNT: string(11)

OK

参数描述

参数

描述

<amount>

字符串类型。输入的支付金额,长度最大为11。

播放电池电量:+TTSBATLV

命令描述

播放电池电量。

命令语法

命令

返回结果

示例

+TTSBATLV=<electricity>

OK

+CME ERROR: <err>

AT+TTSBATLV=52

OK,播放语音”电池电量百分之五十二”

+TTSBATLV=?

+TTSBATLV:(支持的electricity列表)

AT+TTSBATLV=?

+TTSBATLV: (1,100)

OK

参数描述

参数

描述

<electricity>

输入的电池电量,取值范围:1~100。

播放固定语音:+TTSPRESET

命令描述

播放固定语音。

命令语法

命令

返回结果

示例

+TTSPRESET=<index>

OK

+CME ERROR: <err>

AT+TTSPRESET=0

OK,播放语音”设备激活失败”

+TTSPRESET=?

+TTSPRESET: (支持的index列表)

AT+TTSPRESET=?

+TTSPRESET: (0,30)

OK

参数描述

参数

描述

<index>

播放固定语音,取值范围:0~30。

表 1 index对应语音内容

index

语音内容

0

设备激活失败

1

设备未激活

2

设备已经激活,正在连接服务

3

用户取消支付

4

网络连接成功

5

正在充电

6

退出音量调节模式

7

获取配置信息失败

8

获取配置信息成功

9

电量低,请充电

10

网络连接失败

11

正在连接4G网络

12

这是最新—笔

13

未检测到流量卡,请检查

14

这是最后一笔

15

正在关机

16

服务连接失败

17

服务连接成功

18

检测到新版本,更新中

19

升级失败

20

升级成功

21

用户参数为空,请先配置参数

22

这是最大音量

23

这是最小音量

24

音量加

25

现在是音量调节模式

26

音量减

27

进入配网模式,请配置网络

28

正在连接WiFi网络

29

WiFi网络连接失败

30

WiFi网络连接成功

删除日志工具重连信息:+RECONNDEL

命令描述

本产品支持单板通过UART连接DebugKits或LogCat工具时,在各种复位场景下实现复位后快速自动重连,无需主动点击DebugKits连接按钮或执行LogCat连接命令,便于及时查看单板启动后的前期日志。功能设计上使用NV的形式保存重连信息,将信息写入到FLASH上。此命令用于删除该保存重连信息的NV数据和检查NV数据是否存在。具体使用场景详见实现说明中的“须知”。

命令语法

命令

返回结果

示例

+RECONNDEL

OK

+CME ERROR: <err>

AT+RECONNDEL

OK

+RECONNDEL?

+RECONNDEL: <result>

+CME ERROR: <err>

AT+RECONNDEL?

+RECONNDEL: 0

OK

参数描述

参数

描述

<result>

返回数值表示FLASH中是否还存在该NV的数据。

0:NV数据不存在;

1:NV数据存在。

实现说明

须知:

  • 复位重连后,单板侧会自动开启日志上报,日志流程可能会影响业务性能。因此,建议在后续不再有复位重连需求时,使用此命令及时删除保存的重连信息NV数据,以关闭自动重连后的默认日志上报。
  • 只有通过UART方式连接DebugKits或LogCat工具会涉及到此NV,用于实现UART的快速自动重连。USB暂不支持快速自动重连,仅支持正常自动重连。
  • 若使用UART方式连接DebugKits或LogCat工具,在未连接状态下手动连接成功后,预期连接信息将保存到NV中。由于并非实时写入NV到FLASH,为确保后续复位后能快速重连,可通过“AT+RECONNDEL?”命令查询此时FLASH中是否有该NV数据,以检查是否写入成功。若未写入,建议发送“AT+RESET”命令进行一次软复位,确保NV写入FLASH成功。后续复位后即可快速自动重连,且无需再发送此AT命令进行查询,仅在手动连接后需要查询确保NV写入成功。
  • 使用UART方式与DebugKits或LogCat连接的状态下,主动与工具正常断开后,此时该NV数据将会被删除(非正常断开时NV不会被删除)。由于从FLASH上删除NV并非实时,因此建议通过“AT+RECONNDEL?”命令查询是否删除成功,若未删除,建议发送“AT+RESET”命令进行一次软复位,确保NV数据删除成功。
  • DebugKits工具的正常断开操作为:点击断开连接按钮、点击软件关闭按钮。
  • LogCat工具的正常断开操作为:执行“Ctrl+C”命令。

自定义-USIM相关

切换SIM卡槽:+USIMSEL

命令描述

该命令用于切换当前使用的SIM卡槽,以及查询当前使用卡槽ID。

命令语法

命令

返回结果

示例

AT+USIMSEL=<sim_slot_id>

-

错误情况:

+CME ERROR: <err>

AT+USIMSEL=1

OK

AT+USIMSEL?

+USIMSEL: <sim_slot_id>

AT+USIMSEL?

+USIMSEL: 0

AT+USIMSEL=?

+USIMSEL: 支持的<sim_slot_id>列表

AT+USIMSEL=?

+USIMSEL: (0,1)

OK

参数描述

参数

描述

<sim_slot_id>

整型:卡槽ID,默认使用卡槽0。

0:使用卡槽0;

1:使用卡槽1。

实现说明

关机状态下,并且卡完成去激活后才能切换卡槽,否则切换失败。

未开启SUPPORT_SIM1_HOT_PLUG宏该命令不支持设置置,查询的返回的值也无意义。

热插拔配置:+USIMHOTPLUG

命令描述

该命令用于配置UE当前是否支持热插拔卡。

命令语法

命令

返回结果

示例

AT+USIMHOTPLUG=<support_flag>

-

错误情况:

+CME ERROR: <err>

AT+USIMHOTPLUG=1

OK

AT+USIMHOTPLUG?

+USIMHOTPLUG: <support_flag>

AT+USIMHOTPLUG?

+USIMHOTPLUG: 1

OK

AT+USIMHOTPLUG=?

+USIMHOTPLUG: (支持的<support_flag>列表)

AT+USIMHOTPLUG=?

+USIMHOTPLUG: (0,1)

OK

参数描述

参数

描述

<support_flag>

整型:是否支持热插拔。

0:不支持;

1:支持。

默认支持。

实现说明

更改配置后重启生效。

设置UICC开关:+NUICC

命令描述

此命令用于UICC开机/关机。当使用+CSIM和+CRSM时需要使用。

会增加开机时的功耗。

如果由于MT错误造成设置失败,则返回+CME ERROR: <err>。

对于可能的<err>取值,请参见“错误码”章节。

命令语法

命令

返回结果

示例

+NUICC=<mode>

-

错误情况:

+CME ERROR: <err>

AT+NUICC=1

OK

+NUICC=?

+NUICC: (支持的<mode>列表)

AT+NUICC=?

+NUICC: (0,1)

OK

参数描述

参数

描述

<mode>

整数类型。

0:关机;

1:开机。

SIM卡状态上报控制:+NSIMSRS

命令描述

设置命令用来控制SIM卡状态主动上报是否使能,当<mode>=1且(U)SIM卡状态发生变化时,主动上报“+NSIMSRP:<status>”。

查询命令返回当前的<mode>。

命令语法

命令

返回结果

示例

+NSIMSRS=<mode>

-

错误情况:

+CME ERROR: <err>

AT+NSIMSRS=1

OK

+NSIMSRS?

+NSIMSRS: <mode>

AT+NSIMSRS?

+NSIMSRS: 1

OK

+NSIMSRS=?

+NSIMSRS: (支持的<mode>列表)

AT+NSIMSRS=?

+NSIMSRS: (0,1)

OK

参数描述

参数

描述

<mode>

整数类型。

0:关闭SIM Status主动上报;

1:启用SIM Status主动上报,上报格式“+NSIMSRP: <status>”。

<status>

整数类型,表示(U)SIM卡状态。

0:(U)SIM卡已拔出;

1:(U)SIM卡已插入;

2:(U)SIM卡初始化完成。

查询SIM卡识别码:+ICCID

命令描述

执行和查询命令都用于读取SIM卡识别号码。

命令语法

命令

返回结果

示例

+ICCID

+ICCID: <iccid>

错误情况:

+CME ERROR: <err>

AT+ICCID

+ICCID: 4412345678901234567

OK

+ICCID?

+ICCID: <iccid>

错误情况:

+CME ERROR: <err>

AT+ICCID?

+ICCID: 4412345678901234567

OK

+ICCID=?

-

AT+ICCID=?

OK

参数描述

参数

描述

<iccid>

SIM卡识别号码。

查询本机号码:+PHONENUM

命令描述

执行和查询命令都用于读取本机号码。

命令语法

命令

返回结果

示例

+PHONENUM

+PHONENUM: <phone_num>

错误情况:

+CME ERROR: <err>

AT+PHONENUM

+PHONENUM: +8613312345678

OK

+PHONENUM?

+PHONENUM: <phone_num>

错误情况:

+CME ERROR: <err>

AT+PHONENUM?

+PHONENUM: +8613312345678

OK

+PHONENUM=?

-

AT+PHONENUM=?

OK

参数描述

参数

描述

<phone_num>

带国家码的电话号码。

清除FPLMN列表:+CLEARFPLMN

命令描述

方便自动化测试,添加FPLMN列表后导致后面用例测试用例不能入网导致失败,仅限测试使用。

命令语法

命令

返回结果

示例

+CLEARFPLMN

-

错误情况:

+CME ERROR: <err>

AT+CLEARFPLMN

OK

+CLEARFPLMN=?

-

AT+CLEARFPLMN=?

OK

参数描述

NA

实现说明

测试完需要添加FPLMN列表的用例,在关机步骤前使用。

配置救卡次数:+USIMRETRYTIMES

命令描述

配置当软件未检测到sim卡时,主动进行的sim卡尝试激活次数。

命令语法

命令

返回结果

示例

+USIMRETRYTIMES=<times>

-

错误情况:

+CME ERROR: <err>

AT+USIMRETRYTIMES=3

OK

+USIMRETRYTIMES?

+USIMRETRYTIMES: <times>

错误情况:

+CME ERROR: <err>

AT+USIMRETRYTIMES?

+USIMRETRYTIMES: 1

OK

+USIMRETRYTIMES=?

+USIMRETRYTIMES: (支持的<times>列表)

AT+USIMRETRYTIMES=?

+USIMRETRYTIMES: (0-3)

OK

参数描述

参数

描述

<times>

救卡次数。

取值范围:0-3

实现说明

禁止在热插拔期间使用。