So I chatted with a friend here and throughout the conversation a couple of things came up, which I decided I needed to try. First one was disconnect the bus pirate and see what happens. Option 2 was to bitbang the SPI as the pin I controlled was reaching 5v.
Disconnected the bus pirate and hooked the scope up (see below for how 4 probes make for a fun time) and hey presto look what came out (see image below) top to bottom, CSN, SCK, MOSI, MISO. I am sending it 0xFF which is NOP, but the NRF clocks out the status register at the same time. Those .5v/div readouts are really 5v/div as these are 10x probes (I have disconnected the probe spoofer) MISO at the bottom is shorter because the NRF chip is 3.3v, but it's still enough for the 5v PIC to understand it.
Turns out the bus pirate was loading the circuit down, and this seems to be working, I went through each individual command by looping them indefinitely and made 100% sure that each one made sense (see second image). Found an issue when setting up the addresses for the local device and the controller which I will fix this evening. Then I get to do it all again with the main controller. Once that's done, I will try and control the LEDs with the main controller.
When I am convinced the design is good, I will order 6 more light controller boards from OSH park, I have a slightly adjusted design for them as I found the FETs are a little too close to each other, and of course I needed to clean up the silk screen layer now it's printed.