<?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>nRF52 adc Calibration</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/16011/nrf52-adc-calibration</link><description>Hello,
i&amp;#39;m searching for informations about calibrating the SAADC of the nRF52. And i have read here: Link 
 
 For nRF52, there are no calibration
values that I know of. You need
instead to periodically calibrate the
SAADC by calling the
TASKS_CALIBRATEOFFSET</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 02 Sep 2016 10:51:24 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/16011/nrf52-adc-calibration" /><item><title>RE: nRF52 adc Calibration</title><link>https://devzone.nordicsemi.com/thread/61066?ContentTypeID=1</link><pubDate>Fri, 02 Sep 2016 10:51:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b046937b-1e14-49ea-bb7c-6e44f0a79784</guid><dc:creator>Carsten Wulff</dc:creator><description>&lt;p&gt;It is possible if you enable BURST=1 on all used channels. it will then do for example OVERSAMPLE=2:
chan1, chan1,chan1,chan1, chan2, chan2, chan2, chan2, chan3, chan3, chan3, chan3, chan4, chan4, chan4, chan4&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 adc Calibration</title><link>https://devzone.nordicsemi.com/thread/61065?ContentTypeID=1</link><pubDate>Fri, 02 Sep 2016 08:17:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:da16f5a5-134c-4bf6-ad71-7558d1f17937</guid><dc:creator>KingKarl237</dc:creator><description>&lt;p&gt;That means I have to sample channel 1 with oversample in burst mode and then channel 2, channel 3 etc. right? Because oversampling in scan mode is not possible right?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 adc Calibration</title><link>https://devzone.nordicsemi.com/thread/61064?ContentTypeID=1</link><pubDate>Fri, 02 Sep 2016 07:27:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c8b9be11-08bb-439d-a541-34b192b8f48b</guid><dc:creator>Carsten Wulff</dc:creator><description>&lt;p&gt;Seems for all of input sources you have quite low source impedance, so you should be able to do oversampling to improve the noise levels. I would recommend 16x (OVERSAMPLE=4) and BURST=1, that is a resonable tradeoff between time and noise levels.&lt;/p&gt;
&lt;p&gt;Stefan is correct that it&amp;#39;s about 0.1 Lsb10b per degree, and 0.4 Lsb12b per degree.&lt;/p&gt;
&lt;p&gt;What also needs to be taken into consideration is that the noise level at gain = 1/4 is around 1.6 Lsb12b (0.4 Lsb10b), thus without oversampling I would expect the calibration to have a standard deviation of 0.4 Lsb10b, so maybe up to +-2 Lsb10b error in the calibration without oversampling.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 adc Calibration</title><link>https://devzone.nordicsemi.com/thread/61069?ContentTypeID=1</link><pubDate>Wed, 31 Aug 2016 17:24:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a8a56797-116e-458a-8f10-ff6152e553a4</guid><dc:creator>Stefan Birnir Sverrisson</dc:creator><description>&lt;p&gt;Yes, the TASKS_CALIBRATEOFFSET compensates the temperature drift offset. Yes, I believe 7 codes means 7LSB. So if we assume that this temperature drift is somewhat linear for the whole temperature range, you have perhaps 1LSB offset per 10 deg C, just to realize the scale of the offset error per change in tempertature. So my guess is calibrating every 10 seconds should be sufficient for most situations to keep the offset error as result of temperature drift within 1LSB. There is &lt;a href="https://github.com/NordicSemiconductor/nRF52-ADC-examples/blob/master/saadc_low_power/main.c"&gt;code here&lt;/a&gt; that shows example how to code offset calibration.&lt;/p&gt;
&lt;p&gt;This is rough estimate. If you want something more accurate, you should give Carsten the input he is asking for, or make your own real world evaluation.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 adc Calibration</title><link>https://devzone.nordicsemi.com/thread/61068?ContentTypeID=1</link><pubDate>Tue, 30 Aug 2016 06:25:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3e89e631-ce7f-48bd-8aaa-09430a1f4032</guid><dc:creator>KingKarl237</dc:creator><description>&lt;p&gt;So the TASKS_CALIBRATEOFFSET compensates the temperature drift?
With &amp;quot;7 codes offset&amp;quot; do you mean 7 LSB?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 adc Calibration</title><link>https://devzone.nordicsemi.com/thread/61067?ContentTypeID=1</link><pubDate>Tue, 30 Aug 2016 05:50:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:40548e72-4c62-404c-bed9-5e470a8c98e2</guid><dc:creator>Carsten Wulff</dc:creator><description>&lt;p&gt;The SAADC has a slight temperature dependent offset. I&amp;#39;ve seen up to 7 codes offset in 10-bit differential mode over the valid temperature range. I might be able to guide you more if you can tell me some about the signal statistics, type of analog source, and samplerate.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>