- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am sharing the I2C bus with the BCM20372S and 3 external devices. To communicate with those external devices I am using the i2cm_* functions. I set the clock to 100Khz using i2cm_setSpeed(I2CM_SPEED100KHZ);. Communication to those external devices is flawless.
When I use bleprofile_WriteNVRAM it sometimes works (returns the length of data written). When I use bleprofile_ReadNVRAM it never works (always returns 0 and does not change the payload).
I am able to remove my external devices from the I2C bus. When I do this both bleprofile_WriteNVRAM and bleprofile_ReadNVRAM work correctly.
This test leads me to believe that the bleprofile_WriteNVRAM and bleprofile_ReadNVRAM are using a faster clock. Is there a setting somewhere to change this?
I am surprised this isn't screwing up other BCM20732S EEPROM operations (programming, power up, resets). How is NVRAM Read/Write different than those operations?
Thanks.
Solved! Go to Solution.
- Labels:
-
I2C
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello jpwere,
So you were able to communicate with all 3 I2C devices on the bus?
Sorry that I assumed that you had 4 I2C devices on the bus and this may have been excessive loading.
Good to you hear you got it to work.
Thanks.
JT