Arduino & CC3000 Wifi & NRF24L01+ over SPI
- 
					
					
					
					
 Anyone know how to connect two SPI devices to an Arduino Uno? Separately, the CC3000 Wifi module and NRF24L01+ work normally. However, if I wire them in parallel, like for i2c, only the CC3000 works. Is there some type of input-output connection for one master and multiple slaves? 
 
- 
					
					
					
					
 I found the solution on this page: http://mathertel.blogspot.com/2013/04/using-spi-bus-with-ethernet-sd-card-and.html The key is setting the Chip Select (CS) line to be different for each module. For the CC3000... 
 "#define ADAFRUIT_CC3000_CS 7"
 Pin 7 is being used exclusively to select the Wifi module.
 https://learn.adafruit.com/adafruit-cc3000-wifi/cc3000-breakoutFor the NRF24L01+... 
 "RF24 radio(9,10);"
 Pin 9 is being used for Chip Enable (CE) and Pin 10 is Chip Select (CS).
 http://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo
 http://maniacbug.github.io/RF24/classRF24.htmlThe other SPI pins: CLK, MISO, MOSI, are shared by the two modules and get wired in parallel. 
 
- 
					
					
					
					
 Goood stuff! What is it your making? 
 Is it a spark core??
 
- 
					
					
					
					
 or a WLAN Gateway  
 
- 
					
					
					
					
 @jesse  I did that on my Mega too I did that on my Mega too 
 
- 
					
					
					
					
 @gregl said: Goood stuff! What is it your making? 
 Is it a spark core??A Wifi bridge so I can use $1 NRF24L01+ modules to send data to my database or to the internet. 
 
- 
					
					
					
					
 I have a similar problem. I dont have the CC3000 breakboard I have the shield so changing pin address for this board is not going to work. Instead I've changed the NRF24l01+ to use pins CE 35, CS 34. 
 I've also changed the init of the gateway to use pins 40,41,42 for the leds.(I'm using a mega btw) So just using the MySensors skecth it works fine. But as soon as I initialise the CC3000, the gw.begin() doesnt work anymore. Were you able to get this to work? Did you have to change any libraries? Cheers 
 
- 
					
					
					
					
 @jesse said: I found the solution on this page: http://mathertel.blogspot.com/2013/04/using-spi-bus-with-ethernet-sd-card-and.html The key is setting the Chip Select (CS) line to be different for each module. For the CC3000... 
 "#define ADAFRUIT_CC3000_CS 7"
 Pin 7 is being used exclusively to select the Wifi module.
 https://learn.adafruit.com/adafruit-cc3000-wifi/cc3000-breakoutFor the NRF24L01+... 
 "RF24 radio(9,10);"
 Pin 9 is being used for Chip Enable (CE) and Pin 10 is Chip Select (CS).
 http://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo
 http://maniacbug.github.io/RF24/classRF24.htmlThe other SPI pins: CLK, MISO, MOSI, are shared by the two modules and get wired in parallel. Hi do you still have a Gateway code when using CC3000 and arduino Mega or UNO(if it fits)? 
 
 
			
		 
			
			 
					
				