[SOLVED] CF won't start - EEPROM: I2C connection [FAIL].

Post here to get support
roeiz
Beginner
Posts: 14
Joined: Thu Dec 06, 2018 1:22 pm

[SOLVED] CF won't start - EEPROM: I2C connection [FAIL].

Post by roeiz »

Hi,
I have 2 CF2.0 bought about two years ago, which I've been working on their FW since then.
Both had been through a lot (countless FW flashings, countless crashes into obstacles) and recently I've been having troubles using them.
In the past month or two, whenever I've tried turning them on, there was about 50%-90% (changing gradually) that the CF2 will start with blinking red light and won't run the FW I've developed. When connecting to the CF through the Crazyflie client, I see in the console "EEPROM: I2C connection [FAIL]".
This week, it reached a point where it always get the above error and the CF is not usable.
I've tried flashing the original FW back, and I still see the same consequence.

Is there anything I can do to fix them or are they both dead? Did anyone encounter this issue before?
It worth mentioning that there was no significant event recently which after that the CF did not start, just a gradual process of dying.

Thanks in advance!
kimberly
Bitcraze
Posts: 1050
Joined: Fri Jul 06, 2018 11:13 am

Re: CF won't start - EEPROM: I2C connection [FAIL].

Post by kimberly »

Hi!

Have you tried resetting the eeprom? That is a memory element that is not reset together with the firmware.

The instructions can be found here: https://www.bitcraze.io/documentation/r ... nt/eeprom/
roeiz
Beginner
Posts: 14
Joined: Thu Dec 06, 2018 1:22 pm

Re: CF won't start - EEPROM: I2C connection [FAIL].

Post by roeiz »

Hi Kimberly,
I've tried your suggestion and I still see the I2C failure.
I guess it is worth mentioning that I am mounting a flow deck on the CF2, and now I see it is also failing its initialization.
I've found this topic (written by you actually) which seems pretty similar: viewtopic.php?f=5&t=3218
It seems like my Flow deck is failing to start and hence the problem
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: CF won't start - EEPROM: I2C connection [FAIL].

Post by tobias »

My bet it is a deck connector contact failure which can most likely be fixed. Follow the steps in this post
roeiz
Beginner
Posts: 14
Joined: Thu Dec 06, 2018 1:22 pm

Re: CF won't start - EEPROM: I2C connection [FAIL].

Post by roeiz »

Thanks Tobias.
I could not follow the steps in the post you mentioned, and I have ordered a new Flow deck (this time its v2).
The new flow deck had the same problem, so I soldered the pin headers to the flow deck before connecting it to the CF2.
Now my CF2 won't start still gives the same failures:

Code: Select all

SYS: ----------------------------
SYS: Crazyflie 2.0 is up and running!
SYS: Build 70:61fe174032e1 (2019.02 +70) MODIFIED
SYS: I am 0x30343631303747130038002E and I have 1024KB of flash!
DECK_INFO: DECK_FORCE=roeiHover found
DECK_INFO: compile-time forced driver roeiHover added
DECK_CORE: 2 deck(s) found
DECK_CORE: Calling INIT on driver bcFlow2 for deck 0
ZR2: Z-down sensor [FAIL]
PMW: Motion chip id: 0x:0x
DECK_CORE: Calling INIT on driver roeiHover for deck 1
hoverTask created
MPU9250 I2C connection [OK].
AK8963 I2C connection [OK].
LPS25H I2C connection [OK].
ESTIMATOR: Using Kalman (2) estimator
CONTROLLER: Using PID (1) controller
EEPROM: I2C connection [FAIL].
AK8963: Self test [OK].
Error while initializing the PMW3901 sensor
DECK_CORE: Deck 0 test [FAIL].
DECK_CORE: Deck 1 test [OK].

When I remove the newly arrived flow deck, the CF2 starts perfectly:

Code: Select all

unning!
SYS: Build 70:61fe174032e1 (2019.02 +70) MODIFIED
SYS: I am 0x30343631303747130038002E and I have 1024KB of flash!
CFGBLK: v1, verification [OK]
DECK_INFO: DECK_FORCE=roeiHover found
DECK_INFO: compile-time forced driver roeiHover added
DECK_CORE: 1 deck(s) found
DECK_CORE: Calling INIT on driver roeiHover for deck 0
hoverTask created
MPU9250 I2C connection [OK].
AK8963 I2C connection [OK].
LPS25H I2C connection [OK].
ESTIMATOR: Using Complementary (1) estimator
CONTROLLER: Using PID (1) controller
EEPROM: I2C connection [OK].
AK8963: Self test [OK].
DECK_CORE: Deck 0 test [OK].
STAB: Wait for sensor calibration...
SYS: Free heap: 12312 bytes
Initialized
spinTask initiated
spinTask Created
spinTask Loop
I might be missing something, but I don't see how can it be the EEPROM connectors, as I have soldered both of these pins on the flow deck side.
Could it be that the connectors on the CF2 itself are bad and need to be soldered as well?

I am kind of stuck with my research project due to this issue and would love to solve it soon :)

Thanks in advance.
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: CF won't start - EEPROM: I2C connection [FAIL].

Post by tobias »

The EEPROM is on the same I2C buss as the vl53l1x laser ranging sensor on the flow v2 deck. So for some reason this does not have a good contact or is shorted.

If you turn on the Crazyflie without the flow deck do you get any EEPROM: I2C connection [FAIL] then?
roeiz
Beginner
Posts: 14
Joined: Thu Dec 06, 2018 1:22 pm

Re: CF won't start - EEPROM: I2C connection [FAIL].

Post by roeiz »

Hi Tobias, thanks for the quick reply.
When I remove the flow deck I am getting

Code: Select all

EEPROM: I2C connection [OK].
So I guess the I2C bus itself is still operating.
Any idea what else could have gotten wrong here?
My current theories are either the I2C female header connection on the CF2 itself is bad or that the new flow deck is not working properly
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: CF won't start - EEPROM: I2C connection [FAIL].

Post by tobias »

My guess is the contact in the female header on the CF2. What did you have difficulties with when trying to fix he contact. Maybe I can guide you better?
roeiz
Beginner
Posts: 14
Joined: Thu Dec 06, 2018 1:22 pm

Re: CF won't start - EEPROM: I2C connection [FAIL].

Post by roeiz »

I can barely even see the "tongues" inside the contacts (even with a magnifying glass), so I cannot really adjust them.
I'd rather soldering the male headers to the holes of the CF2, just not sure it will not hurt the CF2 in any way, and that it will fix the issue.
Will it hurt the CF2 or soldering it is fine?
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: CF won't start - EEPROM: I2C connection [FAIL].

Post by tobias »

Soldering them is fine but it can be very hard to go back if you at some point want to. You should be able to do it from the bottom of the CF2 without having to remove the female connector on top.

In this guide you can see how the "tongues"look like if you still like to try and adjust them.
Post Reply