<?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>Verifying 32MHz Operation</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/71844/verifying-32mhz-operation</link><description>We have a product that uses a module containing NR52832 and also both 32kHz and 32MHz crystals. This has been operating correctly and is in full scale production. 
 
 On our latest batch of boards we have found that there is a noticable failure rate of</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 23 Feb 2021 09:34:17 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/71844/verifying-32mhz-operation" /><item><title>RE: Verifying 32MHz Operation</title><link>https://devzone.nordicsemi.com/thread/295758?ContentTypeID=1</link><pubDate>Tue, 23 Feb 2021 09:34:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4eb6ef27-516d-4f16-a67a-b33d41e0e8c8</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;I see, let me know if there is anything else I can do for you! If you are able to get to the bottom of this I&amp;#39;m sure it would be helpful for the community as a whole to know what the issue was and how it was resolved!&lt;/p&gt;
&lt;p&gt;Best of luck and regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Verifying 32MHz Operation</title><link>https://devzone.nordicsemi.com/thread/295640?ContentTypeID=1</link><pubDate>Mon, 22 Feb 2021 14:38:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d1d1cda7-4a83-4eb3-b1c1-68ee122799ee</guid><dc:creator>Andrew</dc:creator><description>&lt;p&gt;Thankyou Simon.&amp;nbsp; Yes that is correct, a small percentage of boards from our latest batch show no 32MHz crystal activity.&lt;/p&gt;
&lt;p&gt;I have managed to identify the errant boards in firmware by using the code below in SDK15.&amp;nbsp; &amp;nbsp;I trust this relates to the same registers as you have described.&lt;/p&gt;
&lt;p&gt;Unfortunately the placement of the crystal and the capacitors is beyond our control as we are placing a pre populated module.&amp;nbsp; The module manufacturer is currently investigating how these might have failed to help with future production, but I shall be using this firmware routine to test existing boards that have been built up.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;pre class="ui-code" data-mode="c_cpp"&gt;sd_clock_hfclk_request();

..pause..

if (nrf_drv_clock_hfclk_is_running())
{
    ... board is good ...
}
else
{
    ... board has failed ...
}

sd_clock_hfclk_release();&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Verifying 32MHz Operation</title><link>https://devzone.nordicsemi.com/thread/295580?ContentTypeID=1</link><pubDate>Mon, 22 Feb 2021 13:12:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:824a084d-c3e3-4371-bf26-2b05dff3a2cd</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;So you&amp;#39;re not seeing any activity on the external 32MHz crystal what so ever in a small percentage of your boards, is that right? A common mistake that we see when the 32MHz crystal is malfunctioning or not working at all is that the crystal itself has been mounted incorrectly on the board (offset by 90 degrees) as it is possible to solder on both ways. Please check if this might be the case.&lt;/p&gt;
&lt;p&gt;I assume you&amp;#39;re using our SDK and SoftDevice in your application, what version of these are you using? The SoftDevice will start and stop the HFXO whenever it needs to (for radio operations that is), but you can also start the HFXO by yourself with a function like this for example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;static void clock_init(void)
{
    // Start 64 MHz crystal oscillator.
    NRF_CLOCK-&amp;gt;EVENTS_HFCLKSTARTED = 0;
    NRF_CLOCK-&amp;gt;TASKS_HFCLKSTART    = 1;

    // Wait for the external oscillator to start up.
    while (NRF_CLOCK-&amp;gt;EVENTS_HFCLKSTARTED == 0)
    {
        // Do nothing.
    }
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;As for cross-checking the external crystals against each other, that has been explained in this thread, so please check it out if that interests you.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>