HL7800 AT+KCELL=2,1 - RRC_IDLE state

Hi,

In order to use the AT+KCELL-command the module must be in RRC_IDLE state according to the “AT Command Interface Guide”.
How can I verify that the module is in this state before running the command?
Which is the most power efficient sequence from power on to run this command?

Thanks in advance

BR
Martin

according to AT command user guide, you can use AT+KNMPSD to bring the module to RRC IDLE

Thanks for your response - I’ve already tried that without success unfortunately

my testing here:

ati3

HL7800.4.6.8.0

OK
at+cereg?

+CEREG: 4,1,“058E”,“04A5411A”,9

OK
at+knmpsd

OK
at+kcell=2,1

OK

Well you would probably be in RRC_IDLE mode before running the at+knmpsd command as well depending on how much time has passed since registration/data transmisson/…

I figured out that it is possible to issue the KCELL command when deregistered from the network, so my idea is to use the following sequence:

  • Power on the device
  • Await +KSUP
  • Execute COPS=2
  • Execute KCELL=2,1

However I experience issues when executing AT+COPS command to close in time to the +KSUP URC and also when I execute AT+KCELL command to close after COPS returns with “OK”.

Can I get an indication from the module when the module is ready to accept “AT+COPS” commands after power on?
Also, when is the module ready to accept at+kcell commands after changing the “at+cops”-mode?

BR
Martin

Can you post your AT log?

I don’t see problem to execute AT+COPS=2 even there is no SIM card.

+KSUP: 2
at

OK

+SIM: 1
at+cpin?

+CME ERROR: 10
at+cops?

+COPS: 0

OK
at+cops=2

OK

The first issue occurs when running at+cops=2 directly (close in time) after +KSUP URC:

5752 - +KSUP: 0
5819 - AT
5819 - 
5819 - OK
5819 - AT+COPS=2
125808 - 
125808 - ERROR
125808 - 
125808 - +CEREG: 2
125841 - 
125841 - +SIM: 0
126191 - 
126191 - +CEREG: 0

The command executes for 2 minutes (time on the left hand side is in ms) returns error.
The odd thing is that even though the “cops”-command return error it seems to have taken effect?

The other issue is running the at+kcell directly (to close in time) after at+cops responds with “OK”:

9021- +KSUP: 0
9079 - AT
9079 - 
9079 - OK
11316 - 
11316 - +CEREG: 2
11916 - 
11916 - +SIM: 0
14271 - AT+COPS=2
14286 - 
14286 - OK
14286 - AT+KCELL=2,1,1
14304 - 
14304 - ERROR

If I step through my program and wait a fair amount of time between the commands it runs mostly fine:

4909- +KSUP: 0
4957 - AT
4957 - 
4957 - OK
7192 - 
7192 - +CEREG: 2
7495 - AT+COPS=2
7495 - 
7495 - OK
7777 - 
7777 - +SIM: 0
23246 - 
23246 - +CEREG: 0
25313 - AT+KCELL=2,1,1
25329 - 
25329 - OK
25329 - 
25329 - +CEREG: 2
40559 - 
40592 - +KCELL: 6300,136,01898716,42f010,51,115
40592 - 
40592 - +KCELL: 6300,54,0189870C,42f010,97,115
40592 - 
40592 - +KCELL: 6400,66,04CBFE09,42f070,41,34103
40592 - 
40592 - +KCELL: 6400,66,04CBFE09,42f080,41,34103
40592 - 
40592 - +KCELL: 6400,377,04CDB50B,42f070,97,34103
40592 - 
40592 - +KCELL: 6400,377,04CDB50B,42f080,97,34103
40592 - 
40592 - +KCELL: 0
40943 - 
40959 - +CEREG: 0

So what are the preconditions to run at+cops=2 and at+kcell=2,1[,1] without encountering errors?
I’m running FW 4.6.9

BR
Martin

I don’t see problem even before +SIM indication:

at+cfun=1,1
OK

+KSUP: 0
at
OK
at+cops=2
OK

+SIM: 1
ati3
HL7800.4.6.8.0

OK

How many milliseconds do you wait between+KSUP and at+cops=2?

Just to be clear - the sequence looks like this:

  • Apply power
  • Await +KSUP (or something else?)
  • At+cops=2
  • Error

As I stated I can make it work by waiting some time between the commands, but you typically don’t want to rely on waiting.

[Fri Aug 20 15:16:04.019 2021] at+cfun=1,1
[Fri Aug 20 15:16:06.534 2021] OK
[Fri Aug 20 15:16:11.563 2021]
[Fri Aug 20 15:16:11.563 2021] +KSUP: 0
[Fri Aug 20 15:16:11.995 2021] at+cops=2
[Fri Aug 20 15:16:13.501 2021] OK
[Fri Aug 20 15:16:13.629 2021]
[Fri Aug 20 15:16:13.629 2021] +SIM: 1

So I take it you don’t power on your device but just resets it with the cfun command?

no, I just did software reset.

okay but why are you resetting it once more with the cfun command if you just powered it on?

I want to show you from the beginning

I tired resetting the device as you do, and also waiting for ~450ms between the KSUP indication and the AT+COPS-command but I still face the same problem.

5929 - +KSUP: 0
5929 - AT
5929 - 
5929 - OK
5959 - AT+CFUN=1,1
5959 - 
5959 - OK
10881 - 
10881 - +KSUP: 0
10916 - AT
10916 - 
10916 - OK
11400 - AT+COPS=2
131442 - 
131442 - ERROR

you can try FW 4.6.8.0 as my testing

Downgraded to:

ati9
HL7800.4.6.8
HL78xx.4.6.8.0.RK_02_01_02_00_128.20210213

The problem remains…

no idea as I cannot reproduce the issue.
Probably you need to keep sending this command after power on until it returns OK