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.

CC2538: RF calibration procedure

Part Number: CC2538

Hello,

I have developed a board integrating the CC2538 with an integrated SMD antenna.
The problem that I have is that in order to communicate properly between devices I have to initialize some registers like FSCAL0/1/2/3 with specific values different from the default values. If I use these values with another board it didn't communicate properly so I have to change the values again.
It seems like I have to perform a calibration in every single board to get a proper RF communication. Is that normal ? Is their a kind of procedure to follow in order to solve this behavior ? Am I doing something wrong ?

Thanks in advance

  • Hello alain,

    I will notify an expert from the Hardware Team regarding your inquiries, expect a response soon.

    Regards,
    Ryan
  • Alain,

    No, that is not normal. Per the userguide on page 660, it states that this calibration is automatic.

    "The FSM submodule controls the RF transceiver state, the transmitter and receiver FIFOs (TX FIFO and
    RX FIFO, respectively), and most of the dynamically controlled analog signals, such as power up and
    power down of analog modules. The FSM provides the correct sequencing of events (such as performing
    an FS calibration before enabling the receiver or transmitter). Also, it provides step-by-step processing of
    incoming frames from the demodulator: reading the frame length, counting the number of bytes received,
    checking the FCS, and finally, optionally handling automatic transmission of ACK frames after successful
    frame reception. It performs similar tasks in TX, including performing an optional CCA before transmission
    and automatically going to RX after the end of transmission to receive an ACK frame. Finally, the FSM
    controls the transfer of data between the modulator or demodulator and the TX FIFO or RX FIFO in RAM."

    My question is, are you not using the ZigBee stack on this product or are you doing something proprietary?
    If you are using the ZigBee stack it is already taken care of for you.

    Regards,
    /TA
  • Hello Ryan,

    First, we are not using the ZigBee stack but doing something proprietary.

    Second, when we are using SmartRF Studio 7 we see the following behavior:
    If I configure the RF parameters and select Packet RX tab, then after pressing start button the first packet received is OK, but not following packets (some with CRC errors and some OK). So, in that situation, if I press stop button then start button the first packet received is OK. If I repeat this operation (press stop then start) always first packet received is OK, then I guess there is some specific command executed only when start button is pressed, could you tell me the sequence of commands executed when start button is pressed ?

    Best regards,
    Alain Carton

  • Alain,

    No, we cannot provide the code or details of how SmartRF Studio operates. However we can provide source code examples showing back to back packets transmit / receive using C code. Here is a direct link.

    www.ti.com/.../getliterature.tsp

    Regards,
    /TA