<?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>I2C SDA Ack half voltage</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/74872/i2c-sda-ack-half-voltage</link><description>Hello, 
 
 Im using a NRF52840 custom made board and im having some issue with the I2C communication. There are 3 units on the I2C line, the MCU and two sensors, the diagram illustrates the setup: My problem is that during startup when communication starts</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 10 May 2021 15:30:33 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/74872/i2c-sda-ack-half-voltage" /><item><title>RE: I2C SDA Ack half voltage</title><link>https://devzone.nordicsemi.com/thread/309048?ContentTypeID=1</link><pubDate>Mon, 10 May 2021 15:30:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d0114e76-6287-45eb-9622-7ac90de8feeb</guid><dc:creator>hmolesworth</dc:creator><description>&lt;p&gt;If the voltage level on Ack is still at 50% then Is there any other code touching the SDA port? The level does look suspiciously like a standard-drive nRF52 io pin driving high instead of floating. The setting should be &lt;em&gt;H0D1&lt;/em&gt; for SDA; hit a breakpoint just after the transfer and bring up the debug window for port P0 and verify it has indeed been set to that. I assume the pins are not left in LFXTAL mode, by the way; P0.00 is an output driver in LFCLK mode; that means do not use the external LF crystal selection active (often the case in examples). The LFCLK external crystal mode eclipses the I2C/TWI mode.&lt;/p&gt;
&lt;p&gt;Otherwise&amp;nbsp;I would try awneil&amp;#39;s suggestion and physically disconnect the other I2C device INA260 in case there is some issue with that, though hard to see what as the addresses are different and the INA260 should just be setting its SDA to open drain and never trying to drive it high.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: I2C SDA Ack half voltage</title><link>https://devzone.nordicsemi.com/thread/308868?ContentTypeID=1</link><pubDate>Mon, 10 May 2021 07:00:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c95d428e-0be7-46b2-adfc-83fba6d33627</guid><dc:creator>Axel Astrom</dc:creator><description>&lt;p&gt;Thanks for the reply,&lt;br /&gt;&lt;br /&gt;I have checked the design and CS and MISO are indeed connected to GND.&lt;br /&gt;&lt;br /&gt;Seems I have been looking at an old version of the datasheet, I was not aware of the limitation regarding the number of devices allowed on the I2C to be able to run at 400 kHz.&lt;br /&gt;&lt;br /&gt;I have tried removing the external pull-ups and measured the pull-up resistance on SDA to 12 k Ohm and the pull-up on SCL to be 13k Ohm. The problem still persist.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: I2C SDA Ack half voltage</title><link>https://devzone.nordicsemi.com/thread/308790?ContentTypeID=1</link><pubDate>Fri, 07 May 2021 16:07:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3bf13e99-19dc-499b-980c-d72930cc2757</guid><dc:creator>hmolesworth</dc:creator><description>&lt;p&gt;You are violating the guidelines on SDA pull-up for this part; given there is an &lt;em&gt;internal&lt;/em&gt; 10k pull-up on SDA the guidelines show no pull-up for stand-alone operation and a 10k external pull-up for up to 3 other I2C devices. The drive output on the AS3935 is poor and has a 100kHz limit with multiple I2C devices, so try&amp;nbsp;just removing the 10k external on SDA given the internal 13k is already enabled.&lt;/p&gt;
&lt;p&gt;13k || 10k || 4k7 = 2.6k&lt;/p&gt;
&lt;p&gt;Also CS and MISO should be connected to Gnd in I2C mode, worth a check.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: I2C SDA Ack half voltage</title><link>https://devzone.nordicsemi.com/thread/308784?ContentTypeID=1</link><pubDate>Fri, 07 May 2021 15:12:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a632d596-ebc2-4127-b4cd-2d8be1965953</guid><dc:creator>awneil</dc:creator><description>[quote userid="6462" url="~/f/nordic-q-a/74872/i2c-sda-ack-half-voltage/308763#308763"]it looks like something is trying to actively drive the SDA line high[/quote]
&lt;p&gt;re-reading the OP:&lt;/p&gt;
[quote userid="104147" url="~/f/nordic-q-a/74872/i2c-sda-ack-half-voltage"] found that this problem can be related to the configuration of the I2C pins. More specific that they are not configured as Open-drain.[/quote]
&lt;p&gt;Yes, it does appear that &lt;em&gt;something&lt;/em&gt; on the bus is not open-drain; ie, &lt;i&gt;something&lt;/i&gt;&amp;nbsp;is actively driving the SDA line high.&lt;/p&gt;
&lt;p&gt;You could try disconnecting things to find which one it is ...&lt;/p&gt;
&lt;p&gt;Your SCL pin looks OK - so try comparing the SDA config with the&amp;nbsp;SCL config ...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: I2C SDA Ack half voltage</title><link>https://devzone.nordicsemi.com/thread/308776?ContentTypeID=1</link><pubDate>Fri, 07 May 2021 14:40:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:23bf162a-0ebc-45b9-aadc-0fe471a92186</guid><dc:creator>Axel Astrom</dc:creator><description>&lt;p&gt;Hello,&lt;br /&gt;&lt;br /&gt;Thank you for your input! Yes im sure the AS3935 is configured correctly, I have the SI (Select Interface) pin connected to VDD which according to the datasheet should enable the I2C interface.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: I2C SDA Ack half voltage</title><link>https://devzone.nordicsemi.com/thread/308763?ContentTypeID=1</link><pubDate>Fri, 07 May 2021 13:34:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5669712f-b652-4f6e-97de-a2d3603b4af2</guid><dc:creator>awneil</dc:creator><description>&lt;p&gt;You seem to have a rather slow rise on SCL - suggest the pullups are too big.&lt;/p&gt;
&lt;p&gt;More important, it looks like something is trying to actively drive the SDA line high - compare it to the SCL trace, where all the rising edges are slow.&lt;/p&gt;
&lt;p&gt;The&amp;nbsp;&lt;span&gt;AS3935&amp;nbsp;does both I2C and SPI - are you sure you have it correctly configured?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>