Skip to main content
1 of 2
the busybee
  • 2.5k
  • 10
  • 19

What is wrong with this idea?

Nothing, this is perfectly possible. The main advantage is the avoidance of multiple SS lines, reducing pin count and/or decoding hardware.

The SPI main device does not know the number of SPI sub devices, and it will happily sample the level at the MISO pin, whatever you give it.

Each SPI sub device does not know that the other SPI sub devices receive the very same bytes. As you write, if the first byte (or any other protocol detail) tells it to ignore the rest of the transmission, it will.

Are there electronic issues in the UNO or MEGAs I am not thinking of?

You need to read the data sheet to learn about the load of each input of the SPI sub devices, and the guaranteed provided drive capability of each output of the SPI main device, that means SS, SCLK, MOSI. Then make sure the driver can drive all receivers.

Commonly you can connect a two-digit number without any concern.You write that you have eight, so just go ahead.

You can leave the MISO outputs of the SPI sub devices simply unconnected. In contrast, make sure you have a pull-up or pull-down resistor on MISO of the SPI main device.

Is this done?

I have no personal experience or example, but I'm sure it is done.

Why not?

When you actually need responses from the SPI sub devices, you need to do it differently. However, even than you can combine all the MISO outputs of the SPI sub devices with some clever digital logic.


Note: I prefer "main" and "sub", which still match the abbreviations, instead of the old terms of the former century.

the busybee
  • 2.5k
  • 10
  • 19