<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: ADC Failure - Failure Modes in S32K</title>
    <link>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1304847#M11298</link>
    <description>&lt;P&gt;Hi &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/67428"&gt;@sparkee&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Have you tried the ADC modules at different inputs?&lt;/P&gt;
&lt;P&gt;Maybe only the pins got damaged.&lt;/P&gt;
&lt;P&gt;The Band Gap internal channel should give you a good reference.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="danielmartynek_1-1625755034421.png" style="width: 415px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/149287iA5CBEF36CE7CDEC6/image-dimensions/415x400?v=v2" width="415" height="400" role="button" title="danielmartynek_1-1625755034421.png" alt="danielmartynek_1-1625755034421.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BR, Daniel&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 08 Jul 2021 14:39:24 GMT</pubDate>
    <dc:creator>danielmartynek</dc:creator>
    <dc:date>2021-07-08T14:39:24Z</dc:date>
    <item>
      <title>ADC Failure - Failure Modes</title>
      <link>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1301336#M11244</link>
      <description>&lt;P&gt;I seem to be breaking the ADC modules on my boards and I'm not sure how it's happening or why the ADC spits out false readings.&lt;/P&gt;&lt;P&gt;I'm using both ADCs on the S32K144.&amp;nbsp; I sense temperature through the MCP9701 with a 1k resistor in series.&amp;nbsp; On the other ADC I have a current transformer through an op amp rectifier circuit then a filter circuit with three 1k resistors in series and a 100nf cap to ground after each resistor.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="sparkee_0-1625160102624.png" style="width: 322px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/148536i696ADF1B3E71BCD6/image-dimensions/322x191?v=v2" width="322" height="191" role="button" title="sparkee_0-1625160102624.png" alt="sparkee_0-1625160102624.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="sparkee_1-1625160280158.png" style="width: 545px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/148537i5C3DE99C281D1E8E/image-dimensions/545x373?v=v2" width="545" height="373" role="button" title="sparkee_1-1625160280158.png" alt="sparkee_1-1625160280158.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;One problem I noticed is that I'm using a 2.048V voltage reference but the datasheet seems to say the voltage reference is limited at 2.7V up to Vdda (which is 5V for me, I have vdd and vdda tied together at the chip with separate bypass capacitors).&lt;/P&gt;&lt;P&gt;This setup has been working for over 6 months so far and all readings have been very good so this is confusing.&amp;nbsp; Out of the 60 boards I have produced, I've only had the ADC failure on 3 boards and only in the past week on newly installed boards.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;One of the failed boards could have seen a voltage spike on the ADC input, though I would have thought the op amp would have limited the voltage spike from the CT.&amp;nbsp; This spike happened on 5 boards and only 1 board is having ADC problems after I replaced the op amp that was fried.&lt;/P&gt;&lt;P&gt;ADC0 reads a very stable 22 or 23 counts even when grounding the pin.&amp;nbsp;&lt;/P&gt;&lt;P&gt;ADC1 reads a sporadic 700-1100 counts that also does not react to grounding the pin.&lt;/P&gt;&lt;P&gt;ADC0 would have possibly seen the voltage spike.&lt;/P&gt;&lt;P&gt;My question is, what might cause the ADC to fail and how do I prevent this in the future?&amp;nbsp; I understand you have limited info on my circuit so I'm just looking for general recommendations.&amp;nbsp; Do the symptoms I describe sound like ADC failure?&amp;nbsp; All other functions seem to work fine, digital I/O, CAN comms, UART.&lt;/P&gt;&lt;P&gt;Also, is 2.048V reference going to damage the board long term?&amp;nbsp; Do I need to change this?&amp;nbsp; I was attempting to maximize my resolution of the ADC.&lt;/P&gt;&lt;P&gt;These boards has 8 connectors that go to various CTs, a fan, a contactor coil, CAN comms, etc, and it seems that one of the box builds is frying the boards since all 3 of these failed boards were installed in 1 particular box.&amp;nbsp; I haven't confirmed anything yet but I'm afraid to try another board and fry it since we have limited amounts on hand.&lt;/P&gt;&lt;P&gt;Thank you for your time&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 01 Jul 2021 17:28:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1301336#M11244</guid>
      <dc:creator>sparkee</dc:creator>
      <dc:date>2021-07-01T17:28:47Z</dc:date>
    </item>
    <item>
      <title>Re: ADC Failure - Failure Modes</title>
      <link>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1303752#M11276</link>
      <description>&lt;P&gt;Hello &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/67428"&gt;@sparkee&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;It is hard to say, but the low-voltage reference does not seem to be the issue, going below the minimum for the VREFH is more related to not commit with the ADC TUE performance specified.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="danielmartynek_0-1625645412191.png" style="width: 522px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/149083i267E11409CEF00CB/image-dimensions/522x152?v=v2" width="522" height="152" role="button" title="danielmartynek_0-1625645412191.png" alt="danielmartynek_0-1625645412191.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Can you elaborate on the spike you see there?&lt;/P&gt;
