WCD9335 codec broken? No analog output


#1

(Again, working with a 820E based SOM which is very similar to DB820C)

I’ve got the feeling that I have somehow broken part of the WCD9335 audio codec. dmesg tells me it’s fine, logcat shows me all the routing is happening but the analog out (both line and headphones) is just flat. It seems to just have happened overnight, before that it was working fine. I also installed factory images from the SOM supplier which didn’t make the problem go away. USB audio and BT audio work fine btw.

I’m now looking for a way to verify if I indeed blew up (part of) the codec, but I have no idea how. the WCD9335
driver is installed from a binary blob, so that doesn’t help.


#2

I can only really offer a “bad luck” here.

I think pretty much any board level diagnostic would require a working board side-by-side to confirm assumptions about reference voltages, etc… but by the time you do that you can already have modest confidence its a board problem because you have a working board running the same software.


#3

Hi @Genoil

In general I have to agree with Daniel’s analysis, I to would guess you have had an ElectroStatic Discharge (ESD) event which has taken out the WCD. I can’t stress enough how sensitive modern electronics are to ESD if you are not working at a properly grounded workstation and wearing an ESD smock, and wriststrap, then any handling of an open board brings with it a likelihood of generating an ESD event that takes out one of those tiny transistors on one of the chips. Even with a grounded work station, smock and wrist-strap I would also recommend an air ionizer blowing ionized air over the work surface.

I you (like most people) are not willing to go to the pain of properly handling your electronics, then you take a risk every time you move your hand near the board (you don’t even need to physically touch the board to generate enough potential to take out a device). Since these boards are generally inexpensive, we usually just get another board out of the box and move on when this happens.

When boards are closed up into boxes (like a cell phone or DVR) all of the external ports have special ESD protection devices, and the case protects the points that don’t have protection. if you look at the schematics for the 410c you will see ESD diodes near things like the USB ports. These ‘usually’ protect the ports against ESD, but even then a sufficiently large discharge will take them out. In a cell phone design we even put ESD protection devices at the connections to the speakers, and microphones since they are open to ESD. Unfortunately ESD diodes are expensive and take up space so we can’t put them everywhere on the board.

Here is a very quick overview of what you need to do https://www.esda.org/about-esd/esd-fundamentals/part-3-basic-esd-control-procedures-and-materials/ if you want to be sure your board doesn’t suffer and ESD event, otherwise just have a spare.

-Lawrence-
No longer a Qualcomm employee.
Still looking for work


#4

Note to self: stop picking up the not-currently-plugged-in 96Boards on your desk and using them as a fiddle toy

:cloud_with_lightning: :worried:


#5

The dev kit I’m using is an expensive one, with ESD protection diodes on just about every single line…except on most of the audio out lines, so your theory holds :slight_smile:

Well for our custom carrier board design I wasn’t too happy anyway with the WCD9335, too advanced for what we need. I guess i’ll slap on a basic USB audio codec instead :slight_smile:


#6

@danielt
If you really must use a board as a fiddle toy, at least have in a sealed ESD bag. An open or torn ESD bag doesn’t protect.

@Genoil

The WCD9335 is a great audiophile level codec with specs close to the very best ESS Codecs. and the price is quite reasonable (between $4 and $5 according to Arrow.com). It has a ton of features and is capable of multichannel sound. In order to get the audiophile level performance out of it your really need a fantastic audio electronics engineer to get the layout right, but it is capable.

Having said that the WCD9335 is probably overkill if you just want to capture voice, or drive a cheap speaker.

-Lawrence-