Arduino UNO with mutiple SPI

I'm working on a project where we have a touch screen shield, and nRF24L01 wireless module running on an UNO at the same time and we want to use SPI for both.

RF24 library is TMRh library, see attached file

For touch screen shield, slave select pin for was defaulted to 10. Obviously we can't use pin 10 for the SS on 2 devices, so I tried to make the SS pin for the nRF24l01 pin 8 ( also tried pin 2, or pin 6) while keeping pin 10 the SS for the touch screen. The screen works, but the nRF24 does not.

Could someone help me figure out where I'm going wrong in trying to use another digital pin as a slave select? Attached are our source code and information.

TS_RF_Rev12.ino (13.6 KB)

RF24.h (68.2 KB)

RF24.cpp (43.5 KB)

Adafruit_ILI9341.h (5.59 KB)

Adafruit_ILI9341.cpp (16.2 KB)

Adafruit_STMPE610.cpp (8.99 KB)

Adafruit_STMPE610.h (3.94 KB)

Adafruit_GFX.cpp (31.7 KB)

Adafruit_GFX.h (4.83 KB)

more testing on connecting and disconnecting RF or tft, here is the results.
Please help

RF24AndTFT.pdf (78.4 KB)

The nRF24 should work fine with CSN and CE on any I/O pins. Have you tried it on its own using Pin 8 for CSN?

This Simple nRF24L01+ Tutorial may be useful.

In another Thread recently it was suggested that some SPI devices don't properly release the MISO pin.

You should also check, for both devices, what SPI settings their libraries are using. If they are different it may be that the correct settings are not being re-established when you switch devices.

And, sorry, I am too lazy to download and read 9 program files. Maybe if you can write a single program to illustrate the problem. Please post your results as text in your Post so it is not necessary to download and open a PDF file.

...R