# USB-C cable power-path validation **ChargerLab PDlink / 0.3 m / c_sample1** 16 October 2026 | 100 Vac / 50 Hz | Record: PDLINK-20261016-100V-01 | Rev 02 **PASS EVIDENCE FOR ALL 29 CASES, ACROSS TWO RUNS. Not a single uninterrupted or single-version completion.** | Selected cases | 120 s holds | 48 V / 5 A | | --- | --- | --- | | 29 / 29 PASS | 7 / 7 PASS | PASS | All nine resumed cases passed. The 120 s hold at the 48 V / 5 A setpoint recorded median ASD input values of 47.283 V / 5.000 A / 236.415 W. The nominal 240 W setpoint is not a measurement of 240 W at the ASD input. ## Test setup | Item | Recorded setup | | --- | --- | | Cable | ChargerLab PDlink, 0.3 m, detachable; c_sample1 | | Operator-entered rating | 240 W; CH32 advertised range: 5 A / 48 V | | Connected source | Framework FRANDVCH00, C1; FRANDVCH00_s_sample1; 240 W port rating | | Power path | SRC > PDlink > CY4500-EPR > ASD-PD31 | | Control path | COM3 with an RS232 isolator (operator-reported) | | AC condition | 100 Vac / 50 Hz (operator-entered metadata) | | Orientation | as-connected; ASD cable-set cc2; physical reversal not covered | | Suite settings | full; current step 0.2 A; 3 readings/step; holds 120 s; inter-case wait 5 s | | Software | M01: v5.8.9, immediate hold sampling; M02: v5.8.10, hold-settle 1 s | Screening checks: voltage within +/-1.0 V of setpoint; current within +/-max(2% of the load setpoint, 0.050 A). Safety ceilings: 252 W, 5.25 A and 80 degrees C ASD internal temperature. These are procedure settings, not USB certification criteria. Selected cases contain 1,779 steady and seven precheck readings. The original stop, duplicate measurements and earlier interruption remain separate from selected statistics. All nine resumed cases verified LOAD_OFF on cleanup. --- # Loaded holds and path metrics Each hold was configured for 120 s with 120 readings at 1 s intervals spanning 119 s. M02 adds a 1 s wait after LOAD_ON, outside the hold duration. Voltage, current and power are measured at the ASD input. | Run | Target V/A | V min | V median | V max | I median | P median W | N | | --- | --- | --- | --- | --- | --- | --- | --- | | M01 | 5/3 | 4.994 | 4.999 | 5.003 | 3.000 | 14.997 | 120 | | M01 | 9/3 | 8.701 | 8.705 | 8.709 | 3.000 | 26.115 | 120 | | M01 | 15/3 | 14.696 | 14.700 | 14.705 | 3.000 | 44.100 | 120 | | M01 | 20/5 | 19.410 | 19.417 | 19.433 | 5.000 | 97.085 | 120 | | M01 | 28/5 | 27.295 | 27.309 | 27.324 | 5.000 | 136.545 | 120 | | M02 | 36/5 | 35.271 | 35.278 | 35.293 | 5.000 | 176.390 | 120 | | M02 | 48/5 | 47.272 | 47.283 | 47.301 | 5.000 | 236.415 | 120 | ## Droop using before/after light-load baselines | Run | Target V | Droop V | Apparent path mΩ | Baseline drift mV | | --- | --- | --- | --- | --- | | M01 | 5 | 0.0745 | 25.69 | -1.0 | | M01 | 9 | 0.3705 | 127.76 | -1.0 | | M01 | 15 | 0.3700 | 127.59 | +2.0 | | M01 | 20 | 0.6380 | 130.20 | +4.0 | | M01 | 28 | 0.6350 | 129.61 | +1.0 | | M02 | 36 | 0.6565 | 133.98 | +5.0 | | M02 | 48 | 0.6570 | 134.08 | +2.0 | Droop is the mean of before/after 0.1 A voltage medians minus the loaded median. Apparent resistance divides droop by measured high/low current difference. Baseline drift is after minus before voltage. Each baseline/hold/baseline group comes from one run; M01 and M02 are never paired across runs. **This is not isolated cable resistance.** Source regulation, connectors, CY4500-EPR and the ASD input contribute. No matched reference-cable comparison was performed. Apparent values differ at 5 V, and software/settling conditions differ between runs. --- # Current sweeps and recheck results Each point is the median of three readings. Solid/dashed traces show the sweep legs; the legend identifies the selected run. Deviation from nominal does not isolate cable loss. The 36 V and 48 V curves use resumed run M02. ![Current sweep deviation](../figures/current_sweep_deviation_EN.svg) ## Original stop versus resumed measurements | Record | Condition | Measured current | Result | | --- | --- | --- | --- | | M01 T24 | 36 V / 0.1 A, first hold reading | 0.049 A | FAIL | | M02 T21 | 36 V / 0.1 A, before, 3 readings | 0.100 A (all) | PASS | | M02 T24 | 36 V / 0.1 A, after, 3 readings | 0.100 A (all) | PASS | | M02 T29 | 48 V to 5 V, three return readings | 0.100 - 0.101 A | PASS | M02 36 V light-load voltages were 35.928 - 35.934 V before and 35.933 - 35.937 V after. The final 5 V return measured 5.068 - 5.082 V. Both 36 V and 48 V sweeps reached 5 A in both legs, followed by 120-reading loaded holds. The earlier light-load stop did not recur with 1 s settling. This supports startup-timing sensitivity, but is not an independent measurement or a repeated comparison varying only the settling time; it does not isolate the responsible component or establish a cable-defect finding. --- # Stop history, procedure change and control log | Run | Attempted cases | Raw status | Hold startup | | --- | --- | --- | --- | | W01 | 1 PASS / 1 interrupted | INTERRUPTED | v5.8.9; no explicit wait | | M01 | 23 PASS / 1 failed | FAILED | v5.8.9; no explicit wait | | M02 | 9 PASS / 0 failed | INCOMPLETE | v5.8.10; 1 s wait | ## M01 T24: first-reading stop at 36 V light load At 36 V / 0.100 A, the first reading was 35.899 V / 0.049 A. The -0.051 A error exceeded +/-0.050 A, triggering a stop at the first reading logged at t=0.2 s. Measurement CRC and LOAD_OFF verification were normal. Persistence of the under-current was not measured. LOAD_OFF and a 5 V recovery check occurred between T23 and T24; 36 V was requested afresh. This was not a continuous 5 A-to-0.1 A load step. CY4500 recorded Source PS_RDY (Sno 72; VBUS 35.341 V), which is not a transition-timing or voltage-accuracy compliance verdict. ## M02: timed holds start after 1 s settling Version v5.8.10 waits 1 s after LOAD_ON before the first reading and hold clock. Tolerances and voltage/power/current-limit checks on acquired samples remain unchanged. No ADC values are acquired during the wait. All nine resumed cases passed and verified LOAD_OFF on cleanup. ## CC-selection response warning in the final preflight The T29 recovery-check log contains one CRC ok: False result for a 38-byte SET_CC_LINE_SELECTION response and an unconfirmed-ACK warning. The next standalone status response was CRC-valid and reported CC2; the recovery check and final case passed. This warning remains in the originals and log_warnings.csv; this record does not claim warning-free control communications. Original FAILED / INCOMPLETE / INTERRUPTED statuses are preserved. M02 is only the resumed subset and remains INCOMPLETE despite nine passing cases. W01 is supplementary interrupted evidence and excluded from case statistics. --- # Selected evidence for all 29 cases Select the latest complete passing four-case voltage block from one run: before, sweep, hold and after. The final transition uses M02. All 33 M01/M02 attempts, including failure/duplicates, remain in attempt_ledger.csv; W01 has a separate two-attempt supplementary ledger. | ID | Target V | Phase | Run | Steady N | | --- | --- | --- | --- | --- | | T01 | 5 | Low-load before | M01 | 3 | | T02 | 5 | Current round trip | M01 | 93 | | T03 | 5 | Loaded hold, 120 s | M01 | 120 | | T04 | 5 | Low-load after | M01 | 3 | | T05 | 9 | Low-load before | M01 | 3 | | T06 | 9 | Current round trip | M01 | 93 | | T07 | 9 | Loaded hold, 120 s | M01 | 120 | | T08 | 9 | Low-load after | M01 | 3 | | T09 | 15 | Low-load before | M01 | 3 | | T10 | 15 | Current round trip | M01 | 93 | | T11 | 15 | Loaded hold, 120 s | M01 | 120 | | T12 | 15 | Low-load after | M01 | 3 | | T13 | 20 | Low-load before | M01 | 3 | | T14 | 20 | Current round trip | M01 | 153 | | T15 | 20 | Loaded hold, 120 s | M01 | 120 | | T16 | 20 | Low-load after | M01 | 3 | | T17 | 28 | Low-load before | M01 | 3 | | T18 | 28 | Current round trip | M01 | 153 | | T19 | 28 | Loaded hold, 120 s | M01 | 120 | | T20 | 28 | Low-load after | M01 | 3 | | T21 | 36 | Low-load before | M02 | 3 | | T22 | 36 | Current round trip | M02 | 153 | | T23 | 36 | Loaded hold, 120 s | M02 | 120 | | T24 | 36 | Low-load after | M02 | 3 | | T25 | 48 | Low-load before | M02 | 3 | | T26 | 48 | Current round trip | M02 | 153 | | T27 | 48 | Loaded hold, 120 s | M02 | 120 | | T28 | 48 | Low-load after | M02 | 3 | | T29 | 48 | 48 V to 5 V return | M02 | 6 | Every case in this table is PASS. M01 supplies T01 - T20; M02 supplies T21 - T29. Detailed CSVs include version, settling and original relative paths. M01 T21 - T23 passing duplicates and the T24 failure remain outside selected statistics. --- # Identity, measurement basis and scope | Item | CH32 observation | | --- | --- | | Cable | Passive; 5 A; maximum PD voltage 48 V | | VID / PID | 0x367E / 0x8488 | | Cable VDO | 0x000A2644 | | USB speed field | usb4_gen4 (advertised only; data transfer untested) | | Sessions | C01 session_0001 / CC2; C02 session_0002 / CC1; same reported VDO | | Physical association | CH32 asset labels are blank; operator notes bind this physical c_sample1. | ASD-PD31 did not read the E-Marker. CH32 Identity and loaded measurements are separate evidence. The operator-entered 240 W rating is not independent verification of retail labeling. Two CH32 CC observations do not establish loaded coverage of all plug orientations. ## Data populations | Population | Readings | Treatment | | --- | --- | --- | | Selected 29 cases | 1,779 steady + 7 precheck | Hold/sweep statistics | | All 33 M01/M02 attempts | 2,056 steady + 8 precheck | Includes failure/duplicates | | 5 V recovery checks | 66 total; 58 selected | Separate from cases | | W01 earlier interruption | 2 attempts; 3 case + 2 preflight rows | Supplementary; excluded | Steady analysis excludes original modes ending in -precheck or -ramp; no original mode is literally steady. Normalized measurement_phase is available; original mode, line and relative path remain. Originals are copied unchanged; manifest_sha256.csv records file sizes and SHA-256. ## Items outside this record ASD internal temperature is fan-dependent and was not used to assess source/cable/plug heating. PPS/AVS loading, USB data performance, insulation/endurance, certification, all orientations, 230 Vac and matched reference-cable comparisons are outside this record. Revision 02 updates the earlier partial-coverage finding with acquired cross-run evidence. For a single-condition uninterrupted record or automatic reference baseline, rerun full from the start with matched software and settling. Original outcomes were not rewritten as a single-run pass.