This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC1101 2-FSK Channel Spacing and Center Frequency Programming

Other Parts Discussed in Thread: CC1101

Hi,

I want to program the CC1101 to communicate (both Rx and Tx) in the 433MHz ISM band using 2-FSK.  I'm looking at the datasheet (don't have the eval board) and am trying to understand the range and resolution available for setting the center frequency (with channels) and 2-FSK deviation frequency.

Here is what I found on their datasheet for programming channel bandwidth  (datasheet pages 57 and 78):

delta_fchannel = (fXOSC/2^18)*(256+CHANSPC_M)*(2^CHANSPC_E).

The datasheet says the default value gives 199.951kHz channel spacing assuming a 26MHz crystal oscillator frequency, but I don't understand how that's computed?  What are the 'default values'?  Does it have something to do with CHANSPC_M is an 8-bit mantissa of channel spacing?

Very similarly, for 2-FSK frequency deviation I find a similar equation:

fdev = (fXOSC/2^17)*(8+DEVIATION_M)*(2^DEVIATION_E).

Here, it says the 'default values' give a +/-47.607kHz frequency deviation from the center frequency.  Again, not sure how this is computed but, again, the variables are in mantissa-exponent format.

Any help on this would be greatly appreciated!!!

  • The  default is the reset values for the registers (see the register description in the data sheet or SmartRF Studio). For the deviation the reset values are DEVIATION_M=7, DEVIATION_E=4

    fdev=26e6/2^17*(8+7)*2^4=47.6k

  • Delta_fchannel is only used if you have a channelized system and want to change between 2 or more frequencies. You will then set the carrier frequency to the lowest channel, use delta_fchannel to set the channel spacing and register CHANNR to define the next channel to be used. Assume carrier is set to 868 MHz, channel spacing = 200 kHz.

    CHANNR 0. Operation at 868.0 MHz

    CHANNR 1: Operation at 868.2 MHz 

    CHANNR 2: Operation at 868.4 MHz 

    Please note that delta_fchannel defines the channel spacing. The RX filter BW (the noise bandwidth) is something else and needs to be wide enough to fit the transmitted signal (including any frequency offset between Tx and Rx units). To compute delta_fchannel (channel spacing) I suggest you download SmartRF Studio 7. This tool will calculate the register settings based on your channel spacing entry (or you can enter the register values and the channel spacing will be calculated). Minimum channel spacing is approx 25 kHz. The resolution is (fXOSC/2^18)*(256+CHANSPC_M) -> approx 100 Hz

    Frequency deviation. Again, use SmartRF Studio.

    Example: +/-25.4 kHz deviation. DEVIATION_E = 4, DEVIATION_M = 0. fdev = (fXOSC/2^17)*(8+DEVIATION_M)*(2^DEVIATION_E) = (26e6/2^17)*(8+0)*2^4 = 25.4k