<?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>nRF24 SPI woes</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/38807/nrf24-spi-woes</link><description>Hi folks, I am trying to talk to the nRF241L from a PIC 16F688. It is my first time with SPI, and to complicate matters I code in assembly only so cannot refer to online examples... 
 Anyway, I am happy with my SPI routine, I think, but I am not quite</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 24 Sep 2018 08:25:16 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/38807/nrf24-spi-woes" /><item><title>RE: nRF24 SPI woes</title><link>https://devzone.nordicsemi.com/thread/149952?ContentTypeID=1</link><pubDate>Mon, 24 Sep 2018 08:25:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:110562d8-56bd-4628-820b-3323cecf110e</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Your communication seems to be working perfectly &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;/p&gt;
&lt;p&gt;If you refer to the list of SPI commands in chapter 8 of the nRF24L01+ product specification you can see that command 0x00 corresponds to the R_REGISTER command, which means you are trying to read register 0x00 (CONFIG).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The first byte returned while outputting the SPI command is the STATUS register, which defaults to 0x0E (regardless of which register you are trying to write or read the STATUS register will always be returned on the first byte).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The second byte returned is the value of the CONFIG register, which is 0x08. Again this happens to be the default value of the register, leading me to believe the communication is good.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;To check this further you can try to set one of the bits in the CONFIG register, such as the PWR_UP bit:&lt;/p&gt;
&lt;p&gt;First set the PWR_UP bit high&amp;nbsp;by sending the following SPI command: 0x20, 0x0A&lt;/p&gt;
&lt;p&gt;Then try to read it back and verify that the register is set.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>