cancel
Showing results for 
Search instead for 
Did you mean: 

SPIRIT1 AGC

lz1im
Associate II
Posted on July 27, 2015 at 14:17

Hello again!

See in st.com a new version of datasheet /June.2015/. Wonderfull, but I must read that file and previous version/s/ file to discover where and how mani differences are in Last version.

Anyway, I have three questions about deep understanding of SPIRIT1:

1. In p.48 of datasheet, we read about High and Low threshold of AGC /Values 0...15/. I understand, that AGC algorythm start /if Enabled/ at Level -50 dBm. But, if I set High Threshold of AGC equal to, suppose 9, what that means? 9 is dBm, so -50+9=-41dBm?, or 9 is same as the RSSI Level, where 1LSB is equal to 0.5 dBm, so -50+(9*0.5)=-45.5 dBm, or something other, I don't know. Same question is about Low threshold.

2. In p.79, Table37, I/O Selection 29 and 20 we read ''VDD (or GND) , to EMULATE an additional GPIO of the MCU, programmable by SPI. I cannot understand, is there a way, (which I cannot understand), to made an additional GPIO of SPIRIT1, /by help of MCU/, and if it is true, what is hardware /and algorythm/, to realise that?

3. In ''https://github.com/errordeveloper/mist/blob/master/platform/mist-spirit1/dev/spirit1/'' there are a File ''SPIRIT_Regs.h'', at the end of which we read:

(C) COPYRIGHT 2012 STMicroelectronics, and in that File we read an another command

IQC_INIT_LOAD

(0x6E)!

Is it true?, and if is, what make that Command, and why is not explained in Datasheet?

Sincerely:

P. Pavlov
1 REPLY 1
Nickname4815_O
Associate II
Posted on July 29, 2015 at 15:08

Hello,

1. The AGC formulas for those registers are the following

High threshold (dBm)  = -50 + 20*log10(AGC_THRESHOLD_HIGH/6)

Low threshold (dBm ) =  -56 + 20*log10(AGC_THRESHOLD_LOW /6)

Anyway we suggest to keep the default value for these thresholds. 

2. The expression ''VDD (or GND) , to EMULATE an additional GPIO of the MCU, programmable by SPI.'' simply means that the SPIRIT GPIOs can also be set to VDD or GND with SPI transactions by the uC. 

It is exactly as You can do with a uC when You want to force an output level from GPIO (but with uC you won't use SPI commands).

3. Please refer to the official library package from st.com . Maybe that the libraries You are pointing to have been modified or belong to a previous delivery of libraries where other testing/engineering command codes have been added.

Regards,

F.