I2C SPI USB CAN eSPI Cable Testing View All Videos Quick Start Guides Software Downloads App Notes White Papers User Manuals Knowledge Base Sales Support About Us
Products Blog Sales Support Contact Search
ISO Signal Integrity for SPI Master and Slave Communication. When and Why are Pull-Up Resistors Needed with the Aardvark I2C SPI Host Adapter?

Question from the Customer:

I am using the Aardvark I2C/SPI Host Adapter in SPI mode and I’ve set up a MISO message in the Control Center Software. The transaction log shows that MISO data has been written on the bus.

Looking at the SPI traffic out of the Aardvark on an oscilloscope I noticed that the slave select (SS) line idles low. This differs from the behavior of the Cheetah SPI Host Adapter. With the Aardvark adapter, in the case of an active low chip select, the chip select returns to the high state after the data is sent.

154773-customer-scope Figure 1: SPI Signals Viewed on an Oscilloscope

What can I do to avoid SS from idling in the low state? My concern about this - if there are any glitches on the click line, will data get shifted into the slave device!

Response from Technical Support:

Thanks for your question! The Cheetah SPI Host Adapter, which functions exclusively as a high-speed SPI master, has different signaling characteristics than that of the Aardvark adapter.  The Aardvark adapter is meant to be a general purpose device that can function as either master or slave for both SPI and I2C bus protocols.  When the Aardvark adapter is used as an SPI Master, the slave select line (SS) is actively driven low. The MOSI and SCK lines are driven as appropriate for the SPI mode. After each transmission is complete, these lines are returned to the high impedance state. This feature allows the Aardvark adapter, following a transaction as a master SPI device, to be reconnected in another SPI environment as a slave.

To ensure signal integrity, we recommend adding 10 K OHM pull-up resistors on the SS, MOSI and SCLK signals on the SPI slave target device that is connected to the Aardvark adapter. Using pull-up resistors will prevent voltage fluctuations when the Aardvark adapter stops driving the signal. For additional information, please refer to section 2.4.3  of the Aardvark I2C SPI Host Adapter Manual.

SPI Byte Required Timing Characteristics Figure 2: SPI Timing Characteristics

Additional resources that you may find helpful include the following:

We hope this answers your question. If you have other questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com, or if you already own one of our devices and have a technical question, please submit a request for technical support.