SPI works after reset, but not after simply applying power

Hi - I've got a strange problem that I can't work out.

I have an Arduino Nano that is powered with 9V into the VIN pin. The Nano communicates with an encoder via SPI using the SoftSPI library:

MISO: pin 4
MOSI: pin 5
SCK: pin 6
CS: pin 7

All works fine when I power the Nano using USB or perform a reset using the reset button when powered with 9V. However, if I just plug the Nano in to 9V and don't reset, SPI doesn't work. All the other functions on the Nano do work, however.

Any ideas?

EDIT: more debugging revealed that power cycling the encoder after power up results in the SPI xfer functioning, so the problem is on the encoder end. Consider this closed.

Please, post your codes with code tags (</>).