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
What Tools Can I Use to Develop, Test, and Debug MCTP Devices?
Rena Ayeras

Bare Circuit Board

Image by Gordon Johnson from Pixabay

Question from the Customer:

I am looking at your products. Can your Aardvark I2C/SPI Host Adapter work with MCTP devices?

Response from Technical Support:

Thanks for your question! The answer is yes. MCTP is a layer on top of SMBus, a two-wire interface often used for low-speed system management communication between devices on a motherboard. As this bus was developed with the foundation of the , SMBus and I2C hold many similarities and can even inter-operate on the same bus. For an example of using the Aardvark adapter with SMBus devices, take a look at How Do I Set Up an I2C/SPI Host Adapter to Read a Smart Battery SMBus Device?

The following sections provide some details on why our I2C tools can work with MCTP and what our tools can do for you.

Why MCTP is Compatible with the I2C and SMBus Protocols

Here is an excerpt from the publication “Management Component Transport Protocol (MCTP) SMBus/I2C Transport Binding Specification”:

The MCTP over SMBus/I2C transport binding defines how MCTP packets are delivered over a physical SMBus or I2C medium using SMBus transactions. This includes how physical addresses are used, how fixed addresses are accommodated, how physical address assignment is accomplished for hot-plug or other devices that require dynamic physical address assignment, and how MCTP support is discovered. Timing specifications for bus and MCTP control operations are also given, and a "fairness" protocol is defined for the purpose of avoiding deadlock and starvation/lockout situations among MCTP endpoints.

The binding has been designed to be able to share the same bus as devices communicating using earlier SMBus/I2C management protocols such as Alert Standard Format (ASF) and IPMI, and with vendor-specific devices using SMBus/I2C protocols. The specifications can also allow a given device to incorporate non-MCTP SMBus functions alongside MCTP.     -- DMTF.org

MCTP Compatible Tools

Host Adapters

We have two host adapters that are compatible with the SMBus. They each support the I2C bus, which is similar to SMBus. Both adapters are general-purpose devices that can actively communicate on the bus and provide master and slave capability along with I2C and SPI features. These adapters can emulate an SMBus slave but cannot act as an active slave - they respond to one specific command at a time.

Aardvark I2C/SPI Host Adapter

The Aardvark I2C/SPI Host Adapter is a fast and powerful bus host adapter that communicates with your computer via USB and can function as a master or a slave. In addition to I2C and SMBus devices, this adapter also interfaces with SPI devices.

Promira Serial Platform

The Promira Serial Platform is an advanced platform that can communicate faster via Ethernet or USB, provides built-in level shifting, and more. The license options (purchased separately) support a range of protocols. For your project, we recommend the I2C Active - Level 1 Application. With this license, the Promira platform can function as an I2C master or an I2C slave.

SMBus Protocol Analyzer

The Beagle I2C/SPI Protocol Analyzer can be used to monitor and capture real-time I2C data, which makes it an effective tool for debugging communication issues between master and slave devices. The Beagle I2C/SPI analyzer works as a passive tap onto your SMBus lines and displays all the bus traffic sent between the Aardvark host adapter and your device in real time. To enable SMBus decoding, select the SMBus Decoding option in the dialog.

With Data Center Software, you can apply SMBus decoding while using the Beagle I2C/SPI analyzer, as well as real-time search and filter through the bus data. For more information about decoding SMBus transactions, please refer to section 8.5.2 SMBus in the Data Center Software User Manual.

Activity Board to Test Designs and Troubleshoot Bugs

The I2C/SPI Activity Board is a helpful tool for testing I2C- and SPI-based protocols. By providing known working slave devices, this tool allows users to differentiate between hardware and software bugs. With the I2C port expander, this board can be used to develop, test, and debug SMBus devices.

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.