This repository provides a PMBus client and host stack library for Microchip dsPIC33A Digital Signal Controllers, with demo applications on the dsPIC33AK512MPS506 Digital Power Development Board.
The stack conforms to PMBus Specification Part II Rev 1.5 (25 Aug 2025) and SMBus Specification v3.3.1 (20 Oct 2024).
| Component | Directory | Description |
|---|---|---|
| PMBus Client Stack | client/ |
I2C client with ISR state machine, Smart Mode, DMA, PEC, SMBALERT# |
| PMBus Host Stack | host/ |
I2C host using MCC I2C_HOST_INTERFACE abstraction |
| Demo & Test Projects | test/ |
MPLAB X projects demonstrating client and host operation |
The client/ and host/ libraries are independent and can be used separately in any dsPIC33A project. A project may include only the client stack (for a PMBus client device), only the host stack (for a PMBus host/controller), or both.
The test/ directory provides independent working example projects demonstrating how to integrate each library into an MPLAB X project with MCC-generated peripheral drivers. See the README in each directory for details.
| Document | Revision | Description |
|---|---|---|
| PMBus Specification Part II | Rev 1.5 (25 Aug 2025) | Command Language |
| SMBus Specification | v3.3.1 (20 Oct 2024) | System Management Bus |
| dsPIC33AK512MPS512 Family Data Sheet | DS70005591C | I2C, DMA, Interrupts |
| dsPIC33AK512MPS506 Digital Power PIM User Guide | DS70005614A | PIM pinout and hardware |
| Digital Power Development Board User's Guide | DS50002814B | Dev board schematics |
| Tool | Version | Link |
|---|---|---|
| MPLAB® X IDE | v6.30 or later | https://www.microchip.com/mplabx |
| MPLAB® XC-DSC Compiler | v3.31 or later | https://www.microchip.com/xcdsc |
| Device Family Pack | dsPIC33AK-MP_DFP v1.2.135 | Installed via MPLAB X Pack Manager |
| MPLAB® Code Configurator (MCC) | Melody | Peripheral configuration |
| Item | Part Number | Description |
|---|---|---|
| dsPIC33AK512MPS506 DP PIM | EV42F30A | Digital Power Plug-In Module (64-pin TQFP) |
| Digital Power Development Board | DM330029 | Development board for DP PIMs |
| USB-C cable | — | For programming (via on-board PKOB4) and UART communication |
For the two-board host↔client demo, two sets of the above hardware are needed plus 3 jumper wires (SCL, SDA, GND).
- Clone this repository
- See
client/README.mdfor client stack integration details - See
host/README.mdfor host stack integration details - See
test/README.mdfor building and running the demo projects
See CHANGES.md for the release history.
This is demonstration code only and not intended for direct usage in a production environment.
© 2025–2026 Microchip Technology Inc. and its subsidiaries
Subject to your compliance with these terms, you may use Microchip software and any derivatives exclusively with Microchip products. You are responsible for complying with 3rd party license terms applicable to your use of 3rd party software (including open source software) that may accompany Microchip software. SOFTWARE IS "AS IS." NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE, INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL MICROCHIP BE LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL OR CONSEQUENTIAL LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE POSSIBILITY OR THE DAMAGES ARE FORESEEABLE. TO THE FULLEST EXTENT ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS RELATED TO THE SOFTWARE WILL NOT EXCEED AMOUNT OF FEES, IF ANY, YOU PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.