cancel
Showing results for 
Search instead for 
Did you mean: 

ModusToolbox Bluetooth SDK

New Contributor II

I have a problem with the low power mode in the evaluation kit of CYW920819EVB-02.

I have designed a program to send data from the accelerometer and temperature sensor.

When it enters low power mode, it only sends data from the temperature sensor, while the motion sensor does not send any data.

What could be the problem?

thank you so much

kind regards

0 Likes
Reply
1 Solution
Moderator
Moderator

Hi,

Could you please try adding wiced_platform_init() in low_power_post_sleep_cb() shown as below. wiced_platform_init() will initialize all the required pins and configure their functionality.

void low_power_post_sleep_cb(wiced_bool_t restore_configuration)

{

    if(restore_configuration)

    {

        wiced_platform_init();

        wiced_hal_i2c_init();

        wiced_hal_i2c_set_speed(I2CM_SPEED_400KHZ);

        wiced_hal_i2c_select_pads(28,29);

}

Thanks,

-Dheeraj

View solution in original post

4 Replies
Moderator
Moderator

Hi,

Could you please provide us more details about your program?

Please let us know if you have taken any reference app from the BTSDK for building your program/logic? 

The interfaces used?

"When it enters low power mode, it only sends data from the temperature sensor, while the motion sensor does not send any data."

The logic to enter the low power mode? And which mode you have selected?

Thanks,

-Dheeraj

0 Likes
Reply
New Contributor II

Hello, the program is based on sending temperature data from the NTC and position data from the LSM9ds1 accelerometer. To set the low power mode I have used the example program "HAL-20819EVB02_1.low_power".

The program goes into EDPS mode, the problem is that when it enters this mode the I2C is disconnected and I have not been able to reconfigure it when it wakes up to send the accelerometer data.

How can I restart the accelerometer once I wake up the microcontroller?

void low_power_post_sleep_cb(wiced_bool_t restore_configuration)

{

    if(restore_configuration)

    {

    wiced_hal_i2c_init();

    wiced_hal_i2c_set_speed(I2CM_SPEED_400KHZ);

    wiced_hal_i2c_select_pads(28,29);

}

this is the function I used and it can't be restarted.

0 Likes
Reply
Moderator
Moderator

Hi,

Could you please try adding wiced_platform_init() in low_power_post_sleep_cb() shown as below. wiced_platform_init() will initialize all the required pins and configure their functionality.

void low_power_post_sleep_cb(wiced_bool_t restore_configuration)

{

    if(restore_configuration)

    {

        wiced_platform_init();

        wiced_hal_i2c_init();

        wiced_hal_i2c_set_speed(I2CM_SPEED_400KHZ);

        wiced_hal_i2c_select_pads(28,29);

}

Thanks,

-Dheeraj

View solution in original post

New Contributor II

Thank you very much, with this function my problem has been solved.

0 Likes
Reply