LP-CC1352P7: CC1352P7: 4-GFSK Reception Degradation After few Minutes

Part Number: LP-CC1352P7
Other Parts Discussed in Thread: CC1352P7

Tool/software:

Device: CC1352P7 (LP_CC1352P7_1)
SDK: SimpleLink CC13xx/CC26xx SDK 8.30.01.01
IDE: Code Composer Studio

Configuration:

  • Modulation: 4-GFSK (formatConf.fecMode = 0x09)
  • Symbol Rate: 500 kbaud (1 Mbps data rate, 2 bits/symbol)
  • Deviation: 125 kHz (modulation index h = 0.5)
  • Carrier Frequency: 865.5 MHz

RF_cmdPropRadioDivSetup.formatConf.fecMode = 0x09;
RF_cmdPropRadioDivSetup.modulation.deviation = 500;  // 125kHz / 250Hz
   

Issue:
Implementing point-to-point communication where Device A transmits and Device B responds using chained RF commands (RX→TX). Communication is stable for few minutes, then the receiving device progressively misses packets.

What I've Verified:

  • Timing alignment confirmed via GPIO measurements - RX window opens before TX
  • Same implementation works reliably with 2-GFSK configuration
  • Tested with RX Filter BW: 1092.5 kHz and 1883.7 kHz - both exhibit same degradation

Sync Word Behavior:

  • 0x5A5A5A5A - No reception at all
  • 0xF498E83A - Initial success, then intermittent packet loss after 2-5 minutes

Questions:

  1. Sync Word Requirements: Are there specific autocorrelation or pattern requirements for 4-GFSK sync words? Why would 0x5A5A5A5A fail completely while 0xF498E83A works initially?
  2. Frequency Synthesizer: Does 4-GFSK require longer FS settling time compared to 2-GFSK? Could repeated frequency adjustments cause instability over time?
  3. Time-Based Degradation: What could cause 4-GFSK reception to degrade over minutes while 2-GFSK remains stable?

Any guidance on proper 4-GFSK configuration for reliable long-duration bidirectional links would be appreciated.




D0: Master TX 
D1: Master RX
D2: Slave TX
D3: Slave RX


  • Hi Sharan,

    Sync Word Requirements: Are there specific autocorrelation or pattern requirements for 4-GFSK sync words? Why would 0x5A5A5A5A fail completely while 0xF498E83A works initially?

    The sync word 0x5A5A5A5A has poor correlation, therefore, it's not surprising that you don't have reception.

    the sync word 0xF498E83A shows much better correlation.

    Is this the same sync word you are using in you 2-FSK implementation?

    Frequency Synthesizer: Does 4-GFSK require longer FS settling time compared to 2-GFSK? Could repeated frequency adjustments cause instability over time?

    There is no difference between the frequency synthesizer settling time when using 4-GFSK vs 2-GFSK.

    Could you share the complete radio setup command?

    is 125 kHz the inner or outer deviation you want to use?

  • Hi Diego,

    Thanks for your reply.

    After tweaking a few parameters, I found that adjusting the gain resolved the reception issue. I changed the AGC reference level from 0x1A to 0x2E. The following couple of lines were added after RF_open to enable 4-GFSK and adjust the AGC.

    RF_cmdPropRadioDivSetup.formatConf.fecMode = 0x09;
    
    
    extern uint32_t pOverrides[];
    
    pOverrides[1] = ((uint32_t)0x609C << 16) | 0x002E;


    //SysCfg Settings
    
    //symbolRate = 500.000; // 500 kbaud
    
    //deviation = 125.0; // 125 kHz
    
    //rxFilterBw = "1092.5"; // 1092.5 kHz
    
    //Modulation index: h = 125 kHz / (500 kHz / 2) = 0.5


    Auto-generated code in ti_radio_config.c


    Now my question is: how can I calculate the optimal AGC reference level for 4-GFSK on the CC1352P7 with custom PHY settings for both 868 MHz and 915 MHz?

    Thanks,
    Sharan

  • Hi Sharan,

    For optimising PHY settings please refer to SWRA682 (Finding Settings for new PHYs for the CC13x0 and CC13x2 Family): https://www.ti.com/lit/swra682

    We'd recommend SmartRF Studio 7: https://www.ti.com/tool/SMARTRFTM-STUDIO for optimising these settings (to isolate just the radio settings) and then exporting them to CCS.

    Regards,

    Zack