<?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>TWI SDA SCL held low during reset when using TWIS</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/67558/twi-sda-scl-held-low-during-reset-when-using-twis</link><description>Hi to community! 
 
 I have a trouble with nRF52840 when using TWIS. I initialize the peripheral by below code. If the device is reset using default pin 18 by the external controller, SDA and SCL pins are held low, so the communication with other sensors</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 26 Oct 2020 14:39:30 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/67558/twi-sda-scl-held-low-during-reset-when-using-twis" /><item><title>RE: TWI SDA SCL held low during reset when using TWIS</title><link>https://devzone.nordicsemi.com/thread/276923?ContentTypeID=1</link><pubDate>Mon, 26 Oct 2020 14:39:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2c2eafd8-fc2c-47c8-9309-4404ec82adf3</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;&amp;nbsp;Sorry. But are you able to use workaround you already suggested? As I indicated earlier, the pin state is not defined in reset. The documented reset values applies to when the internal reset sequence is completed (ie after you release the reset line).&amp;nbsp; Although, I do understand it might be surprising that the pins become configured as outputs in this case.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TWI SDA SCL held low during reset when using TWIS</title><link>https://devzone.nordicsemi.com/thread/276873?ContentTypeID=1</link><pubDate>Mon, 26 Oct 2020 13:18:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1d27ca58-19dc-4f2c-baad-a79d46ae4df9</guid><dc:creator>pavel.kucera</dc:creator><description>&lt;p&gt;From my point of view this discussion leads to nowhere. Could you please guide me to the documentation, where one could read that pin states are undefined during reset? So I can tell that to customer, it is not my fault as a FW programmer, that those pins are low during reset?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TWI SDA SCL held low during reset when using TWIS</title><link>https://devzone.nordicsemi.com/thread/276799?ContentTypeID=1</link><pubDate>Mon, 26 Oct 2020 09:35:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:07b9487b-8d74-4837-b20c-03593bbf3e05</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;I guess the IO state may depend on when the board in reset.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TWI SDA SCL held low during reset when using TWIS</title><link>https://devzone.nordicsemi.com/thread/276797?ContentTypeID=1</link><pubDate>Mon, 26 Oct 2020 09:31:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a9e0f464-a9f0-4ef6-99de-957bde4c3c31</guid><dc:creator>pavel.kucera</dc:creator><description>&lt;p&gt;If the nRF knew about need to reset ahead, there wouldn&amp;#39;t be need to issue reset via GPIO pin but will use some sort of SW reset instead. It seem similar to problem described &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/46530/uart-tx-pin-pulls-down-during-reset"&gt;here&lt;/a&gt; with UART. The difference here is that UART TX pin is output (push-pull or open-drain), but TWIS SCL and SDA pins should be inputs at least between transactions but during reset the change to outputs. I&amp;#39;ve never seen such behavior during my carreer before.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TWI SDA SCL held low during reset when using TWIS</title><link>https://devzone.nordicsemi.com/thread/276790?ContentTypeID=1</link><pubDate>Mon, 26 Oct 2020 08:15:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e5267384-0d6c-47c4-b308-4709eb67d8bb</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Does the nRF know ahead of time if the master is going to assert the reset line? In that case, you could try disabling the TWIS and re-configure the GPIOs back to their reset value before the reset takes place.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TWI SDA SCL held low during reset when using TWIS</title><link>https://devzone.nordicsemi.com/thread/276735?ContentTypeID=1</link><pubDate>Sat, 24 Oct 2020 13:44:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d2e3c36d-527d-4cc4-b980-ad8ea27e044d</guid><dc:creator>pavel.kucera</dc:creator><description>&lt;p&gt;The main problem is with the fact the bus is held low while nRF held in reset state via pin, other slaves on the bus cannot be commanded in that time including HW watchdog sitting as slave on I2C bus. I2C state machine of master is not the issue here. Even in case master is stuck, I cannot do bit-banging with SCL to release the bus, as the lines are driven low by nRF.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TWI SDA SCL held low during reset when using TWIS</title><link>https://devzone.nordicsemi.com/thread/276692?ContentTypeID=1</link><pubDate>Fri, 23 Oct 2020 15:36:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c7f5e9b0-be4f-4f8a-94cd-f8260a759bb1</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Does this cause the TWI master to get stuck in a bad state? I think it&amp;#39;s usually the other way around (ref. &lt;a href="https://www.i2c-bus.org/i2c-primer/analysing-obscure-problems/blocked-bus/"&gt;blocke I2C bus&lt;/a&gt;)&amp;nbsp; nRF pin states are undefined during reset, so I&amp;#39;m afraid we can&amp;#39;t guarantee a Hi-Z state.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Vidar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>