I2C seems not working after waking up from DeelSleep mode

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

cross mob
okischuang
Level 1
Level 1
First question asked Welcome!

Device - CYBLE-416045-02

We are developing a BLE solution by using module CYBLE-416045-02 with several security features implemented by a external Trust-M through I2C communication. Besides, we use syspm to achieve power saving by making core m0+ and m4 go to deepsleep. 

Unfortunately, we now bumping into a issue that i2c seems not working after m4 back to active. From LA displaying, we saw vcc and rst pins not pulled-high.

Anyone knows that any case can prevent I2C working in case of low power management?

Main flow

1. m0+ start itself and start BLE and m4 core.

2. m0+ going to deepsleep and process BLE events

3. m4 setup initialization (SAR, TCPWM, EEPROM, Trust-M & I2C, BLE)

4. ( main infinite loop ) m4 calls syspm to transit to deepSleep mode

5. ( main infinite loop )  m4 calls BLE process events

 

Hope anyone can help with some ideas or clues! Thanks!!

0 Likes
1 Reply
Ekta_N
Moderator
Moderator
Moderator
750 replies posted First like given 250 solutions authored

Hello @okischuang ,

Could you please attach your project, if possible with only the I2C and low power mode part? We can have a look at the project and get back to you on what might be going wrong.

Also, you can refer to the PSoC 6 MCU Low-Power Modes and Power Reduction Techniques Appnote and the CE219881 - PSoC 6 MCU: Switching Between Power Modes code example which mentions the proper way to transition between low power mode and Active mode.

Best Regards

Ekta

0 Likes