<?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>Help with adding an I2C recovery pulse</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/112517/help-with-adding-an-i2c-recovery-pulse</link><description>Hello, 
 I&amp;#39;d like to add the transmission of an I2C recovery pulse (where you toggle SCK 10 times) to my startup routine for an offboard device whose state I&amp;#39;m uncertain of. 
 
 I&amp;#39;ve been looking through the drivers in i2c_nrfx_twim.c and i2c_nrfx_twi</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 28 Jun 2024 14:24:28 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/112517/help-with-adding-an-i2c-recovery-pulse" /><item><title>RE: Help with adding an I2C recovery pulse</title><link>https://devzone.nordicsemi.com/thread/491388?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 14:24:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3d79f687-3ef9-4c5c-be6e-59c40e1cf287</guid><dc:creator>Glen M</dc:creator><description>&lt;p&gt;Yes I found that function as I mentioned, but I had a hard time finding where the function&amp;nbsp;&lt;span&gt;nrfx_twim_bus_recover() that it calls lives. I looked again this morning and&amp;nbsp;&lt;/span&gt;I found that it ultimately ends up calling&amp;nbsp;nrfx_twi_twim_bus_recover in nrfx_twi_twim.c.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I did manage to get this to work, so I&amp;#39;ll close this topic. A note to future post-finders, the code in&amp;nbsp;nrfx_twi_twim_bus_recover checks to see if the SDA pin is high and it doesn&amp;#39;t send the reset pulse if it is. I guess this procedure is only meant to release a stuck SDA line.&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span&gt;const&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;struct&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;TM065049_config&lt;/span&gt;&lt;span&gt; *&lt;/span&gt;&lt;span&gt;config&lt;/span&gt;&lt;span&gt; = &lt;/span&gt;&lt;span&gt;m_dev_copy&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;config&lt;/span&gt;&lt;span&gt;; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span&gt;i2c_recover_bus&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;config&lt;/span&gt;&lt;span&gt;-&amp;gt;&lt;/span&gt;&lt;span&gt;i2c&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;bus&lt;/span&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: Help with adding an I2C recovery pulse</title><link>https://devzone.nordicsemi.com/thread/491384?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 14:10:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:334cbefe-b1e6-488b-83f0-b665662dbf4c</guid><dc:creator>Naeem Maroof</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;I just opened NCS 2.6.1, and I could see that the&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;i2c_nrfx_twim_recover_bus()&lt;/span&gt; function is defined in &lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;i2c_nrfx_twim.c&lt;/span&gt; file&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1719583636293v1.png" alt=" " /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>