Problem connecting a new piece of hardware (audio codec) to the Beagle using the GPIO pins

Hi everyone.

Currently, we are connecting an external piece of hardware (an audio
codec) to the Beagle using the GPIO pins.

The pins we are using currently are:

2 (this feeds the daughter card with Electrical Power)
4, 6, 8, 10 (to get access to the McBSP3 for I2S)
27 (for grounding)
23, 24 (to get access to the I2C).

When turning on the Beagle, in the terminal we see:

"Texas Instruments X-Loader 1.41
ECC Failed, page 0x00083000" with lots of numbers afterwards.

We are about to fetch the code and see what's causing this, but anyway
wanted to shoot the question to see if somebody has seen this, what
caused it if possible and what solved it.

Our opinion is that it's got something to do with the McBSP3
connection and that maybe we needed to do something to the Beagle
before connecting something to it.

Any hints here would be really appreciated.

Best regards,

Alex B.

ECC error is NAND error and has nothing to do with McBSP3. From a HW perspective, what voltage levels are using on the attached CODEC? Can you share a schematic?

Gerald

That's assuring some how. =)

Inside the daughter card, containing the audio codec, we are using 1.8
V. We are feeding through pin 2 on the GPIO, which provides 5 V DC, as
you may already have noticed.

I don't have a schematic on hand.

But I can certainly look for the info if you can give me an idea of
what you require to know.

In the meantime, could you please educate me a little bit on what
you're thinking?

I've the vague feeling that the presence of the daughter card may have
affected the voltages required by the NAND on the main board (based on
your answer, of course; I may be totally off, for which I apologize in
advance).

Best regards,

Alex B.

I just want to make sure you that you aren’t doing something on the card that could adversely affect the NAND due to corruption or loading of the 1.8V rail. I can only tell this from a schematic.

Gerald

Umm, we just removed the electrical feed from the daughter card (as
well as the ground) and the Beagle booted up just fine, so you were
correct: the electrical feed that the daughter card requires might be
too much for the Beagle.

We checked the voltage on the pins on the Beagle and the multimeter
reported 4.99 V, so I guess that was not the issue and instead was the
amperage provided. Let me check the manual about this. If I can't find
it, I'll ping back again.

=)

And sorry for not being able to share an schematic with you, but I
don't have any to share.

In any case, your feedback on this has been really useful. Thanks a lot.

Best regards,

Alex B.

What revision BeagleBoard are you working with? The 5V should be able to deliver at least an AMP, assuming you are running from a DC supply. I would not try this while running from USB, at least not until everyhting checks out. Also keep in mind that the statee of those pins at default need to be taken into account. Make sure they don’t cause issues for you on power up. This may mean that pullups are needed on your board to keep your HW happy until the SW is up and running.

Gerald

The BB revision is B6 and yes: it's running from a DC supply.

We'll check the state as you mention as well as the pull ups part.
Sounds reasonable.

At least for the I2C side, this sounds reasonable (see the note at the
bottom with regards to I2C):
http://en.wikipedia.org/wiki/Pull-up_resistor.

What about the signals for I2S? Would you suggest adding pull ups too?

Best regards,

Alex B.

Only you can answer that. What you have to think about is when the CODEC powers up and all of the signals are floating, what will that do to your circuitry?

Gerald

I see. We'll recheck the wiring and be more careful next time.

Thanks for your patience. =)

Warm regards,

Alex B.