Deep sleep current draw issues with SWD pins and debugger

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

I have a custom board using a CYBLE-212019-00 PRoC module connected to a couple of sensors using SPI and transmitting over BLE. The board is connected through a custom cable to the CY8CKIT-042-BLE for programming and debugging (pins 0.6 and 0.7 for SWD, Xres, 3.3V, and ground are connected.) The hardware all works for programming and debugging; next step was to try deep sleep mode.

After some work, and using code similar to AN92584 on BLE, I can get it to go to deep sleep while connected to the debugger. BLE works. Average current with SPI and ADC shut down is about 1.8 mA in debug mode. Allowing for about 1.5 mA for debugger (from other sources) this says I am drawing a few hundred uA, which is okay for now.

Problem is, when I try to disconnect the debugger (set the serial wire debugger pins to GPIO), instead of the current dropping, it increases and fluctuates in the 6 to 10 mA range.

I have tried programming in Release mode, and powering my board completely separately with just 3.3V to the board. Still same fluctuating high current.

Do Xres or the SWD pins need to be pulled to a certain level?

I am using PSoC Creator 4.1 Update 1.

Thanks for any suggestions.

Randy

0 Likes
1 Solution
RyanZhao
Moderator
Moderator
Moderator
250 sign-ins First question asked 750 replies posted

Hi Randy,

How about your deep sleep test?

If the issue is still exists, just leave CySysPmDeepSleep() in main() to double-check if this issue is caused by hardware or firmware.

Thanks,

Ryan

View solution in original post

0 Likes
4 Replies
RyanZhao
Moderator
Moderator
Moderator
250 sign-ins First question asked 750 replies posted

Hi Randy,

Do you mean you have set the serial debugger pins to GPIO in .cydwr?

Did the SWD cable disconnected too?

Thanks,

Ryan

0 Likes
Anonymous
Not applicable

Hi Ryan,

Yes, in .cydwr > system tab > programming/debugging > debug select is set to GPIO.

And have tried with SWD cable disconnected, so SWD pins and XRES are floating, and only 3.3V and ground are connected...

0 Likes
RyanZhao
Moderator
Moderator
Moderator
250 sign-ins First question asked 750 replies posted

Hi Randy,

So in this case, I guess the extra power consumption may not be caused by XRES and SWD.

Thanks,

Ryan

0 Likes
RyanZhao
Moderator
Moderator
Moderator
250 sign-ins First question asked 750 replies posted

Hi Randy,

How about your deep sleep test?

If the issue is still exists, just leave CySysPmDeepSleep() in main() to double-check if this issue is caused by hardware or firmware.

Thanks,

Ryan

0 Likes