MSPM0 PMBus Library User’s Guide

1. Introduction

The MSPM0 PMBus Library is based on the MSPM0 SMBus library. The MSPM0 PMBus library provides a set of APIs to communicate over PMBus as a controller or a target.

2. PMBus Library Supported Features

This library was developed in compliance with the PMBus 1.3.1 specification.

2.1 PMBus Supported Features

  • Address, memory, communication and capability related commands

  • On, off, and margin testing related commands

  • Output voltage related commands

  • “Other commands” as detailed by the PMBus specification

  • Fault related commands

  • Power good signal limits

  • Output voltage sequencing commands

  • Unit status commands

  • Parametric information commands

  • Manufacturer’s information commands

2.3 PMBus Features Not Currently Implemented

The PMBus features listed below are supported in hardware but have not been implemented in this release:

  • ZONE_READ and ZONE_WRITE protocols

3. PMBus Example Usage

Three examples are given in the SDK demonstrating the PMBus controller , PMBus target and PMBus controller using group command.

To test the PMBus controller and target example connect the SDL and SDA pins of controller and target. Load the program to controller and target. The example services the following commands.

PMBus CMD

CMD ID

Write Type

Read Type

Device ID

0xAD

Block read

Clear Faults

0x03

Send Byte

Vout Mode

0x020

Write Byte

Read Byte

Vout OV warn Limit

0x42

Write Word

Read Word

MRF ID

0x99

Block Write

Block Read

Read Vout

0x8B

Read Word

EXT_BYTE_CMD

0x01FF

Write Byte

Read Byte

EXT_WORD_CMD

0x02FF

Write Word

Read Word

Process call Byte

0xD0

Write Word

Read Word

Process call Block

0xD1

Block Write

Block Read

To test the group command, load the target examples to 2 launchpads with different slave addresses specified in the group commamnd examples. The group command example will communicate with both targets and service the PMBus comamnds.

3.1 PMBus Examples Supported Hardware

  • LP-MSPM0G3519 or LP-MSPM0G3507 LaunchPad evaluation boards

4. Library Versions

  • Version 2.00.00.00

    • SDK release: 2.04.00.xx

    • Updates:

      • Updated PMBus stack to support both as controller and target.

      • Added PMBus controller and target examples.

      • Added PMBus controller to support group commands.

  • Version 1.11.01.00

    • SDK Release: 2.03.00.xx

    • Updates:

      • Fix PMB_BLOCK_READ #define

  • Version 1.10.00.00

    • SDK Release: 1.30.00.xx

    • Updates:

      • Updates to use SMBus 1.30.00.xx.

      • Remove unimplemented PMBus_processTimeoutInt.

      • Update examples to use I2C boosterPack standard.

  • Version 1.00.00.01

    • SDK Release: 1.10.00.xx

    • Updates:

      • Initial release.