We have a device currently in Production that uses the CC430F5137 at 418 MHz. During production testing, one of the tests that we perform has the device transmit and we measure the RF frequency and power using a spectrum analyzer. Approximately 20% of the devices are failing the frequency test; they are transmitting about 1 MHz too high (around 419 MHz).
So far, the only way that we've found to fix these devices was to swap out the CC430 chip. The RF registry settings we are using are below:
RF_SETTINGS rfSettingsOOK = { /* antenna test rf settings */ 0x08, // FSCTRL1 Frequency synthesizer control. 0x00, // FSCTRL0 Frequency synthesizer control. 0x10, // FREQ2 Frequency control word, high byte. 0x00, // FREQ1 Frequency control word, middle byte. 0x00, // FREQ0 Frequency control word, low byte. 0xCA, // MDMCFG4 Modem configuration. 0x83, // MDMCFG3 Modem configuration. // 0x90, // MDMCFG2 Modem configuration. 0x30, // MDMCFG2 Modem configuration. ASK/OOK modulation // 0x22, // MDMCFG1 Modem configuration. 0x00, // MDMCFG1 Modem configuration. (channel spacing) 0x00, // MDMCFG0 Modem configuration. (channel spacing) 0x4F, // CHANNR Channel number. (0x4F = 79 = 418MHz at 25kHz spacing) 0x34, // DEVIATN Modem deviation setting (when FSK modulation is enabled). 0x56, // FREND1 Front end RX configuration. 0x11, // FREND0 Front end TX configuration. // 0x18, // MCSM0 Main Radio Control State Machine configuration. original 0x10, // MCSM0 Main Radio Control State Machine configuration. bit3 is RO 0x16, // FOCCFG Frequency Offset Compensation Configuration. 0x6C, // BSCFG Bit synchronization Configuration. 0x43, // AGCCTRL2 AGC control. 0x40, // AGCCTRL1 AGC control. 0x91, // AGCCTRL0 AGC control. 0xE9, // FSCAL3 Frequency synthesizer calibration. 0x2A, // FSCAL2 Frequency synthesizer calibration. 0x00, // FSCAL1 Frequency synthesizer calibration. 0x1F, // FSCAL0 Frequency synthesizer calibration. 0x59, // FSTEST Frequency synthesizer calibration. 0x81, // TEST2 Various test settings. 0x35, // TEST1 Various test settings. 0x09, // TEST0 Various test settings. 0x47, // FIFOTHR RXFIFO and TXFIFO thresholds. 0x0B, // IOCFG2 GDO2 output pin configuration. // 0x2E, // IOCFG2 GDO2 output pin configuration. 0x2E, // IOCFG0D GDO0 output pin configuration. 0x04, // PKTCTRL1 Packet automation control. 0x32, // PKTCTRL0 Packet automation control. 0x00, // ADDR Device address. 0x2D, // SYNC1 sync word high byte 0xD4, // SYNC0 sync word low byte 0xFF // PKTLEN Packet length. };
We are using an Abracon ABM8-26.000MHZ-10-1-U-T (10pF) for the crystal with 2 27 pF capacitors to ground.
What could be causing this frequency shift? Is there anything here that looks problematic? Any thoughts on why this works with certain chips, but not with others?
Thanks,
ABM8-26.000MHZ-10-1-U-T |