This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS8328 Channel Selection

Other Parts Discussed in Thread: ADS8328, ADS8327

Hi All,

The following discussion concerns the ADS8328 16-bit A/D converter, as found on the TMDXMDKPO8328 pulse oximetry analog front end (AFE) module. If this is not the appropriate forum for this topic, then I apologize in advance.

In short, I have reason to believe that the input multiplexer of the ADS8328 is not functioning, and that only channel 0 is sampled (as per the ADS8327).

This problem first came to light when I examined the serial output from the 5515EVM pulse oximetry demonstration application. Pulling the data into MATLAB, it became obvious that the data for the R and IR channels was identical for each and every sample. Whilst I would expect them to be in close agreement (given the scaling criteria that are applied to the signals in the 5515EVM codebase), there is no way that they should be EXACTLY the same, ALL THE TIME. I have included a graph below so that you can see the two signals for yourself.

Now, due to the fact that the 5515EVM codebase is currently unable to be compiled using CSS v4, I have gone ahead and rolled a new pulse oximetry solution (still using the AFE) on a Cypress PSoC5 development board. This also reports identical values for channels 0 and 1 (using manual channel selection) of the ADS8328, despite the fact that I can see that the input values are wildly different using a multimeter.

As I am unable to generate a 17th clock bit using my current SPI implementation, I am unable to read the channel tag bit. Likewise, it is not possible to determine which input channel is selected by reading back the CFR register. I do read it back however, just to verify that my SPI implementation is working correctly, which it is.

Is this a known problem with the ADS8328? Should I simply order another AFE in the hope that the problem lies with the specific ADS8328 I am working with? Any advice on this issue would be greatly appreciated.

  • Hi Rodney,

    Across the surface of the ADS8328, there are a series of numbers/letters.  Would you be so kind as to let us know what those are?

  • Hi Tom,

    Thanks for your reply. The chip is labelled "TI ADS 8328I 7489", and also features a white "B" printed on it. I initially thought that perhaps the AFE had simply been populated with the incorrect version of the chip (ie the ADS8327), however the chip marking does not bear this out.

    Furthermore, I have managed to get my hands on a second AFE, and it exhibits exactly the same behavior as mentioned in my previous post. Both AFE boards are labelled "SpO2_FE_Rev_2".

    If it were not for the fact that I have witnessed exactly the same behavior on the Spectrum Digital 5515EVM as on my own system, I would simply put this down to a coding error on my part. The fact that it occurs when running the TI example code on the 5515EVM makes me think that either the ADS8328 is at fault, or the problem lies with the AFE board itself.

  • Hi Rodney,

    Some early ADS8328 devices would not respond to a channel change command.  Are you comfortable removing/replacing the ADS8328 device on your board?  If so, I would suggest you order some sample chips and try replacing the chip.  If you don't have the means to desolder and resolder the device, or would rather not do it yourself, let me know and I'll figure out another way to get this resolved for you.