cancel
Showing results for 
Search instead for 
Did you mean: 

WICED Smart Bluetooth

legic_1490776
Contributor II

I was pointed to this post from a discussion of long boot times: Wake up time from sleep/deep sleep

You mention in the post that the boot time can be improved by changing the I2C speed from 400 khz to 1MHz, and this would cut down the time a lot.

Two questions:

1. How do you make this change?  Is this a matter of changing a value in a CGS file?

For SDK 2.2.1 I see there is a speed setting in the BCM920736 platform directory, but not in the _TAG directory, which is the one I am using.  Note that I have a custom board based on the 20736S -- which platform directory should I be using?

2. What is the maximum speed allowed for the EEPROM in the 20736S?

Thanks for your help!

0 Likes
Reply
1 Solution
ShawnA_01
Employee

Yes - the EEPROM on the SIP/module can run up to 1MHz.

View solution in original post

7 Replies
MichaelF_56
Moderator
Moderator

I think you change this in i2cm.h using i2cm_setSpeed()

There is some good info on setting this up buried here in this thread: I2C Discussion

0 Likes
Reply
legic_1490776
Contributor II

Thanks.. I will look at that thread.

But, I would imagine that can't be used to change the speed used during boot itself?

I could only call that function after I was already running my app.

0 Likes
Reply
MichaelF_56
Moderator
Moderator

We will need to talk to the developers when everyone returns from the holiday weekend.

0 Likes
Reply
legic_1490776
Contributor II

So I think I got it to work by adding

ENTRY "I2C Speed"

{

    "Speed" = "1000 KHz"

}

to both the 'mandatory.cgs' and the platform cgs files.

now it is blazing fast.. hope it's not too fast?  Can the 20736S handle 1MHz?

It seems to work though.

I think what may have been the issue is that in the transition from 2.1 to 2.2, the entry got dropped from the platform CGS file, and it fell back on the default speed of 100 khz which is a lot slower.

So i think it's addressed, but i wonder if I could get confirmation that 20736S should be OK with 1Mhz speed?

0 Likes
Reply
MichaelF_56
Moderator
Moderator

According to WICED™ Smart Hardware Interfaces, the I2C interface on the part supports both low-speed and fast-mode slave devices, up to a maximum SCL speed of 4000 kbps (if the slave is capable of clock cycle stretching, the maximum SCL speed is limited to 2400 kbps).

The user here seemed to run into issues when trying to run the I2C bus at faster speeds (caused another device on the bus to lock up): i2c clock frequency


cdarling kwilloughby

0 Likes
Reply
legic_1490776
Contributor II

OK, the question then is whether the integrated eeprom in the module is OK with this speed.

i don't have any other devices on the i2c bus.

ShawnA_01
Employee

Yes - the EEPROM on the SIP/module can run up to 1MHz.

View solution in original post