I2C SPI USB CAN eSPI Cable Testing View All Quick Start Guides User Manuals Software Downloads Knowledge Base Videos Case Studies App Notes White Papers Sales Support About Us
Products Blog Sales Support Contact Search
For the Best Signal Performance Between the Aardvark I2C/SPI Host Adapter and an SPI Slave Device, How Should I Use Pull-up Resistors?
Rena

I am using the Aardvark I2C/SPI Host Adapter and LabVIEW to communicate with an SPI slave device. The Aardvark I2C/SPI Host Adapter User Manual mentions using a pull-up resistor for the Slave Select (SS) line. I am using an adapter cable to connect the Aardvark adapter to the board. I only have one voltage source connected, which is to power the main board of the SPI device. I have some questions about setting this up:

  1. What value should I use for the SS pull-up resistor?
  2. How do I connect the pull-up resistors in my circuit?

    • Should the resistor be connected in series from the SS line of the Aardvark adapter to the SS line of the device?
    • Should I ground one end of the resistor and connect the other to the SS line?
    • Should I apply 3.3V to one end of the resistor and connect the other end of the resistor to the SS line?
Response from Technical Support:

Thanks for your questions! When the Aardvark adapter is in SPI master mode, the SS signal is actively driven low/high during the transaction (depending on the SS configuration). The MOSI and SCK lines are driven as appropriate for the SPI mode. After each transaction is complete, the SS, MOSI and SCLK lines are returned to a high impedance state.  This feature allows the Aardvark adapter, following a transaction as a master SPI device, to easily reconnect to another SPI environment as an SPI slave. This way, the Aardvark adapter will not fight the master lines in the new environment.

Aardvark I2C/SPI Host Adapter Figure 1: Aardvark I2C/SPI Host Adapter

Consequently, any SPI slave target to which the Aardvark adapter is interfaced must have a pull-up resistor on its slave select line, which prevents the voltage from fluttering when the Aardvark adapter stops driving the signal. It is also advisable that every slave has passive pull-ups on the MOSI and SCK lines.

For your application, to prevent the signal levels from fluttering, we recommend adding a 4.7k ohm pull-up resistor to the SPI slave device SS, MOSI, and SLK signals. We also recommend adding a 4.7k ohm pull-up between the SPI slave device SS, MOSI, and SLK signals and the SPI slave device 3.3V power supply signal on the SPI slave board.  For more information, please refer to the Pin Driving section of the Aardvark I2C/SPI Host Adapter User Manual.

Additional resources that you may find helpful include the following:

We hope this answers your questions. 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.