KM003C in Action - PSSD Power Consumption Profiling

August 2024 ยท 3 minute read

Prior to the adoption of the KM003C as a replacement for the tried and tested Plugable USBC-TKEY (Google Twinkie), we wanted to perform a few checks. Any inline power meter has the possibility of introducing signal interference that can adversely affect bandwidth (by introducing retransmissions). That is one of the primary reasons for almost all low-cost PD analyzers in the market to completely disable data transmission while monitoring the PD traffic.

The test setup for the KM003C involves one of the Thunderbolt 3 ports on the Quartz Canyon NUC - our direct-attached storage testbed. The SanDisk Professional PRO-G40 was chosen as the target device. A CrystalDiskMark run with a 32GB data span (five passes, and 12 distinct workloads, with each workload separated by 5 second intervals) was processed in three different setups:

The three screenshots below show the CrystalDiskMark benchmark numbers obtained in each of the above three scenarios.



Though the vanilla configuration with no MITM comes out on top in all the workloads except for the high queue depth random writes, all the numbers are bunched close together within the realm of run-to-run variations. As such, the impact on the performance numbers with the KM003C is no different from the impact resulting from having the USBC-TKEY as an interposer.

Moving on to the recorded power consumption data, we first take a look at the numbers polled from the USBC-TKEY at 1 second intervals.

A peak of 7.16W was observed via the USBC-TKEY. From the Google Twinkie / USBC-TKEY documentation, it is not clear whether the 'twinkie vbus' command reports instantaneous numbers or averaged ones - but, looking at the smoothening, it does appear to be an averaged one.

In the first pass with the KM003C, we attempted to retain the 1 second polling interval used with the USBC-TKEY. Recording the averaged power consumption made more sense in that case.


A peak of 6.63W is observed for the 1s polling interval, and the graph is quite smooth. This needs to be compared with the high-resolution graph (where the data is polled every 100ms, and the instantaneous values are recorded) having a 7.55W peak.

A 100ms polling interval seems to yield a better record of power consumption spikes. A better idea of the energy efficiency of a bus-powered device can probably be obtained by looking at the sum of the averaged power numbers throughout the duration of the test. For devices like portable SSDs, this will also take into account any deep-sleep idle timeout features and garbage collection activities. Overall, the KM003C appears to expose more interesting data compared to the USBC-TKEY for evaluation of the power and energy efficiency of bus-powered USB devices.

ncG1vNJzZmivp6x7orrAp5utnZOde6S7zGiqoaenZH55hZNtZq6rkph6sbvWnqlmpZWpsrO1zaBksKGknXq1tMRmmqGZopyys7jAm2SkpWBlgKR5wGaeqKeXobJuwNaipaShlWKurcDEq6WarJmrsnCB