<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>NPM1300 adc interrupts and IBAT questions</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/122976/npm1300-adc-interrupts-and-ibat-questions</link><description>In the specs of npm1300 PS, it is suggested that the ADC can measure VBAT, VBAT_7V range, NTC, DIE_TEMP, VSYS, IBAT. However, in the interrupt configuration reported in 7.7.1.4 there are also entries for VSET1 and VSET2 (buck outputs). Is it possible</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 24 Jul 2025 12:48:03 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/122976/npm1300-adc-interrupts-and-ibat-questions" /><item><title>RE: NPM1300 adc interrupts and IBAT questions</title><link>https://devzone.nordicsemi.com/thread/543502?ContentTypeID=1</link><pubDate>Thu, 24 Jul 2025 12:48:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6da1a7a1-93b9-41d7-88c8-965eb1b47d65</guid><dc:creator>Yaxit</dc:creator><description>&lt;p&gt;Apparently I&amp;#39;m super dumb, I was observing the value after rescaling it to 5V range, hence the 5x factor &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f926.svg" title="Face palm"&gt;&amp;#x1f926;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NPM1300 adc interrupts and IBAT questions</title><link>https://devzone.nordicsemi.com/thread/543478?ContentTypeID=1</link><pubDate>Thu, 24 Jul 2025 11:51:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:faa1931a-6dd8-4a0a-ad2b-266c93ee6eb1</guid><dc:creator>Yaxit</dc:creator><description>&lt;p&gt;Interesting. I&amp;#39;m observing it in automatic, single measurement mode. Maybe&amp;nbsp;I have a driver issue?&amp;nbsp;Let me verify and come back to you&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NPM1300 adc interrupts and IBAT questions</title><link>https://devzone.nordicsemi.com/thread/543477?ContentTypeID=1</link><pubDate>Thu, 24 Jul 2025 11:43:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b790e030-8cbf-46d4-824a-ce157874280f</guid><dc:creator>Menon</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;Are you observing this in manual or automatic mode? Is it a single measurement or a burst?&lt;/p&gt;
&lt;p&gt;I’ve also raised this question with our internal team, as I’m not entirely sure. One of our team members mentioned that this issue does not occur in his setup at any load level. His measurements appear quite stable, with only the&amp;nbsp; LSB fluctuating occasionally.&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Abhijith&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NPM1300 adc interrupts and IBAT questions</title><link>https://devzone.nordicsemi.com/thread/543103?ContentTypeID=1</link><pubDate>Tue, 22 Jul 2025 07:12:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c5baf002-eb49-49d0-8e5e-b7367082652c</guid><dc:creator>Yaxit</dc:creator><description>&lt;p&gt;Thank you for the clarifications.&lt;/p&gt;
&lt;p&gt;I&amp;#39;m still not convinced about the 5 LSBs oscillation. I understand that the actual accuracy might be lower than what can be represented on 1 LSB, but it&amp;#39;s odd that those LSBs are skipped entirely, I would rather expect oscillations&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NPM1300 adc interrupts and IBAT questions</title><link>https://devzone.nordicsemi.com/thread/543070?ContentTypeID=1</link><pubDate>Mon, 21 Jul 2025 18:07:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3654b02b-de1b-4341-9b82-5a0652fe8d29</guid><dc:creator>Menon</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;Sorry for getting back to you a bit late. It&amp;#39;s summer vacation here in Norway, and some of my colleagues are on vacation, which caused the delay in addressing this issue.&lt;/p&gt;
&lt;p&gt;VSET1 and VSET2 are input pins, not ADC-measurable outputs. They are used to set the initial buck output voltage via external resistors to GND (&lt;a href="https://docs.nordicsemi.com/bundle/ps_npm1300/page/chapters/core_components/buck/doc/frontpage.html#ariaid-title3"&gt;see &lt;em&gt;Output Voltage Selection&lt;/em&gt;&lt;/a&gt;). The interrupts are likely triggered at startup, when those resistors are read. These events are not generally useful during normal application runtime.&lt;/p&gt;
&lt;p&gt;Enabling &lt;code&gt;ADCIBATMEASEN&lt;/code&gt; works reliably, it performs a sequential VBAT and IBAT measurement whenever a VBAT measurement is triggered, either manually or automatically. The results for both are then provided through the IBAT event. However, this approach is not compatible with burst mode, since the result registers for IBAT and burst VBAT are shared, which can cause conflicts.&lt;/p&gt;
&lt;p&gt;As for IBAT measurement using the &lt;code&gt;TASKIBATMEASURE&lt;/code&gt; trigger, I still need to clarify its behavior. Some follow-up is required with the R&amp;amp;D team, but that may take some time due to vacation schedules.&lt;/p&gt;
[quote user="Yaxit"]ADCVBAT2RESULTMSB and&amp;nbsp;ADCVBAT3RESULTMSB seem to contain IBAT and VBUS measurements. Are the corresponding LSBs found in the ADCGP1RESULTLSBS register, in the last two fields as well?[/quote]
&lt;p&gt;&lt;a href="https://docs.nordicsemi.com/bundle/ps_npm1300/page/chapters/core_components/saadc/doc/frontpage.html#ariaid-title6"&gt;See the overview table&lt;/a&gt;,&amp;nbsp;IBAT uses the same MSB/LSB pair as VBAT2.VBUS uses the same MSB/LSB pair as VBAT3.&lt;/p&gt;
[quote user="Yaxit"]ADCCONFIG is very unlcear. BURSTENABLE&amp;#39;s description is &amp;quot;Trigger a single/4 consecutive measurements&amp;quot;. Does this register generate the trigger? Does the trigger need to be generated by still with the&amp;nbsp;TASKVBATMEASURE register? When VBATAUTOENABLE is selected, does the host need to issue a first trigger?[/quote]
&lt;p&gt;VBATAUTOENABLE immediately starts automatic measurements,&amp;nbsp; no manual trigger is required after enabling. BURSTENABLE simply enables/disables burst mode, but does not trigger measurements on its own.&lt;/p&gt;
[quote user="Yaxit"]Is it possible to have ADC auto measurements in burst mode? If so, what happens to potential IBAT and VBUS measurements issued manually? Can they be lost, overwritten by VBAT burst measurements?[/quote]
&lt;p&gt;Not sure but auto-measurements should work fine with burst mode.&amp;nbsp;Manual IBAT or VBUS measurements may conflict with burst-mode results because they share the same result registers.&amp;nbsp;If the application carefully schedules manual measurements to avoid clashes, it should be possible.&lt;/p&gt;
[quote user="Yaxit"]&lt;p&gt;Seems VBATAUTOENABLE starts the acquisitions right away, to answer my question.&lt;/p&gt;
&lt;p&gt;For some reason, though, VBAT measurements seem to oscillate with +-5LSBs, not 1. I assume the ADC values are unsigned?&amp;nbsp;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;uint16_t vbat = ((&lt;/span&gt;&lt;span&gt;uint16_t&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;reg&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;|&lt;/span&gt;&lt;span&gt; (&lt;/span&gt;&lt;span&gt;lsbs1&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;vbat_resultlsb&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;amp;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;0x03&lt;/span&gt;&lt;span&gt;);&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;[/quote]
&lt;p&gt;Yes the ADC results are unsigned.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I guess this refers to the&amp;nbsp;System Monitor&lt;a href="https://docs.nordicsemi.com/bundle/ps_npm1300/page/chapters/core_components/saadc/doc/frontpage.html#ariaid-title11"&gt; Electrical Specification&lt;/a&gt;,&amp;nbsp;&lt;span&gt;It says the accuracy is ±1&lt;strong&gt;%&lt;/strong&gt;, not 1 bit.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Kind Regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Abhijith&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NPM1300 adc interrupts and IBAT questions</title><link>https://devzone.nordicsemi.com/thread/542553?ContentTypeID=1</link><pubDate>Tue, 15 Jul 2025 15:46:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bb1dfc63-3e17-4415-8150-fe63cc6e1a05</guid><dc:creator>Yaxit</dc:creator><description>&lt;p&gt;Seems VBATAUTOENABLE starts the acquisitions right away, to answer my question.&lt;/p&gt;
&lt;p&gt;For some reason, though, VBAT measurements seem to oscillate with +-5LSBs, not 1. I assume the ADC values are unsigned?&amp;nbsp;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;uint16_t vbat = ((&lt;/span&gt;&lt;span&gt;uint16_t&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;reg&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;|&lt;/span&gt;&lt;span&gt; (&lt;/span&gt;&lt;span&gt;lsbs1&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;vbat_resultlsb&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;amp;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;0x03&lt;/span&gt;&lt;span&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NPM1300 adc interrupts and IBAT questions</title><link>https://devzone.nordicsemi.com/thread/542531?ContentTypeID=1</link><pubDate>Tue, 15 Jul 2025 13:14:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e40e41cc-8418-4c53-8412-3ff382f34241</guid><dc:creator>Yaxit</dc:creator><description>&lt;p&gt;Following up, more clarifications are needed.&amp;nbsp;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;ADCVBAT2RESULTMSB and&amp;nbsp;ADCVBAT3RESULTMSB seem to contain IBAT and VBUS measurements. Are the corresponding LSBs found in the ADCGP1RESULTLSBS register, in the last two fields as well?&lt;/li&gt;
&lt;li&gt;ADCCONFIG is very unlcear. BURSTENABLE&amp;#39;s description is &amp;quot;Trigger a single/4 consecutive measurements&amp;quot;. Does this register generate the trigger? Does the trigger need to be generated by still with the&amp;nbsp;TASKVBATMEASURE register? When VBATAUTOENABLE is selected, does the host need to issue a first trigger?&lt;/li&gt;
&lt;li&gt;Is it possible to have ADC auto measurements in burst mode? If so, what happens to potential IBAT and VBUS measurements issued manually? Can they be lost, overwritten by VBAT burst measurements?&lt;/li&gt;
&lt;/ol&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>