<?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 master driver stops sending after successful transfer of 2 bytes</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/72359/twi-master-driver-stops-sending-after-successful-transfer-of-2-bytes</link><description>Dear support team 
 Please note my sample application code attached, and the trace of the I2C transmission 
 I am facing the issue that the twi driver does not write more than slave-address + 1 byte of data onto I2C at once, although the application requests</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 05 Mar 2021 14:33:24 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/72359/twi-master-driver-stops-sending-after-successful-transfer-of-2-bytes" /><item><title>RE: TWI master driver stops sending after successful transfer of 2 bytes</title><link>https://devzone.nordicsemi.com/thread/298133?ContentTypeID=1</link><pubDate>Fri, 05 Mar 2021 14:33:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f8d8822f-cfef-4662-b6e7-ba3b2604347e</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Thanks for the update Marko, glad to hear that you found&amp;nbsp; a way to get around this. To me it looks like the problem could be that the slave doesn&amp;#39;t release the clock line for some reason and thus preventing the master from clocking out the last byte.&lt;/p&gt;
&lt;p&gt;I think it could be interesting to try compare the scope traces of when it works and when it doesn&amp;#39;t.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TWI master driver stops sending after successful transfer of 2 bytes</title><link>https://devzone.nordicsemi.com/thread/298127?ContentTypeID=1</link><pubDate>Fri, 05 Mar 2021 14:26:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1e04cbf4-4830-4ef1-827c-f5bc5ed8f12f</guid><dc:creator>mhammer3</dc:creator><description>&lt;p&gt;Hi Vidar&lt;/p&gt;
&lt;p&gt;thanks for you reply.&lt;/p&gt;
&lt;p&gt;1. Yes, the I2C SCK line remains low after the byte of 36. It should still send the byte of 0x82.&lt;/p&gt;
&lt;p&gt;2. No, I have not. It always stops after address + 1 byte of data.&lt;/p&gt;
&lt;p&gt;3. 0x36 0x82 is the command of getting the serial identifier. it is not documented in the data sheet, but is used in the sample code&amp;nbsp;provided by Sensirion:&amp;nbsp;&lt;a href="https://github.com/Sensirion/embedded-sgp"&gt;https://github.com/Sensirion/embedded-sgp&lt;/a&gt;. I verified on a STM32L462RE device this command is working fine.&lt;/p&gt;
&lt;p&gt;Anyway, in the meantime I switched to using the Zephyr device driver model analog to the example of &amp;quot;v1.5.0\zephyr\samples\boards\bbc_microbit\line_follower_robot&amp;quot;.&lt;/p&gt;
&lt;p&gt;This working fine for me.&lt;/p&gt;
&lt;p&gt;Although I am curious as to why using the twi driver directly does not work for me, I am good for now and we can close this ticket. I will let you know in case I need to use the driver directly again.&lt;/p&gt;
&lt;p&gt;Thanks again for your help.&lt;/p&gt;
&lt;p&gt;Marko&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TWI master driver stops sending after successful transfer of 2 bytes</title><link>https://devzone.nordicsemi.com/thread/298112?ContentTypeID=1</link><pubDate>Fri, 05 Mar 2021 13:43:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3ca9b3bf-76c2-45e7-86f4-02a7c94f18cb</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hi Marko,&lt;/p&gt;
&lt;p&gt;I haven&amp;#39;t really studied the data sheet for this particular sensor yet, but I have a few quick follow up questions I was hoping you could answer first:&lt;/p&gt;
&lt;p&gt;1. Does the clock signal low remain low after you have sent the last 0x36 byte?&lt;/p&gt;
&lt;p&gt;2. Have you able to send multiple bytes for other commands?&lt;/p&gt;
&lt;p&gt;3. What is 0x36 0x82 supposed to do. I didn&amp;#39;t find 0x82 mentioned anywhere in the datasheet.&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><item><title>RE: TWI master driver stops sending after successful transfer of 2 bytes</title><link>https://devzone.nordicsemi.com/thread/297822?ContentTypeID=1</link><pubDate>Thu, 04 Mar 2021 13:33:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:742e5dc3-3748-4e55-9048-ce89fd750d19</guid><dc:creator>mhammer3</dc:creator><description>&lt;p&gt;All, please note the heading of this ticket is incorrect.&lt;/p&gt;
&lt;p&gt;A better title is:&lt;/p&gt;
&lt;h1 class="name"&gt;TWI master driver stops sending after successful transfer of slave address + 1 data byte&lt;/h1&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>