AnsweredAssumed Answered

SPIRIT1 not entering into LCK

Question asked by srinivas zinka on Apr 4, 2018

Hi,

 

First of all, sorry for the lengthy message.

 

We are developing a 433 MHz transceiver using SPIRIT1. We were able to run "SDK_BasicGenreic_A" program provided with the development kit on "STEVAL-IKR002V3D" daughter-board. But, when we are trying to dump the same code in our own board, SPIRIT1 is unable to enter into "LOCK" state. We have ensured that the following conditions are met:

 

1) SPI communication is working (able to read and write to SPIRIT1 registers)

2) 50 MHz sinusoidal signal got generated at crystal's terminals (observed using DSO)

3) SPIRIT1 is entering into "STANDBY" and "READY" modes (checked MC_STATE1_BASE register status)

 

We have compared all the register values at various stages of the code with those of the reference board's registers. All of them are exactly the same, except for "0xB2", which should have been changed to 0xCA, but still is 0x42 (default value).

 

The major difference is occurring, when we executed "SpiritCmdStrobeLockTx()" command, whose path in "SPIRIT Library" is provided below:

SpiritRadioInit() => SpiritRadioSetFrequencyBase() => SpiritManagementWaVcoCalibration() => SpiritCmdStrobeLockTx()

 

After this command, several registers got changed in case of ""STEVAL-IKR002V3D"", whereas in our board, only few registers got changed. The differences are shown below in CSV format:

 

Register,STEVAL (Hex),Our Board (Hex),STEVAL (binary),STEVAL (binary)
2,2,a2,10,10100010
3,aa,a2,10101010,10100010
4,aa,a2,10101010,10100010
7,2a,a3,101010,10100011
8,0a,0c,1010,1100
9,d4,84,11010100,10000100
A,55,ec,1010101,11101100
B,94,51,10010100,1010001
C,0a,fc,1010,11111100
D,aa,a3,10101010,10100011
10,2,3,10,11
11,0a,0e,1010,1110
12,14,1a,10100,11010
13,2a,25,101010,100101
14,2a,35,101010,110101
15,54,40,1010100,1000000
16,55,4e,1010101,1001110
18,4,7,100,111
1A,94,83,10010100,10000011
1B,0a,1a,1010,11010
1C,55,45,1010101,1000101
1D,15,23,10101,100011
1E,d5,48,11010101,1001000
1F,15,18,10101,11000
20,2a,25,101010,100101
21,d4,e3,11010100,11100011
22,2a,24,101010,100100
23,54,58,1010100,1011000
24,2a,22,101010,100010
25,54,62,1010100,1100010
27,4,5,100,101
28,0a,0,1010,0
31,4,7,100,111
32,14,1e,10100,11110
33,2a,20,101010,100000
36,8a,88,10001010,10001000
37,8a,88,10001010,10001000
38,8a,88,10001010,10001000
39,8a,88,10001010,10001000
3B,2a,20,101010,100000
3C,2a,20,101010,100000
3E,2a,30,101010,110000
3F,2a,30,101010,110000
40,28,30,101000,110000
41,28,30,101000,110000
44,2,0,10,0
4D,0a,0,1010,0
4F,54,70,1010100,1110000
50,0,2,0,10
53,0,1,0,1
54,4,0,100,0
55,0,1,0,1
57,0,1,0,1
59,2,3,10,11
60,8,0,1000,0
64,d4,ff,11010100,11111111
6D,54,70,1010100,1110000
6E,54,48,1010100,1001000
6F,54,48,1010100,1001000
99,80,8,10000000,1000
9A,e3,f7,11100011,11110111
9E,db,5b,11011011,1011011
9F,a0,20,10100000,100000
A1,25,11,100101,10001
A3,35,37,110101,110111
B2,ca,42,11001010,1000010
BC,22,4,100010,100
C1,1f,7,11111,111
E5,40,0,1000000,0
FA,2,0,10,0
FB,6f,0d,1101111,1101

 

Could you please let us know what could be the problem that it is preventing our board entering into LOCK mode?

Thanks & Regards,

S. R. Zinka

 

============================================================

 

P.S. We think that the problem could be with SMPS power supply! Someone mentioned about a similar problem in another forum message, where the issue got resolved by providing external power to the SMPS IN pin. At least in their case, they were able to enter LOCKWON state, whereas we are unable to enter into that state too.

 

Please find the attached file, containing the values of all the registers before and after SpiritCmdStrobeLockTx() command.

Attachments

Outcomes