Cannot program BCM20737S, I2C problem

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

cross mob
KoM_2154881
Level 3
Level 3
First like received First like given

I tried to use the I2C bus to communicate with an external device (accelerometer). I followed the i2c temperature sensor example and tried to write to a register.

After that I can't program the bluetooth anymore. My problem is exactly the same as in Re: cannot recover or program BCM20732S B1 After that error happened, I am getting an error stating "BluetoolDownloadMinidriver failed!".

Then I followed the instructions in Re: Downloading problems with BCM20736S but I am getting an error stating "Failed to execute HCI Reset".

I noticed that someone in the first post that had the exact same problem as me said that he had a problem with the I2C bus, although he didn't give any more details.

Do you have any ideas on what is happening here? I am sure that it has something to do with the i2c bus but so far nothing I tried really worked.

Thank you in advance.

0 Likes
1 Solution

Hi kmichalopoulos​,

Given that your sensor is a bus slave, it shouldn't be occupying the bus and preventing 20737 from booting. *unless you, as the master, started some large data transfer from the sensor then immediately tried to reboot only the 20737--that could cause problems. 

Can you elaborate on how you separated the power supplies? Would the sensor and the 20737 chip still exist on the same voltage bus, just with a switch in the middle? Or are they truly separate voltage buses? And with this separation, where did you pull the i2c lines up to? The sensor's bus or the 20737?

If you tried to put them on entirely different buses this could certainly introduce problems if there is a voltage difference between the two buses. The only way I know to isolate voltage levels on an i2c bus is via i2c expander or level shifter. Without either of these, master, slave, and pull ups should all be on a common bus.

For an example implementation of an i2c expander, see the WICED Sense schematic (U4 on page 1): WICED Sense Reference Design Schematic (PDF)

If you want to send your schematic, I can take a look at it and see if anything sticks out to me.

Jacob

View solution in original post

10 Replies