In addition to being a full-featured hub, the USBHub3c from Acroname is also capable of being used as a power delivery analyzer.
The backbone of the PD analysis is Acroname’s Stemtool. Stemtool allows complete control over nearly all power features within the hub.
An optional upgrade to the USBHub3C within the Stemtool is PD logging. This feature allows you to log and graph all of the changes in power delivery from the Hub.
Not only can you log (or “sniff”) the USB power delivery, but we can also control how much power is delivered. This allows the USBHub3c to act as a “bad” power supply and either send too much power or too little power. Note: Please be aware that if you send your device too much power, you can permanently damage the device. USBHub3c will do whatever you tell it to, so make sure you know exactly what you’re doing before proceeding.
If you’re working in a testing environment, the USBHub3c is one of the best tools to create and emulate rare issues to test your devices. With a nearly unlimited number of options, you can solve any bugs before your product or device gets put into production.
Hey, we're going to walk through the USBhub3c from Acroname and how we can use it as a power delivery analyzer.
In this case, we're going to use it to look at what a device connected here as a sink looks like and how we can analyze the PD transactions across it.
Then also look at how it performs if we modify our V-bus voltage to see if it follows the USB PD standards.
We'll open up Stemtool here, and we'll connect to our USBHub3c. When this first opens you can see we've got a lot of information about what's going on at each of the ports.
We're going to just look at port 5. That's the only thing we're interested in right now.
We've got PD logging already running here and we have the PD entitlement here down here that allows us to use this feature.
So at port 5, we're going to go in here and we're just going to issue a hard reset. This would be the same thing as we just disconnected the port.
It's in a hard reset. You can see the VBUS voltage drops and we start bringing it back up.
If we click on the voltage plots we can bring up the plot detail window and you can see those transactions happening here. If I click on any one of them, it jumps to our PD Log. You see in this case this is the source capabilities request, and we can zoom in on this to see where and how the timing actually worked out.
Then as we go through you can see the V-bus came up to 5 volts after that hard reset and then there were source capabilities transactions. And then, eventually, the device requested a specific PDO right here.
In this case it requested the nine-volt three amp PDO. The power supply ramped up to that and gave the power supply ready command and then the device started to boot and you can see we hit a max boot current.
Here we're going to zoom in on our current axis and we're maybe just under an amp so this is hitting just about nine watts peak. It’s super useful to be able to look at the current and voltage over time and with each of the transactions overlaid.
And as you can see if I zoom out in the time axis (I can just select that access to zoom out), we can see these transactions down here in the little overview window so we can jump to transactions as more and more transactions happen.
Another very useful thing, is we can see how this device performs if we start acting like a bad power supply so instead of nine volts let's start tweaking this down let's say the device is only getting eight volts.
It's still happy it hasn't fallen off the bus yet, and we can go and scroll this all the way over so we can start over here grab our scroll bar so this goes back to a live view now. You can see where our voltage dropped.
And let's go to seven volts and see if it gets unhappy. There we go and so we just did a bus reset ask for source capabilities again and started over. So that's sort of the expected behavior for a device when the voltage being supplied is under what it's expecting so we fell outside of the allowed window. The device gave a hard reset. We see our source capabilities request again and power supply ready again.
So it's a very useful tool for that sort of validation. We can also do the same thing in the opposite direction. So let's go to 10 volts. Let's go and restart this here.
All right so we go here and let's go to 10 volts.
Now you need to be careful what devices you do this with some of them will let the “magic smoke” out.
10 volts are still happy
11 volts…seems to be still happy
12 volts. Wow still going. I think that's about as high as I'm willing to go before we uh break our beautiful Homepod here.
But as you can see the device is still operating normally. We can zoom in on our current and what we would expect to see is our current has probably dropped. We go back down to nine volts here. Yeah you can see the effective input power is about the same because we've reduced our input power.
The USBHub3c is a very powerful analyzer primarily because it acts as a partner on the bus. It's not just sniffing the bus we can actually modify all the different communications as it's going across.
Another example is where we could actually modify the source rules that are being presented if we wanted to.
That's enough for now, and we'll talk more about other exciting powerful things we can do with the USBHub3c.
For more details about the USBHub3c, visit the product page.