<?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>TWIM does not recover after pull‑up power domain is cycled with nRF54L15</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/122718/twim-does-not-recover-after-pull-up-power-domain-is-cycled-with-nrf54l15</link><description>Hi all, 
 I&amp;#39;m encountering an issue with the TWIM30 interface on the nRF54L15 (pins P0.03 - SDA, and P0.04 - SCL), using vanilla Zephyr v4.2.0-rc1. 
 The setup involves external I2C pull-ups powered through a separate power domain. Internal pull-ups are</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 04 Jul 2025 12:35:41 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/122718/twim-does-not-recover-after-pull-up-power-domain-is-cycled-with-nrf54l15" /><item><title>RE: TWIM does not recover after pull‑up power domain is cycled with nRF54L15</title><link>https://devzone.nordicsemi.com/thread/541456?ContentTypeID=1</link><pubDate>Fri, 04 Jul 2025 12:35:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4527ab43-5d75-43bd-9f3b-6294e85ccfcd</guid><dc:creator>ketiljo</dc:creator><description>[quote user="van.petrosyan"]Nevertheless, even if the power is always on, accidental shorting of SCL line can still happen (especially during cert tests), and I would expect the interface to recover without rebooting the firmware.&amp;nbsp;[/quote]
&lt;p&gt;True, but this is different from floating. In case the I2C lines are not clearly defined high or low, the interface can fail. Best to have the lines always defined high when not in use. Then you can safely remove power to the slaves on the interface.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TWIM does not recover after pull‑up power domain is cycled with nRF54L15</title><link>https://devzone.nordicsemi.com/thread/541452?ContentTypeID=1</link><pubDate>Fri, 04 Jul 2025 12:22:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bc36967b-66df-4747-861b-5f6288bd9dd2</guid><dc:creator>van.petrosyan</dc:creator><description>&lt;p&gt;Thanks for your reply! Good point regarding the power domain being connected to the pull-ups, it&amp;#39;s indeed unnecessary&amp;nbsp;&lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The same domain is also connected to the external sensors, so I need to drive it low/high to save power regardless. And of course in our use case we won&amp;#39;t have a situation where firmware is attempting an i2c operation when the power domain is off.&amp;nbsp; Nevertheless, even if the power is always on, accidental shorting of SCL line can still happen (especially during cert tests), and I would expect the interface to recover without rebooting the firmware.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TWIM does not recover after pull‑up power domain is cycled with nRF54L15</title><link>https://devzone.nordicsemi.com/thread/541440?ContentTypeID=1</link><pubDate>Fri, 04 Jul 2025 11:29:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4a7faca6-0faf-4c70-ae8a-fbf7bbde3683</guid><dc:creator>ketiljo</dc:creator><description>&lt;p&gt;Why do you turn off the power domain where the pull ups are connected? I2C idle state is high, so no current will flow when the I2C is not in use.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;If the other power domain has a different voltage than the nRF54L15&amp;#39;s supply voltage, this is not the way to do it, you need level shifters instead.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TWIM does not recover after pull‑up power domain is cycled with nRF54L15</title><link>https://devzone.nordicsemi.com/thread/541418?ContentTypeID=1</link><pubDate>Fri, 04 Jul 2025 09:09:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a5e47295-1aaa-44d9-ba2c-db8707e4cfa6</guid><dc:creator>van.petrosyan</dc:creator><description>&lt;p data-start="73" data-end="145"&gt;As an additional experiment, I tried manually pulling the I2C lines low:&amp;nbsp;shorting SCL to GND causes the same unrecoverable state with the TWIM peripheral hangs and never recovers, even after the line is released. Shorting SDA to GND, on the other hand, does not cause this behavior, the bus recovers and communication resumes normally once the line is released.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>