<?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>SoftDevice Safe TWI Implementation Broke with SDK 8.0.0</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/6024/softdevice-safe-twi-implementation-broke-with-sdk-8-0-0</link><description>So I&amp;#39;ve been using a user submitted SD safe TWI implementation that I found here. This has worked well so far, but upon updating to SDK 8.0.0 parts have broken. Now when I perform reads it continues to read past the correct number of bytes for long period</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 13 Mar 2015 00:20:58 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/6024/softdevice-safe-twi-implementation-broke-with-sdk-8-0-0" /><item><title>RE: SoftDevice Safe TWI Implementation Broke with SDK 8.0.0</title><link>https://devzone.nordicsemi.com/thread/21059?ContentTypeID=1</link><pubDate>Fri, 13 Mar 2015 00:20:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7a8afd7e-1a46-456a-ab2a-410a66c7109e</guid><dc:creator>Seth</dc:creator><description>&lt;p&gt;This one was dumb, but my application was expecting SD 8, but I still had SD 7 in memory and because the TWI implementation I was using was calling SD functions, unexpected behavior resulted. Now to solve my other various SDK upgrade related issues...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SoftDevice Safe TWI Implementation Broke with SDK 8.0.0</title><link>https://devzone.nordicsemi.com/thread/21058?ContentTypeID=1</link><pubDate>Fri, 13 Mar 2015 00:19:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:33769de1-5a6f-4b7b-9575-92e9ef021b32</guid><dc:creator>Seth</dc:creator><description>&lt;p&gt;This is a good point about checking success. I can;t give you a great answer for why the provided library code doesn&amp;#39;t work, but it has something to do with the SD using the PPI channels, and it does not work with the soft device initialized. I did solve my issue, about to post the answer below.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SoftDevice Safe TWI Implementation Broke with SDK 8.0.0</title><link>https://devzone.nordicsemi.com/thread/21057?ContentTypeID=1</link><pubDate>Fri, 13 Mar 2015 00:01:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a3d571a9-c04c-473f-9728-4c1289645cbe</guid><dc:creator>RK</dc:creator><description>&lt;p&gt;In what way is the standard twi_hw_master.c not softdevice safe, what happens when you just use that code as-is with a softdevice?&lt;/p&gt;
&lt;p&gt;As far as I can see from diff-ing that code it just replaces all the NRF_PPI-&amp;gt;CH[0] calls with sd_ppi_* ones which do exactly the same thing, I&amp;#39;ve not found a place it differs yet. It is true that when the SD is enabled one is encouraged to use the sd_* calls to ensure you&amp;#39;re accessing available resources, but in this case you are, PPI channel 0 is reserved for the application, so the two should be identical (one without the SD overhead).&lt;/p&gt;
&lt;p&gt;The only other comment I can make about that code is it calls the sd_ functions but doesn&amp;#39;t check their return values, again they ought to return success, but checking them would be good, even just in debug mode.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SoftDevice Safe TWI Implementation Broke with SDK 8.0.0</title><link>https://devzone.nordicsemi.com/thread/21056?ContentTypeID=1</link><pubDate>Thu, 12 Mar 2015 21:03:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e7f07df4-f3e4-4dc6-9445-7ad523230598</guid><dc:creator>Matt Barr</dc:creator><description>&lt;p&gt;Ouch, that&amp;#39;s the TWI version I am using as well. Are you also using S110 8.0.0 and IC rev 3?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>