<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Atmel Xmega ADC Problems &amp; Solutions</title>
	<atom:link href="http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/</link>
	<description>A bunch of random musings, with a leaning towards electronics &#38; computers.</description>
	<lastBuildDate>Sun, 08 Jan 2012 21:10:40 -0800</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Matic</title>
		<link>http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/comment-page-1/#comment-249</link>
		<dc:creator>Matic</dc:creator>
		<pubDate>Mon, 12 Sep 2011 23:37:40 +0000</pubDate>
		<guid isPermaLink="false">http://blog.frankvh.com/?p=213#comment-249</guid>
		<description>Hello,
first i would like to thank you for very useful advices on using ADC.
I have one question about XMEGA ADC. I don&#039;t understand whay is in unsigned, single-ended mode negative pin fixed to Vref/2-dV. I would apreciate if someone could explain that.
Thanks</description>
		<content:encoded><![CDATA[<p>Hello,<br />
first i would like to thank you for very useful advices on using ADC.<br />
I have one question about XMEGA ADC. I don&#8217;t understand whay is in unsigned, single-ended mode negative pin fixed to Vref/2-dV. I would apreciate if someone could explain that.<br />
Thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Edimahler</title>
		<link>http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/comment-page-1/#comment-229</link>
		<dc:creator>Edimahler</dc:creator>
		<pubDate>Tue, 02 Aug 2011 14:52:33 +0000</pubDate>
		<guid isPermaLink="false">http://blog.frankvh.com/?p=213#comment-229</guid>
		<description>Our supplier just informed me today how to interpret the version of the chip looking on the housing only (still don&#039;t know where to read it out of the fuses(?)). On my BGA-Chip the following data is given:

AT0945A          - Manufactured on Week 45 Year 2009, Rev-A
XMEGA16A4     - Device Name
CU-K               - Package Type - BGA
9H1120-1         - Lot Number

So, I&#039;m one of the unlucky ones out there who still has the oldest possible version A of the chip with all the nice bugs inside. :-(

Will tell you about news concerning the new version, as soon as I got them and made the first tests with it.</description>
		<content:encoded><![CDATA[<p>Our supplier just informed me today how to interpret the version of the chip looking on the housing only (still don&#8217;t know where to read it out of the fuses(?)). On my BGA-Chip the following data is given:</p>
<p>AT0945A          &#8211; Manufactured on Week 45 Year 2009, Rev-A<br />
XMEGA16A4     &#8211; Device Name<br />
CU-K               &#8211; Package Type &#8211; BGA<br />
9H1120-1         &#8211; Lot Number</p>
<p>So, I&#8217;m one of the unlucky ones out there who still has the oldest possible version A of the chip with all the nice bugs inside. <img src='http://blog.frankvh.com/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
<p>Will tell you about news concerning the new version, as soon as I got them and made the first tests with it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: frank</title>
		<link>http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/comment-page-1/#comment-225</link>
		<dc:creator>frank</dc:creator>
		<pubDate>Wed, 13 Jul 2011 19:08:07 +0000</pubDate>
		<guid isPermaLink="false">http://blog.frankvh.com/?p=213#comment-225</guid>
		<description>I&#039;ve read on the avrfreaks forums that revised silicon is coming. I don&#039;t know how to identify the &quot;fixed&quot; silicon, but it&#039;s great you&#039;re hearing it may actually be out. If you ever get the chance to test some new chips, do let us know the results.</description>
		<content:encoded><![CDATA[<p>I&#8217;ve read on the avrfreaks forums that revised silicon is coming. I don&#8217;t know how to identify the &#8220;fixed&#8221; silicon, but it&#8217;s great you&#8217;re hearing it may actually be out. If you ever get the chance to test some new chips, do let us know the results.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Edimahler</title>
		<link>http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/comment-page-1/#comment-224</link>
		<dc:creator>Edimahler</dc:creator>
		<pubDate>Wed, 13 Jul 2011 17:33:53 +0000</pubDate>
		<guid isPermaLink="false">http://blog.frankvh.com/?p=213#comment-224</guid>
		<description>Dear Frank,

Also many thanks from my side, this page is just great! Had troubles using the ADC also. Because I&#039;m using it already in the differential mode, only the divergences between the single conversions was a bigger problem. I solved it averaging by 16 or even 32 times sampling the same signal using 1MSPS. I found out, that this gives (at least for me) the smaller error and faster result than setting the ADC frequency to a smaller value. I&#039;ve very time critical code there. Averaging using an amount of 2^n (2, 4, 8, 16, 32,... times) has of course the big advantage, that you&#039;re able to do a fast shift operation instead of a really slow division by another value.

Today we had a supplier in house who told us, that the corrected chips should now be on market. I&#039;m also using the ATxmega16A4 as you did and read a &quot;H&quot; on the housing of the recently (some weeks ago) ordered pieces. Could this already be the new version? Which advanced fuse-register tells me about the version? (I can only see data like &quot;lot number&quot;, &quot;wafer number&quot;, &quot;wafer coordinates&quot; and so on...</description>
		<content:encoded><![CDATA[<p>Dear Frank,</p>
<p>Also many thanks from my side, this page is just great! Had troubles using the ADC also. Because I&#8217;m using it already in the differential mode, only the divergences between the single conversions was a bigger problem. I solved it averaging by 16 or even 32 times sampling the same signal using 1MSPS. I found out, that this gives (at least for me) the smaller error and faster result than setting the ADC frequency to a smaller value. I&#8217;ve very time critical code there. Averaging using an amount of 2^n (2, 4, 8, 16, 32,&#8230; times) has of course the big advantage, that you&#8217;re able to do a fast shift operation instead of a really slow division by another value.</p>
<p>Today we had a supplier in house who told us, that the corrected chips should now be on market. I&#8217;m also using the ATxmega16A4 as you did and read a &#8220;H&#8221; on the housing of the recently (some weeks ago) ordered pieces. Could this already be the new version? Which advanced fuse-register tells me about the version? (I can only see data like &#8220;lot number&#8221;, &#8220;wafer number&#8221;, &#8220;wafer coordinates&#8221; and so on&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: frank</title>
		<link>http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/comment-page-1/#comment-221</link>
		<dc:creator>frank</dc:creator>
		<pubDate>Tue, 24 May 2011 14:37:34 +0000</pubDate>
		<guid isPermaLink="false">http://blog.frankvh.com/?p=213#comment-221</guid>
		<description>From what I&#039;ve seen, the part has bigger problems to worry about. It&#039;s possible I have seen problems related to this; there&#039;s no way to know. I simply tried a variety of different sample rates and found the best results at 62 kS/s (along with doing the other things mentioned in the posts, ie external 2V reference, averaging of multiple results, etc).</description>
		<content:encoded><![CDATA[<p>From what I&#8217;ve seen, the part has bigger problems to worry about. It&#8217;s possible I have seen problems related to this; there&#8217;s no way to know. I simply tried a variety of different sample rates and found the best results at 62 kS/s (along with doing the other things mentioned in the posts, ie external 2V reference, averaging of multiple results, etc).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ER!K</title>
		<link>http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/comment-page-1/#comment-220</link>
		<dc:creator>ER!K</dc:creator>
		<pubDate>Tue, 24 May 2011 09:31:24 +0000</pubDate>
		<guid isPermaLink="false">http://blog.frankvh.com/?p=213#comment-220</guid>
		<description>Hello Frank,
in AVR1300 a minimum ADC clock frequency of 100kHz is recommended (due to self decharging of the S&amp;H capacitor leading to too low results, I guess). Since you recommend less than 100kHz, in fact 62kHz, have you experienced any problems or effects here?
Thank you and best regards, ER!K</description>
		<content:encoded><![CDATA[<p>Hello Frank,<br />
in AVR1300 a minimum ADC clock frequency of 100kHz is recommended (due to self decharging of the S&amp;H capacitor leading to too low results, I guess). Since you recommend less than 100kHz, in fact 62kHz, have you experienced any problems or effects here?<br />
Thank you and best regards, ER!K</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aziz</title>
		<link>http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/comment-page-1/#comment-208</link>
		<dc:creator>Aziz</dc:creator>
		<pubDate>Mon, 25 Apr 2011 13:38:53 +0000</pubDate>
		<guid isPermaLink="false">http://blog.frankvh.com/?p=213#comment-208</guid>
		<description>Hello Frank,
I understand why the unsigned offset exists.
I just wanted to ask why the Signed offset function exist in Atmel code sample, although the signed differential mode is assumed to have no offset. At the moment, I think signed single-ended measurment mode has a similar offset as the unsigned mode, but I won&#039;t use it anyway.
Thank you very much for the reply.</description>
		<content:encoded><![CDATA[<p>Hello Frank,<br />
I understand why the unsigned offset exists.<br />
I just wanted to ask why the Signed offset function exist in Atmel code sample, although the signed differential mode is assumed to have no offset. At the moment, I think signed single-ended measurment mode has a similar offset as the unsigned mode, but I won&#8217;t use it anyway.<br />
Thank you very much for the reply.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: frank</title>
		<link>http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/comment-page-1/#comment-207</link>
		<dc:creator>frank</dc:creator>
		<pubDate>Fri, 22 Apr 2011 17:09:43 +0000</pubDate>
		<guid isPermaLink="false">http://blog.frankvh.com/?p=213#comment-207</guid>
		<description>I presume you&#039;re asking about the UNsigned &quot;get offset&quot; function. The unsigned &quot;get offset&quot; performs an unsigned ADC measurement. From my original post: 

&quot;In unsigned mode, the “negative” input of the ADC is tied to an internally generated voltage which is at the approximate midpoint of the ADC reference voltage. The problem is this internally generated voltage is very unstable, which has the effect of producing widely varying ADC outputs for a stable input voltage.&quot;  

That&#039;ll explain why taking an unsigned offset measurement is going to give a crazy result.</description>
		<content:encoded><![CDATA[<p>I presume you&#8217;re asking about the UNsigned &#8220;get offset&#8221; function. The unsigned &#8220;get offset&#8221; performs an unsigned ADC measurement. From my original post: </p>
<p>&#8220;In unsigned mode, the “negative” input of the ADC is tied to an internally generated voltage which is at the approximate midpoint of the ADC reference voltage. The problem is this internally generated voltage is very unstable, which has the effect of producing widely varying ADC outputs for a stable input voltage.&#8221;  </p>
<p>That&#8217;ll explain why taking an unsigned offset measurement is going to give a crazy result.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Phil</title>
		<link>http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/comment-page-1/#comment-204</link>
		<dc:creator>Phil</dc:creator>
		<pubDate>Thu, 07 Apr 2011 22:44:44 +0000</pubDate>
		<guid isPermaLink="false">http://blog.frankvh.com/?p=213#comment-204</guid>
		<description>Thanks Frank
Great Errata sheet, I am just about to start using these chips, so all very handy to know
Thanks again</description>
		<content:encoded><![CDATA[<p>Thanks Frank<br />
Great Errata sheet, I am just about to start using these chips, so all very handy to know<br />
Thanks again</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aziz</title>
		<link>http://blog.frankvh.com/2010/01/03/atmel-xmega-adc-problems-solutions/comment-page-1/#comment-202</link>
		<dc:creator>Aziz</dc:creator>
		<pubDate>Mon, 28 Mar 2011 13:53:53 +0000</pubDate>
		<guid isPermaLink="false">http://blog.frankvh.com/?p=213#comment-202</guid>
		<description>Hello Frank,
very useful article &amp; blog, thank you very much!
What did you mean with &quot;Consider assuming the ADC offset is zero.&quot; at summary? Only the differential mode, right?
Unsigned, single-ended mode has a huge offset, as stated on the application note, around 200 counts. It is proposed to measure this offset by connecting the used external pin at actual configuration to GND, which sucks.
As you stated, signed, differential mode can be considered as offsetless (as I also found out experimentally), but the funny thing:
At the given sample driver code, they supply a function;  
int8_t ADC_Offset_Get_Signed(ADC_t * adc, ADC_CH_t *ch, bool oversampling);
as well as int8_t ADC_Offset_Get_Unsigned(ADC_t * adc, ADC_CH_t *ch, bool oversampling);
Do you have an idea, what for the signed one does exist? It ruins the measurment result.</description>
		<content:encoded><![CDATA[<p>Hello Frank,<br />
very useful article &amp; blog, thank you very much!<br />
What did you mean with &#8220;Consider assuming the ADC offset is zero.&#8221; at summary? Only the differential mode, right?<br />
Unsigned, single-ended mode has a huge offset, as stated on the application note, around 200 counts. It is proposed to measure this offset by connecting the used external pin at actual configuration to GND, which sucks.<br />
As you stated, signed, differential mode can be considered as offsetless (as I also found out experimentally), but the funny thing:<br />
At the given sample driver code, they supply a function;<br />
int8_t ADC_Offset_Get_Signed(ADC_t * adc, ADC_CH_t *ch, bool oversampling);<br />
as well as int8_t ADC_Offset_Get_Unsigned(ADC_t * adc, ADC_CH_t *ch, bool oversampling);<br />
Do you have an idea, what for the signed one does exist? It ruins the measurment result.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

