Table of Content
ToggleProject Overview
A US maker of rugged vehicle docks needed its new USB-PD dock to restore iPad charging after a restart. We identified a board error and two firmware issues, corrected the hardware and PD stack configuration, and added restart recovery.

Figure: USB-C power delivery through the iPad dock
How the Dock Works
The charger offers its power profiles to the dock’s charger-side port. Firmware running on the MCU passes the supported profiles to the iPad-side port and manages power renegotiation when the iPad restarts. The MCU also controls the USB hub that carries the iPad’s data.

Figure: USB-PD vehicle dock block diagram
The Challenge
The client’s earlier docks used a fixed-function PD chip. It worked until newer iPads arrived. These iPads drop the power contract when they restart, but the old chip could not detect the change and renegotiate. As a result, the iPad stayed on low power or stopped charging.
The configurable Microchip PD controller could monitor the port and reset the connection, but it required custom firmware. The client already had the hardware and needed a team to develop that firmware while their end customer waited for the product.
Our Approach
Setting Up the Test Bench
After signing an NDA and speaking with the client’s engineer, we received the development kit, programmer, and current boards. We also bought the iPad Pro 13 used by their end customer, allowing testing on the actual device from the start.
We identified three issues affecting the dock’s operation: a grounded pin that prevented one PD chip from functioning fully, incorrect voltage limits that triggered power faults, and a missed detach signal that prevented charging from resuming after an iPad restart.
Finding and Correcting the Board Error
During debugging, an interrupt behaved in a way the firmware could not explain. We traced it to a pin on one of the PD chips that was wired to ground. This prevented the chip from functioning fully, and the same error was present on every prototype.
Our engineer reworked the samples we had. We provided rework instructions, and the client’s engineer applied them to all their prototypes. The correction was incorporated into the next board revision.
Correcting the PD Stack Configuration
When the iPad connected, the PD stack raised a power fault and shut down the port. The configured overvoltage and undervoltage limits did not match the hardware.
We adjusted these limits to match the board, removing the power faults on attachment.
Building the Power Passthrough Logic
The firmware maps each fixed power profile offered by the charger to the iPad-side port. It filters out profiles the board cannot deliver because the design has no adjustable converter.
Restoring iPad Charging After a Restart
When the iPad restarted, the PD stack sometimes missed the detach signal. It then failed to detect the next attachment, preventing charging from resuming.
We added recovery logic that reinitializes the PD stack when communication on the iPad side becomes inactive, allowing the iPad to renegotiate power after a reboot.
Testing With the Client
We supplied firmware test builds together with a PC tool for viewing the negotiated power profiles. The client’s engineer tested these builds on his bench, and we addressed the issues he reported.
Results and Handover
The client’s engineer loaded the firmware onto his test unit and confirmed that it restored PD charging after an iPad reboot.
The client’s engineer tested the firmware with four chargers rated from 20 W to 100 W:
| Charger | Type | Rated Power |
| Apple iPad charger | AC-DC | 20 W |
| Laptop charger | AC-DC | 65 W |
| Vehicle charger | DC-DC | 60 W |
| Vehicle charger | DC-DC | 100 W |
The client received:
- Firmware binaries for each test build.
- Source code in their own Git repository.
- A PC tool for viewing negotiated power profiles.
- Board rework instructions for correcting the prototypes.
Further Development
With charging working, the client chose to simplify the next board revision. They replaced the USB hub with a single USB-A port that passes data directly through and supplies a regulated 5 V.
A new engineer on their team continued firmware development in-house, using our repository and state machine as the base. We provided access and support for the new hardware.
Tools used: Microchip USB PD stack, MPLAB X IDE, PICkit 5, and USB-C power meter.
Developing a USB-PD Product?
Have a look at our Industrial & Power Electronics Solutions portfolio and explore our related design guide:
If you are working on a USB-PD product and running into charging problems in an existing design, we are happy to help. Feel free to Contact Us for USB-PD hardware design, PCB development, and embedded firmware support.