Hi all,
I'm primarily a software engineer who wrote the firmware code for a PIC based board using ADS1258 as the analog to digital converter responsible of acquiring sensors measurements.
The board and the firmware work fine since 2013, but the latest produced boards have about 10-20% of mulfunctioning on the data sampling part. The ADS correctly manages commands (such as channel selection) and swicthing from run to powerdown mode via the PWDN control pin. Data reported by the ADS, though referring to the selected channels are almost saturated.
The affected boards may start working properly and become unstable after minutes or days, or they can start working unstable.
The new boards only feature some minor changes on the passive components and we tried to rollback almost all changes without benefits.
I'm aware that the cause of this problem cannot be guessed by anyone just analysing what I wrote, but there's something very strange happening when the boards are not working and I'm sure many of you may have useful suggestions about.
When operating correctly, the board draws 19mA (the ADS works with its internal 15.7MHz and with the clock out feature disabled). If I activate the clock out feauture (with no load on the output pin) the current drawing raises a little (about 1.5mA more).
When the board malfunctions it draws about 33mA (14mA higher) and if I enable the clock out feature the current drawn raises to 43mA. So, having the clock out feature enabled causes 10 additional mA drawing.
Even while the ADS behaves unstable, if I program the firmware to periodically powerdon the ADS (using the PWDN pin), the board draws only 8.3mA (the very low drawing is due to the longer sleep period in the MCU). This makes me believe the ADS is the chip having this abnormal current drawing.
So, the question:
Assuming that there's no ADS1258 stability issue, do you have an idea of what kind of external mistake could cause this huge current drwaing from the ADS ?
Thanks in advance.
sincerely,
Vincenzo