<?xml-stylesheet type="text/xsl" href="https://community.element14.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/"><channel><title>Raspberry Pi 2 : GPIO usage (with nRF24L01+, Arduino)</title><link>/products/raspberry-pi/b/blog/posts/raspberry-pi-2-gpio-usage-with-nrf24l01-arduino</link><description>IntroIn this blog post I will describe how I used the SPI interface of the Raspberry Pi 2 (and Raspberry Pi) to communicate with an Arduino board.Both the RPi and Arduino are connected to a nRF24L01+ chip to communicate with each other via the SPI in</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: Raspberry Pi 2 : GPIO usage (with nRF24L01+, Arduino)</title><link>https://community.element14.com/products/raspberry-pi/b/blog/posts/raspberry-pi-2-gpio-usage-with-nrf24l01-arduino</link><pubDate>Fri, 20 Jan 2017 12:43:51 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cb99d989-47cb-4481-8cdf-9e09b125904d</guid><dc:creator>balearicdynamics</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Nice post Lana, don&amp;#39;t you think that this flat cable can be too long in some use cases?&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Enrico&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=20402&amp;AppID=86&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Raspberry Pi 2 : GPIO usage (with nRF24L01+, Arduino)</title><link>https://community.element14.com/products/raspberry-pi/b/blog/posts/raspberry-pi-2-gpio-usage-with-nrf24l01-arduino</link><pubDate>Thu, 19 Jan 2017 19:07:23 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cb99d989-47cb-4481-8cdf-9e09b125904d</guid><dc:creator>lamb95</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Where do you add the raspberry pi code in?&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=20402&amp;AppID=86&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Raspberry Pi 2 : GPIO usage (with nRF24L01+, Arduino)</title><link>https://community.element14.com/products/raspberry-pi/b/blog/posts/raspberry-pi-2-gpio-usage-with-nrf24l01-arduino</link><pubDate>Tue, 10 May 2016 22:01:13 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cb99d989-47cb-4481-8cdf-9e09b125904d</guid><dc:creator>Former Member</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;I’m having trouble getting my Rpi to properly communicate with NRF module. I got the code uploaded and working properly on my Arduino Nano by changing the pins around in the code. I got the code uploaded and compiled properly on the Rpi by adding it to the linux_examples directory and altering the Makefile. However whenever I runt the executable I just get this:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span&gt;================ SPI Configuration ================&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;CSN Pin&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = CE0 (PI Hardware Driven)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;CE Pin&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = Custom GPIO22&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;Clock Speed&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 8 Mhz&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;================ NRF Configuration ================&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;STATUS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00 RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=0 TX_FULL=0&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;RX_ADDR_P0-1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x0000000000 0x0000000000&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;RX_ADDR_P2-5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00 0x00 0x00 0x00&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;TX_ADDR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x0000000000&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;RX_PW_P0-6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00 0x00 0x00 0x00 0x00 0x00&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;EN_AA&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;EN_RXADDR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;RF_CH&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;RF_SETUP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;CONFIG&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;DYNPD/FEATURE&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00 0x00&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;Data Rate&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 1MBPS&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;Model&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = nRF24L01&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;CRC Length&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = Disabled&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;PA Power&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = PA_MIN&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;Start loop:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;Data: ................................&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span&gt;Data: ................................&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I know SPI is working correctly because I ran the SPI loopback test (described on the SPI documentation page on the Rpi website) and I get the correct output. I also added the linux user im using to the SPI group. &lt;/p&gt;&lt;p&gt;Any help would be MUCH appreciated because im completely lost at this point. thanks&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=20402&amp;AppID=86&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Raspberry Pi 2 : GPIO usage (with nRF24L01+, Arduino)</title><link>https://community.element14.com/products/raspberry-pi/b/blog/posts/raspberry-pi-2-gpio-usage-with-nrf24l01-arduino</link><pubDate>Tue, 22 Mar 2016 13:22:16 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cb99d989-47cb-4481-8cdf-9e09b125904d</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Thanks for the guide!&lt;br /&gt;I&amp;#39;m having a silly little issue. I pasted your Raspberry Pi &amp;quot;c code&amp;quot; (actually c++ code) into nrf-try01.cpp. I did &amp;quot;make&amp;quot; and &amp;quot;sudo make install&amp;quot; with no issues in RF24/RPi/RF24. I saved nrf-try01.cpp to ~/RF24/RPi/. I run g++ on Raspbian:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;pi@raspberrypi:~/RF24/RPi $ g++ -std=c++0x -I/home/pi/RF24/RPi nrf-try1.cpp -onrf-try1&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;And I get:&lt;/p&gt;&lt;p&gt;/tmp/ccApxPxi.o: In function `main&amp;#39;:&lt;/p&gt;&lt;p&gt;nrf-try1.cpp:(.text+0x214): undefined reference to `RF24::begin()&amp;#39;&lt;br /&gt;...... (more similar undefined references)&lt;/p&gt;&lt;p&gt;collect2: error: ld returned 1 exit status&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I also tried the above command with &amp;quot;-L/home/pi/RF24/RPi&amp;quot; and &amp;quot;-L/home/pi/RF24/RPi/RF24&amp;quot; at the end and I get the same error.&lt;/p&gt;&lt;p&gt;I&amp;#39;ve read everything ever found by Google on this error and I can&amp;#39;t solve it. Can anyone give me a hint? The compile command is the one thing not present in this tutorial, and apparently I needed it!&lt;/p&gt;&lt;p&gt;Thanks&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=20402&amp;AppID=86&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Raspberry Pi 2 : GPIO usage (with nRF24L01+, Arduino)</title><link>https://community.element14.com/products/raspberry-pi/b/blog/posts/raspberry-pi-2-gpio-usage-with-nrf24l01-arduino</link><pubDate>Sun, 18 Oct 2015 15:00:49 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cb99d989-47cb-4481-8cdf-9e09b125904d</guid><dc:creator>bmishra4</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Thanks a lot for pointing me in the right direction, it was a great help.&lt;/p&gt;&lt;p&gt;I was trying to achieve this from almost a week, your tutorial perfect match for a newbie like me.&lt;/p&gt;&lt;p&gt;Kindly let me know how can i compile my new programs written in CPP, i am very new to RPi world.&lt;/p&gt;&lt;p&gt;Thanks&lt;/p&gt;&lt;p&gt;Brij &lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=20402&amp;AppID=86&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Raspberry Pi 2 : GPIO usage (with nRF24L01+, Arduino)</title><link>https://community.element14.com/products/raspberry-pi/b/blog/posts/raspberry-pi-2-gpio-usage-with-nrf24l01-arduino</link><pubDate>Tue, 18 Aug 2015 06:06:11 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cb99d989-47cb-4481-8cdf-9e09b125904d</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Hi,&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I am planning to use Raspberrypi2 for making a hardware. I am using Rpi2 as the processing part. I need 27 pins to be interfaced. I see that there are 17 gpio pins on the J8 header.&lt;/p&gt;&lt;p&gt;My question is can I use spi and i2c pins as input/output pins? Also the reserved pins can be used for i/o?&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Regards,&lt;/p&gt;&lt;p&gt;Hidayat&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=20402&amp;AppID=86&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Raspberry Pi 2 : GPIO usage (with nRF24L01+, Arduino)</title><link>https://community.element14.com/products/raspberry-pi/b/blog/posts/raspberry-pi-2-gpio-usage-with-nrf24l01-arduino</link><pubDate>Fri, 26 Jun 2015 20:45:23 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cb99d989-47cb-4481-8cdf-9e09b125904d</guid><dc:creator>johnbeetem</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Thank you very much for this &amp;#39;blog.&amp;nbsp; Enabling SPI changed from RasPi Model B with Raspbian 2014-09-09 to RasPi 2 with Raspbian 2015-02-16.&amp;nbsp; Thanks to your instructions, I was able to get SPI enabled quickly and easily using &amp;quot;sudo raspi-config&amp;quot;.&amp;nbsp; You saved me a lot of time!&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=20402&amp;AppID=86&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Raspberry Pi 2 : GPIO usage (with nRF24L01+, Arduino)</title><link>https://community.element14.com/products/raspberry-pi/b/blog/posts/raspberry-pi-2-gpio-usage-with-nrf24l01-arduino</link><pubDate>Thu, 04 Jun 2015 13:44:08 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cb99d989-47cb-4481-8cdf-9e09b125904d</guid><dc:creator>balearicdynamics</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Many thanks !!! &lt;span&gt;[View:/resized-image/__size/16x16/__key/commentfiles/f7d226abd59f475c9d224a79e3f0ec07-cb99d989-47cb-4481-8cdf-9e09b125904d/contentimage_5F00_3708.png:16:16]&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Another &lt;strong&gt;great helpful page&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Enrico&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=20402&amp;AppID=86&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Raspberry Pi 2 : GPIO usage (with nRF24L01+, Arduino)</title><link>https://community.element14.com/products/raspberry-pi/b/blog/posts/raspberry-pi-2-gpio-usage-with-nrf24l01-arduino</link><pubDate>Thu, 04 Jun 2015 08:21:12 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cb99d989-47cb-4481-8cdf-9e09b125904d</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;FINALLY !!!&amp;nbsp;&amp;nbsp; Many thanks for this Article. It all worked first time THANKYOU THANKYOU THANKYOU !!! I have been pulling out my hair with other NRF24L01 library hacks etc ......&lt;/p&gt;&lt;p&gt;BRILLIANT&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I am inspired to try out the Network and Mesh stuff now ....&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=20402&amp;AppID=86&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Raspberry Pi 2 : GPIO usage (with nRF24L01+, Arduino)</title><link>https://community.element14.com/products/raspberry-pi/b/blog/posts/raspberry-pi-2-gpio-usage-with-nrf24l01-arduino</link><pubDate>Tue, 07 Apr 2015 19:19:48 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:cb99d989-47cb-4481-8cdf-9e09b125904d</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Johan,&lt;/p&gt;&lt;p&gt;I enjoyed reading this post.&amp;nbsp; A couple of questions:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Where would you have inserted a bit more error detection + recovery for an application requiring no direct monitoring?&amp;nbsp; It seems that the initialization code (E.g. Arduino setup()) assumes that everything is okay.&lt;/li&gt;&lt;li&gt;If you simply wanted peer to peer communications, it probably would have been simpler to write a TCP or UDP socket pair of applications.&amp;nbsp; So, was this a warm-up (proof of concept) for a future project?&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Thanks ... Richard&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=20402&amp;AppID=86&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item></channel></rss>