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.

Need help: Problem when using CC2541 with TPS62730 in Powersaving Mode

Other Parts Discussed in Thread: TPS62730, CC2541, CC-DEBUGGER

I tried the SimpleBLEPeripheral example program in TI BLE1.4.0 stack. I change the P0_7 to P1_5 because I use P1_5 in my board.

1. With POWER_SAVING disable and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); enable

    The VCC is keeping 2.1V. The device can be connected and access normally.

2. With POWER_SAVING enable and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); disable

    The VCC is keeping 3.3V. The device can be connected and access normally.

3. With POWER_SAVING and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); both enable

    The lightblue shows "The periperal disconnected while being interrogated" when try to connect.

    The waveform of VCC in 3 is shown in the following photo, which I think is allright.

    I think it's not a hardware problem, because of the results in 1 and 2. And now I'm using the SimpleBLEPeripheral example program, there should be no problem in software.

    I'm confused in this problem. Is there anybody who has succeeded with POWER_SAVING and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); both enable?

    Please help!

Frank

  • Hi Frank,

    Did you define DC_DC_P0_7 in your project?
    Can you elaborate how the P1_5 is connected to the TPS62730?
    And please make sure that P1_5 is not accessed at all anywhere else.

    - Cetri
  • Hi Cetri,

          Thank you very much for reply!

          1. Did you define DC_DC_P0_7 in your project?     Yes. In fact, I remove the "#ifdef DC_DC_P0_7".

        

          2. Can you elaborate how the P1_5 is connected to the TPS62730?

         The connect is allright, because:

    1. With POWER_SAVING disable and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); enable

        The VCC is keeping 2.1V. The device can be connected and access normally.

    2. With POWER_SAVING enable and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); disable

        The VCC is keeping 3.3V. The device can be connected and access normally.

         

                  
         3.And please make sure that P1_5 is not accessed at all anywhere else.

         I use SimpleBLEPeripheral example program, and I've searched the whole project, P1_5 is not accessed anywhere else.

         Is there anybody who has succeeded with POWER_SAVING and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); both enable?

     

          Thank you very much!

    Frank

  • Hi Frank,

    POWER_SAVING and HCI_EXT_MapPmIoPortCmd() are used in Keyfob example and work well. The only difference from yours is the port number.

    Can you please check if your hardware well follows the reference design found at http://www.ti.com/lit/df/tidr191/tidr191.pdf especially regarding TPS62730 part?

    - Cetri

  • Hi Cetri,

    I will check the hardware.
    Thank you.
    BR,
    Frank
  • Hi Cetri,

          I did some more experiments, and it seems the problem has a relationship with the hardware.

         4. With POWER_SAVING enable and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); disable

             And force P1_5=1; before osal_start_system();

             The Vout of TPS62730 should be stable 2.1V. But I get the following waveform.

          The Vin of TPS62730 is 3V, which is connect to a TEK power supply.

          The time interval is 1s, which is the ADVERTISING_INTERVAL.

          As can be seen in the figure, the Vout of TPS62730 rise to 2.35V when CC2541 goes to PM2 mode. That is quite strange.

         5. With POWER_SAVING disable and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); disable

             And force P1_5=1; before osal_start_system();

             The Vout of TPS62730 is stable 2.1V. 

          6. In the case of 4, if I connect Vout of TPS62730 to the PIN2 of CC-debugger(PIN2 is connected to 74AVC245 VCCB pin). The waveform is 2.1V stable.

          7. In the case of 4, if I delete this line "ADCCFG |= HAL_ADC_CHANNEL_5;" in my program, which is executed before  P1_5=1. The waveform is 2.1V stable.

          I think in 5,6,7 shows that, the problem may have some relationship with Iout of TPS62730 on my board. It seems when the Iout is too small, the Vout rises to 2.35V. So I tried the 8 experiment.

          8. I disconnect the Vout of TPS62730 to the power net on my board, so that Iout is nearly 0. (P1_5 is still forced to 1) I suppose to see the Vout be unstable. But the result is: 2.1V Vout is stable.

          9. I tried 3 boards, they have the same phenomenon.

          I think there must be somethin wrong with my hardware. I've checked the schematic, I think the part of TPS62730 is the same as the KeyFob.

         And I've checked the value of caps and inductances, they are all right.


          According to the waveform in 4, do you have any ideas on the cause of the problem?

          Wish for your help.

          Sorry for update so later, I took a long travel last weeks.

          Yours sincerely,

    Frank

  • Thank you for Fredrik K.

             With his advice, the problem in 4-9 is solved. But the problem in 1-3 still exists.

             I used to think those phenomenons is a single problem. Now, it seems 2 problems.

             For 4-9,

             I followed Fredrik K's advice and tried 1Meg resistor as the load of TPS62730, the regulator output is 2.1V stable. Then I measured the Iout of TPS62730, the Iout is 10.9uA. But I remember that when I use 3.3V to power CC2541 directly, it's 0.95uA.

            Finally, I found that when the R10 is removed, the 2.35V problem is solved. I made a mistake. I used to want to monitor the battery voltage(VIN) through P07, so I connect VIN with R10 to P07. But TPS62730 output 2.1V, so VIN is higher than VCC, which cause the problem.

            Although the 2.35V problem is solved. The original problem in 3 still exist. 

    3. With POWER_SAVING and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); both enable

        The connection is unstable, sometimes the connection can not be estlibalished, sometimes the connection keeps for several seconds.

        I used to think 3 maybe caused by the 2.35V problem. But now the 2.35Vproblem is solved, the phenomon still exists.

        The BLE connection is unstable

        While,

    1. With POWER_SAVING disable and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); enable

        The VCC is keeping 2.1V. The device can be connected and connection is stable.

    2. With POWER_SAVING enable and HCI_EXT_MapPmIoPortCmd( HCI_EXT_PM_IO_PORT_P1, HCI_EXT_PM_IO_PORT_PIN5 ); disable

        The VCC is keeping 3.3V. The device can be connected and connection is stable.

     

         Guys, please help!

    Frank

  • I did further experiments and started a new post, so that the problem can be described clearly.
    e2e.ti.com/.../448961