&lt;P&gt;The ADC could be damaged by current injection on the ADC input when Vin &amp;gt; VDDA or Vin &amp;lt; VSSA.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="danielmartynek_1-1625645676880.png" style="width: 584px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/149085iCF3F2A02B10CD04E/image-dimensions/584x574?v=v2" width="584" height="574" role="button" title="danielmartynek_1-1625645676880.png" alt="danielmartynek_1-1625645676880.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Daniel&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 07 Jul 2021 08:17:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1303752#M11276</guid>
      <dc:creator>danielmartynek</dc:creator>
      <dc:date>2021-07-07T08:17:07Z</dc:date>
    </item>
    <item>
      <title>Re: ADC Failure - Failure Modes</title>
      <link>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1304836#M11297</link>
      <description>&lt;P&gt;I ran simulations and was unable to get anything over 2mA but I have to assume that was the issue.&amp;nbsp; Maybe there was a short spike that got through the op amp, though the op amp doesn't seem to be burned up on at least 2 of the 3 boards.&amp;nbsp; Not sure on the 3rd board.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I also haven't completely ruled out ESD but either way it's the same issue.&lt;/P&gt;&lt;P&gt;At any rate, I will put diodes on the next version to mitigate this issue as much as possible.&lt;/P&gt;&lt;P&gt;I did find it strange that it burned up both ADCs and they showed radically different readings.&lt;/P&gt;&lt;P&gt;Thank you&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/160001"&gt;@danielmartynek&lt;/a&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 08 Jul 2021 14:19:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1304836#M11297</guid>
      <dc:creator>sparkee</dc:creator>
      <dc:date>2021-07-08T14:19:32Z</dc:date>
    </item>
    <item>
      <title>Re: ADC Failure - Failure Modes</title>
      <link>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1304847#M11298</link>
      <description>&lt;P&gt;Hi &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/67428"&gt;@sparkee&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Have you tried the ADC modules at different inputs?&lt;/P&gt;
