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 How to Order
Products Blog Sales Support Contact Search
How Can I Perform SMBus Quick Commands with the Aardvark I2C/SPI Host Adapter and API?
Published: 2025-07-30
Rena Ayeras

Image by Yamu Jay

Question from the Customer:

I am using the Aardvark I2C/SPI Host Adapter and Aardvark Software API to interact with an SMBus system. I have looked through the API library to find a way to send a quick command, but all the examples seem to involve data exchange – are quick commands available with the API?

Response from Technical Support:

Thank you for your question! With the right parameters, there are commands that you can use as quick commands, which are described below. Additionally, we’re including information about other tools that can be used for communicating with SMBus devices, as well as for simulation and analysis.

API Quick Commands for SMBus

Here are the read and write commands that you can use as quick commands without sending data.

  • the aa_i2c_read(handle, slave addr, 0) can be used to perform an SMBus Quick command with the read bit set to 1. This way, only the I2C address is sent with read bit set, transferring no data.
  • aa_i2c_write(handle, slave_addr, AA_I2C_NO_FLAGS, data_out) can be used to perform an SMBus Quick command by sending the I2C address with write bit to the slave. The data_out parameter is a byte array, so data out can be framed as required

For more information about API commands, refer to API Documentation in the Aardvark I2C/SPI Adapter User Manual.

Other Tools for  SMBus Interactions

While the Control Center Serial Software and the Aardvark Software API packages don’t include example scripts for SMBus explicitly, the Aardvark adapter is compatible with SMBus protocols, as SMBus is based on the I2C standard. Both the batch scripts for Control Center Serial Software and in the API, can be modified by updating the hex values to correspond with commands for your SMBus devices.

The following articles and documents provide examples of setting up and using I2C tools with SMBus systems and devices:

  • This document provides instructions to set up the Aardvark adapter and Control Center Serial Software to interact with an SMBus device. In this example, the Aardvark adapter is set up as the master device.
  • For prototyping, this article describes using the Aardvark adapter with the I2C/SPI Activity Board and Control Center Serial Software to emulate SMBus interactions
  • If you need to increase the bitrate, refer to this article. Two options are provided – modifying the physical interfaces with the Aardvark adapter, or instead using the Promira Serial Platform that can operate at much higher speeds.

We hope this answers your questions. Additional resources that you may find helpful include the following:

If you want more information, feel free to contact us with your questions, or request a demo that applies to your application.

Key Focus: SMBus