Power Saving for BG96, BC66

See below some examples for BC66 and BG96 for early release of RRC connection i.e. Release Access Indicator feature (RAI), after receiving response from UDP echo server.

  • BC66:
  • The qrellock follows directly after the sending, then no more AT commands until the RRC connection released (+ CSCON: 0).
  • If the network grants short active time (T3324) less than 10s, then use AT+QCFG=”initlocktime”,1 to make sure the module timers can take advantage of this short active time.

[2019-07-09_12:14:03:390]Leaving the BROM
[2019-07-09_12:14:04:154]
[2019-07-09_12:14:04:154]RDY
[2019-07-09_12:14:04:154]+CFUN: 1
[2019-07-09_12:14:04:791]
[2019-07-09_12:14:04:791]+CPIN: READY
[2019-07-09_12:14:06:030]at+cscon=1;+cereg=4;+qnbiotrai=2;+cpsms? //or qnbiotrai=1 if just UL data
// Optional AT+QCFG=”initlocktime”,1 if really short active timer (<10s) is granted from network.
[2019-07-09_12:14:06:039]+CPSMS: 1,,,”00100011″,”00000010″
[2019-07-09_12:14:06:039]OK
[2019-07-09_12:14:07:984]
[2019-07-09_12:14:07:984]+CSCON: 1
[2019-07-09_12:14:09:757]
[2019-07-09_12:14:09:757]+CEREG: 5,”7A6B”,”007E425D”,9,,,”00010000″,”00010111″
[2019-07-09_12:14:10:125]
[2019-07-09_12:14:10:125]+IP: 10.175.85.37
[2019-07-09_12:14:20:967]ati
[2019-07-09_12:14:20:988]Quectel_Ltd
[2019-07-09_12:14:20:988]Quectel_BC66
[2019-07-09_12:14:20:988]Revision: BC66NBR01A07
[2019-07-09_12:14:20:988]OK
[2019-07-09_12:14:23:386]at+qiopen=1,1,”UDP”,”85.120.160.207″,16666
[2019-07-09_12:14:23:436]OK
[2019-07-09_12:14:23:461]
[2019-07-09_12:14:23:461]+QIOPEN: 1,0
[2019-07-09_12:14:24:911]at+qisend=1,4,4321;+qrellock
[2019-07-09_12:14:24:941]OK
[2019-07-09_12:14:24:974]
[2019-07-09_12:14:24:974]SEND OK
[2019-07-09_12:14:25:685]
[2019-07-09_12:14:25:685]+QIURC: “recv”,1 //data received
[2019-07-09_12:14:25:778]
[2019-07-09_12:14:25:778]+CSCON: 0 // RRC connection released (0.1s later)
[2019-07-09_12:14:30:470]at+qird=1,4
[2019-07-09_12:14:30:484]+QIRD: 4
[2019-07-09_12:14:30:484]4321
[2019-07-09_12:14:30:484]OK
[2019-07-09_12:14:58:543]+QNBIOTEVENT: “ENTER DEEPSLEEP” // After Active Time expired.

BG96 – does not support RAI directly, but RRC can be manually dropped with AT+QCFG=”RRCABORT”,1 after the expected data is received (or time-out).

[2019-07-09_09:52:31:249]ati
[2019-07-09_09:52:31:249]Quectel
[2019-07-09_09:52:31:249]BG96
[2019-07-09_09:52:31:249]Revision: BG96MAR02A08M1GA
[2019-07-09_09:52:31:265]OK
[2019-07-09_09:52:32:174]at+qcsq
[2019-07-09_09:52:32:174]+QCSQ: “CAT-NB1”,-97,-103,110,-4
[2019-07-09_09:52:32:174]OK
[2019-07-09_09:52:32:798]at+cgdcont?
[2019-07-09_09:52:32:798]+CGDCONT: 1,”IP”,”spe.inetd.vodafone.nbiot”,”0.0.0.0″,0,0,0,0
[2019-07-09_09:52:32:819]OK
[2019-07-09_09:52:34:594]at+cops?
[2019-07-09_09:52:34:594]+COPS: 1,0,”vodafone AU DATA ONLY”,9
[2019-07-09_09:52:34:594]OK
[2019-07-09_09:52:37:468]at+cereg?
[2019-07-09_09:52:37:468]+CEREG: 0,5
[2019-07-09_09:52:37:468]OK
[2019-07-09_09:52:39:322]at+qcscon=1;+QURCCFG=”urcport”,”uart1″
[2019-07-09_09:52:39:322]OK
[2019-07-09_09:52:46:944]at+qiopen=1,1,”UDP”,”85.120.160.207″,16666
[2019-07-09_09:52:46:944]OK
[2019-07-09_09:52:46:959]+QIOPEN: 1,0
[2019-07-09_09:52:48:883]at+qisend=1,4
[2019-07-09_09:52:48:883]> 4321
[2019-07-09_09:52:55:642]SEND OK
[2019-07-09_09:52:56:369]+QCSCON: 1,1
[2019-07-09_09:52:56:854]+QIURC: “recv”,1 //data received
[2019-07-09_09:52:59:866]at+qcfg=”rrcabort”,1 //manual RRC release
[2019-07-09_09:52:59:866]OK
[2019-07-09_09:52:59:982]+QCSCON: 1,0 //RRC release 0.1s later
[2019-07-09_09:53:03:505]at+qird=1,4
[2019-07-09_09:53:03:505]+QIRD: 4
[2019-07-09_09:53:03:505]4321
[2019-07-09_09:53:03:505]OK
[2019-07-09_09:53:08:203]at+qiclose=1
[2019-07-09_09:53:13:683]OK

Note that this example log is incomplete for full PSM operation. Additional commands are:
* AT+CPSMS //enable and set the desired PSM timers
* AT+QPSMS //check the timers granted by the network. The BG96 shall use these values to sleep and wake-up automatically.
*AT+QCFG=”psm/enter”,1 //If not receiving any data, then go to sleep immediately after release of radio – save more power!