&lt;P&gt;Maybe only the pins got damaged.&lt;/P&gt;
&lt;P&gt;The Band Gap internal channel should give you a good reference.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="danielmartynek_1-1625755034421.png" style="width: 415px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/149287iA5CBEF36CE7CDEC6/image-dimensions/415x400?v=v2" width="415" height="400" role="button" title="danielmartynek_1-1625755034421.png" alt="danielmartynek_1-1625755034421.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BR, Daniel&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 08 Jul 2021 14:39:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1304847#M11298</guid>
      <dc:creator>danielmartynek</dc:creator>
      <dc:date>2021-07-08T14:39:24Z</dc:date>
    </item>
    <item>
      <title>Re: ADC Failure - Failure Modes</title>
      <link>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1305537#M11309</link>
      <description>&lt;P&gt;Thank you for the suggestion, I will test this next week and report back.&lt;/P&gt;</description>
      <pubDate>Fri, 09 Jul 2021 15:42:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1305537#M11309</guid>
      <dc:creator>sparkee</dc:creator>
      <dc:date>2021-07-09T15:42:12Z</dc:date>
    </item>
    <item>
      <title>Re: ADC Failure - Failure Modes</title>
      <link>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1309154#M11391</link>
      <description>&lt;P&gt;I attempted to read internal channels and the results did not seem correct to me so I started a fresh project from the ADC example and I'm able to get both ADCs to read correctly now.&amp;nbsp; This means it must be a software problem, but I haven't changed anything related to the ADC reads (at least not on purpose).&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm going to go back through and see if I can spot the error.&amp;nbsp; I actually hope that it's a software error on my part because we have these units in use in the field so a hardware failure is a much larger problem than a localized software issue.&lt;/P&gt;&lt;P&gt;For reference, here is my ADC init and interrupt:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;/***********************************************************************************&lt;BR /&gt;* Initialize ADC0&lt;BR /&gt;* Channel 10, hardware trigger, 12 bit resolution, single conversion&lt;BR /&gt;*&lt;BR /&gt;***********************************************************************************/&lt;BR /&gt;void Init_ADC0(void)&lt;BR /&gt;{&lt;BR /&gt;// Initialize for use with calculateIntValue()&lt;BR /&gt;// Will hold uS value of timer counter based on #define PDLY0_TIMEOUT&lt;BR /&gt;uint16_t delayValue = 0;&lt;BR /&gt;/* Configure and calibrate the ADC converter&lt;BR /&gt;* - See ADC component for the configuration details&lt;BR /&gt;*/&lt;BR /&gt;DEV_ASSERT(adConv0_ChnConfig0.channel == ADC_CHN);&lt;BR /&gt;ADC_DRV_ConfigConverter(INST_ADCONV0, &amp;amp;adConv0_ConvConfig0);&lt;BR /&gt;ADC_DRV_AutoCalibration(INST_ADCONV0);&lt;BR /&gt;ADC_DRV_ConfigChan(INST_ADCONV0, 0UL, &amp;amp;adConv0_ChnConfig0);&lt;/P&gt;&lt;P&gt;IRQn_Type adc0IRQ = ADC0_IRQn;&lt;BR /&gt;INT_SYS_InstallHandler(adc0IRQ, &amp;amp;ADC0_IRQHandler, (isr_t*) 0);&lt;/P&gt;&lt;P&gt;if (!calculateIntValue(&amp;amp;pdly0_InitConfig0, PDLY0_TIMEOUT, &amp;amp;delayValue)) {&lt;BR /&gt;while (1);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;PDB_DRV_Init(INST_PDLY0, &amp;amp;pdly0_InitConfig0);&lt;BR /&gt;PDB_DRV_Enable(INST_PDLY0);&lt;BR /&gt;PDB_DRV_ConfigAdcPreTrigger(INST_PDLY0, 0UL, &amp;amp;pdly0_AdcTrigInitConfig0);&lt;BR /&gt;PDB_DRV_SetTimerModulusValue(INST_PDLY0, (uint32_t) delayValue);&lt;BR /&gt;PDB_DRV_SetAdcPreTriggerDelayValue(INST_PDLY0, 0UL, 0UL, 0);&lt;BR /&gt;PDB_DRV_LoadValuesCmd(INST_PDLY0);&lt;BR /&gt;PDB_DRV_SoftTriggerCmd(INST_PDLY0);&lt;/P&gt;&lt;P&gt;/* Enable ADC 0 interrupt */&lt;BR /&gt;INT_SYS_EnableIRQ(ADC0_IRQn);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;/***********************************************************************************&lt;BR /&gt;* ADC0 used for reading the differential transformer&amp;nbsp;&lt;BR /&gt;*&lt;BR /&gt;***********************************************************************************/&lt;BR /&gt;void ADC0_IRQHandler(void)&lt;BR /&gt;{&lt;BR /&gt;/* Trigger PDB timer */&lt;BR /&gt;PDB_DRV_SoftTriggerCmd(INST_PDLY0);&lt;/P&gt;&lt;P&gt;/* Get channel result from ADC channel */&lt;BR /&gt;ADC_DRV_GetChanResult(INST_ADCONV0, 0U, (uint16_t *)&amp;amp;adc0RawValue);&lt;/P&gt;&lt;P&gt;/* Set ADC conversion complete flag */&lt;BR /&gt;adc0ConvDone = true;&lt;/P&gt;&lt;P&gt;/* Run detection for every sample */&lt;BR /&gt;rtU2.ADC = adc0RawValue;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;</description>
      <pubDate>Fri, 16 Jul 2021 13:50:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1309154#M11391</guid>
      <dc:creator>sparkee</dc:creator>
      <dc:date>2021-07-16T13:50:27Z</dc:date>
    </item>
    <item>
      <title>Re: ADC Failure - Failure Modes</title>
      <link>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1309258#M11392</link>
      <description>&lt;P&gt;The plot thickens...&lt;/P&gt;&lt;P&gt;(RECAP) So my custom board has been running this software for almost a year with only minor tweaks and now the ADC has stopped reading correctly.&amp;nbsp; If I put ADC example software on the custom board, ADC works again.&amp;nbsp;&lt;/P&gt;&lt;P&gt;(NEW) If I put &lt;EM&gt;MY&lt;/EM&gt; software on the 144DEV board, it works fine.&amp;nbsp; So my software does not work on my board but does work on the dev board.&amp;nbsp; Both boards work with the example software.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I use the SDK implementation for my software, whereas the example does &lt;STRONG&gt;not&lt;/STRONG&gt; utilize the SDK.&lt;/P&gt;&lt;P&gt;I'm still working on it but this is a really strange issue.&lt;/P&gt;&lt;P&gt;Here's my ADC setup.&amp;nbsp; I use the PDB to trigger the ADC every 100us.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="sparkee_0-1626460727304.png" style="width: 524px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/150095i25A6F45ED9EBDA33/image-dimensions/524x779?v=v2" width="524" height="779" role="button" title="sparkee_0-1626460727304.png" alt="sparkee_0-1626460727304.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/160001"&gt;@danielmartynek&lt;/a&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Jul 2021 19:44:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1309258#M11392</guid>
      <dc:creator>sparkee</dc:creator>
      <dc:date>2021-07-16T19:44:30Z</dc:date>
    </item>
    <item>
      <title>Re: ADC Failure - Failure Modes</title>
      <link>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1312060#M11428</link>
      <description>&lt;P&gt;Hi &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/67428"&gt;@sparkee&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Sorry for the delay.&lt;/P&gt;
