<?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>SPI Manager seems slower than using raw SPI master code</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/30460/spi-manager-seems-slower-than-using-raw-spi-master-code</link><description>I am trying to migrate a blocking SPI transfer code to a non-blocking SPI Manager schedule call. I have 16 transfers queued up in one transaction. 
 When I launch it, the complete transaction takes ~300us. If I use the old code, the 16 transfers only</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 13 Jul 2018 10:02:51 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/30460/spi-manager-seems-slower-than-using-raw-spi-master-code" /><item><title>RE: SPI Manager seems slower than using raw SPI master code</title><link>https://devzone.nordicsemi.com/thread/140044?ContentTypeID=1</link><pubDate>Fri, 13 Jul 2018 10:02:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c3696bf4-8459-47df-93b1-a11a154c59e0</guid><dc:creator>Constantin</dc:creator><description>&lt;p&gt;What should be ESB, enhanced shockburst?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SPI Manager seems slower than using raw SPI master code</title><link>https://devzone.nordicsemi.com/thread/120879?ContentTypeID=1</link><pubDate>Wed, 14 Feb 2018 15:33:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:466e89a6-dbb7-425b-aa76-eddfd193bb78</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Sounds like something in the system is blocking or delaying your transactions. It could be esb. You could try disabling that for testing purposes to double-check.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SPI Manager seems slower than using raw SPI master code</title><link>https://devzone.nordicsemi.com/thread/120842?ContentTypeID=1</link><pubDate>Wed, 14 Feb 2018 14:00:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a9fb63dd-e1a6-40ac-a403-b0a0dbde8966</guid><dc:creator>Attila</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;span&gt;H&amp;aring;kon,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I&amp;#39;m only&amp;nbsp;sending/receiving 2 bytes per transfer, hence the 16 x 2 byte array. (uint16_t rx_buffer[16])&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;At the time NRF_LOG was turned off, but I had the esb module on. Do you think that can cause slowdowns?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SPI Manager seems slower than using raw SPI master code</title><link>https://devzone.nordicsemi.com/thread/120838?ContentTypeID=1</link><pubDate>Wed, 14 Feb 2018 13:54:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:588d7eed-b25d-4eb5-885b-5db8e40ec71b</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I did a 16 bytes x 16 transfers using the nrf_spi_mngr and it takes ~0.635 ms at 4 MHz at my end:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-f82878bdf0744d918c8c08034f0216a2/pastedimage1518616133257v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;Not sure about the amount of bytes each queued transferred at your end, or what your speed is, but it is close to the theoretical transfer time of&amp;nbsp; (1/4M * (16 bytes * 8) * 16 transfers) = 512 us.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Here&amp;#39;s my test-code, based on example spi_master_using_nrf_spi_mngr in SDK 14.2.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-f82878bdf0744d918c8c08034f0216a2/main.c"&gt;devzone.nordicsemi.com/.../main.c&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Could you check if disabling the NRF_LOG module improves the scenario at your end? Could be uart prints that slows you down.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>