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.

Sniff mode currents with DC2DC TPS62730

Other Parts Discussed in Thread: CC1120, TPS62730, CC1200

Hello,

We have a design with two hardware revisions both battery oprerated, the first design is able to recive a packet in sniff mode while the second is unable to...

the first - has CC1120+MSP430 without TPS62730 and with small capacitors (~36 pF) and using FR4 135 PCB

the second  - has CC1120+MSP430 with TPS62730(in bypass mode) and with bigger capacitors (~400 pF) and using FR4 170 PCB

the battery we are using are two units of AA.

Any idea's why is the second design unable to recive packet in sniff mode?  (every things else seems to be working, regular RX is also working)

Regards,

Yaniv

  • I would just assume that your power supply is not stable enough for second case. Try to check supply voltage by oscilloscope. Maybe sniff mode period tuning will change behavior.

  • Are both units working as expected when using Rx?

    Do you get the expected RSSI if you have the unit in cont. Rx?
  • Hi,

    Following this probelm we saw with the sniff we have made a lot of tests, and everything we tested(current, sleep, TX, RX) is working beside sniff , we have also made a DC2DC bypass and bypassed the capacitors. so the hardware of both device is quite identical... beside the CC1120 version, which is diffrenct!

    The CC1120 version is not the same with the device that has the working sniff and the device which isn't working with sniff.

    The sniff is working with CC1120 revision 3C1, A9ST G4

    The sniff is is not working with CC1120 revision  TI 4.11,  C3J4 G4

    (I'm guessing these are two different revisions of IC with different ROM maybe Phy...)
    So I currently suspect the CC1120 hardware version. Could you approve or verify that the SNIFF (RX) gets an interrupted sent to the host when using CC1120 version TI 4.11 ( C3J4 G4)?
    I will describe exactly what I am seeing:
    1. Use the TI 4.11 ( C3J4 G4) hardware
    2. IAR default sniff RX example from swrc253
    3. When a packet is received I see a small spike in the current consumption of the sniff RX but the interrupt is not received by the host.

    Regards,

    Yaniv

  • It's possible to read out which chip version you have by reading the PARTVERSION register. The lot code is 7 characters, please verify the lot number on the failing part.

    - Are you able to measure current consumption vs time and compare between a working system and a failing system?
    - I assume you use the terminate on CS example?
    - Show a plot with GPIO2, XOSC_DCPL, and a pin showing when you send something for a working and failing unit.
  • Hello TER,

    PARTVERSION register in the failing IC is: 0x23 see attached capture of the failing part.

    How do we read the lot number? does this help? it a picture of the failing IC.

    - Are you able to measure current consumption vs time and compare between a working system and a failing system? <Yaniv>We need to place the setup and get back you on this...
    - I assume you use the terminate on CS example? <Yaniv> Yes I assume, we use the exact same code you have in your sample code( we made no changes)
    - Show a plot with GPIO2, XOSC_DCPL, and a pin showing when you send something for a working and failing unit.  <Yaniv> We are unable to connect to these pins, since we have no test points for it.

    Do you have a CC1120 with same version you can verify it?

    Regards,

    Yaniv

  • We don't have any EMs with version 2.3 in the lap so I will not be able to test with this version.

    Have you only tested one board? Which version is the chip on the board that works? I tried to trace the lot code but was not able to find it. If you could take a picture of this too it will help.

    Note that the sniff mode example contains different views, both Rx and Tx, PQT and CS, you need to know which one you use.

    Have you checked what the frequency offset is on the board that fails?
  • We have manufatured over 100 devices with 2.3 version and they are all not working with sniff.

    With the previos batch we manufactured all devices are working with sniff (about 30 devices) they had an older version of the chip  is 0x21 (PART VERSION).

    I don't understand why are you asking me about  the sniff mode examples, if the old version 2.1 is running the code why should this be any diffrent with the new version 2.3?

    We have made tests for frequency of RX/TX of the board and it was fine. Could the frequency offset change in such a way that TX/RX works well but SNIFF doesn't work at all ever?

    Could you please verify with the testing or RF groups  if any one has ever tested SNIFF in the 2.3 version? They should have an EM 2.3 version as well.

    The project tested is:

    1. Open IAR

    2. open the project folder:

    projFolder\ide\iar\cc1120_rx_sniff_mode\cc1120_rx_sniff_mode.eww

    3. select Tx (Config 2 and 3) as in the picture:

    4. Open a new IAR from the same sub folder (in another folder - not the same as before)

    5. select Rx (Config 2) as in the picture:

    6. The interrupts configuration for CC1120 GPIO are:

       {CC112X_IOCFG3,         0xB0},

       {CC112X_IOCFG2,         0x13},

       {CC112X_IOCFG1,         0xB0},

       {CC112X_IOCFG0,         0x06},

  • I have ordered a few 2.3 based EMs and I will do some tests when I get them. I suspect that it's something with the calibration but need to confirm by testing.
  • Dear TER,

    Could you kindly advise what is the status with this issue? This is getting very urgent for us.
    We will need to manufacure more units with the old version 2.1 if we don't solve this soon.

    Regards,
    Yaniv
  • Sorry for the lack of feedback. I have checked some around and it turns out that I will not be able to get hold of 2.3 samples short term (the chips in the pipeline goes to customers)

    For the sniff mode code example: The manual calibration errata is only valid for version 2.1 but should also work for 2.3. Have you tried to change the settings to use auto cal?
  • Hi TER,

    Good news, when I run the auto cal periodically, after every received packet, I manage to recive some packets, due it's with high PER (about 30-50%).

    Bellow is the auto-cal function.

    For version 2.3 what do you recommend that should be changed? What do you suggest exactly?
    1. Do we need to remove the auto-cal?
    2. Maybe run auto-cal periodically?
    3. How about the manual calibration, do we need to run it only once at boot?
    4. which changes do you propose to do in the auto-cal function?

    static void calibrateRCOsc(void) {

    uint8_t temp;

    // Read current register value
    cc112xSpiReadReg(CC112X_WOR_CFG0, &temp,1);

    // Mask register bit fields and write new values
    temp = (temp & 0xF9) | (0x02 << 1);

    // Write new register value
    cc112xSpiWriteReg(CC112X_WOR_CFG0, &temp,1);

    // Strobe IDLE to calibrate the RCOSC
    trxSpiCmdStrobe(CC112X_SIDLE);

    // Disable RC calibration
    temp = (temp & 0xF9) | (0x00 << 1);
    cc112xSpiWriteReg(CC112X_WOR_CFG0, &temp, 1);
    }


    Thank you
    Yaniv
  • I would recommend doing the calibration as it's done in www.ti.com/.../swrc274. The CC1120 and CC1200 is very similar when used as in the example, just some different register settings mainly because the register addresses are slightly different.
  • I tested now with a EM with v2.3 of CC1120.

    I use an unmodified version of the Sniff mode code that is part of the software examples online and I have no problems setting up the v2.3 EM as Tx or Rx, I get successful transmission.