&lt;P&gt;I have had a discussion with my colleagues, maybe a few suggestions.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Can you dump all the MCU registers once you detect the issue and compare it with registers from a working MCU?&lt;/P&gt;
&lt;P&gt;Do you see any error flags?&lt;/P&gt;
&lt;P&gt;Does the current consumption changes when the issue is detected?&lt;/P&gt;
&lt;P&gt;If you replace the MCU with a new, does it work on your board?&lt;/P&gt;
&lt;P&gt;If so, you could arrange a NXP factory analysis for the failed part with your local distributor.&lt;/P&gt;
&lt;P&gt;Do you measure the VREFH reference continuously?&lt;/P&gt;
&lt;P&gt;What is the conversion time of a single conversion?&lt;/P&gt;
&lt;P&gt;Maybe you should focus on the difference between the EVB and your board, such as the XTAL.&lt;/P&gt;
&lt;P&gt;Do you use Clock monitor?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BR, Daniel&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Jul 2021 14:25:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1312060#M11428</guid>
      <dc:creator>danielmartynek</dc:creator>
      <dc:date>2021-07-22T14:25:00Z</dc:date>
    </item>
    <item>
      <title>Re: ADC Failure - Failure Modes</title>
      <link>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1443559#M14971</link>
      <description>&lt;P&gt;I'm not sure if this is the same issue but I had to switch from a 144 to a 146 and the software seemed to work fine at times or sometimes not at all or sometime just the ADC stopped working.&lt;/P&gt;&lt;P&gt;I was unable to figure out exactly why it worked occasionally but not always.&amp;nbsp; I finally got a large batch of 146 MCUs and started a project from scratch with 146 instead of changing processor on existing 144 project to 146.&amp;nbsp; I now have 2 code bases but I no longer have these issues.&lt;/P&gt;&lt;P&gt;It seems that the IDE does not do a good job of switching processors.&amp;nbsp; Another issue I had when switching from 146 to 144 is that the flextimers that don't exist in the 144 (FT_mc4 and mc5) keep popping back up in the initialization despite removing them from the list of used components and removing them from the Processor Expert area.&amp;nbsp; Every time the project is closed and reopened, I have to go in and delete them again or the code won't compile.&lt;/P&gt;&lt;P&gt;Thank you for your assistance Daniel.&lt;/P&gt;</description>
      <pubDate>Wed, 13 Apr 2022 19:41:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/ADC-Failure-Failure-Modes/m-p/1443559#M14971</guid>
      <dc:creator>sparkee</dc:creator>
      <dc:date>2022-04-13T19:41:43Z</dc:date>
    </item>
  </channel>
</rss>

