Multiple SPI Slaves - Max Capacitive Load?


I'm working on a design that would require the Arduino (a MEGA2560) to send commands to multiple SPI slaves simultaneously -- 50 slaves, to be specific. Each presents a 5-pF load to the bus, and due to the fact that they use 3-wire SPI-compatible communication, they have to be connected to MOSI/MISO in parallel (i.e., no daisy-chaining).

I've searched to determine what kind of load capacitance the ATmega2560 can drive but I just can't find anything. Conservatively speaking we're looking at about 350 pF of load capacitance -- does anyone have any idea if this is within the ATmega2560's capability?

Thanks in advance!

I2C has a limit of 400pF for a line and can supposedly handle 120-odd devices. That's an open-collector bus whereas SPI is push-pull so should be able to do better at that speed.

Obviously running faster will change that as will the 2560 drive capability. The AVRs are pretty grunty though (20+ mA), and you can always use buffers. Also don't forget your devices, they have to be able to drive 50 other devices on MISO as well.


Graynomad, thanks for the reply. The project doesn't need high-speed communication (a couple hundred kHz is fine), and it only requires sending data in parallel to multiple slaves -- each slave will respond back on an individual basis.

I'll report back with workarounds if I encounter any difficulties. :)