# USB 32 KiB matrix Round 2 controller result: USB05_4G and USB01_2G

Status: complete
Result: complete; controller workflow and subsequent independent Pi validation passed
Type: evidence
Updated: 2026-08-01
Next Action: none; retain as historical round evidence for the completed matrix
Campaign: 003-complete-bounded-hpt-slow-export-firmware-ticket

Project Map: work/maps/map-smi-firmware-stabilization-and-qualification.md
Workpackage: work/wp/completed/wp-restore-broad-usb-compatibility-baseline.md
Checklist: work/checklists/checklist-stage-1b-four-drive-usb-compatibility-baseline.md

## Candidate and allocation

- Deployed firmware source commit:
  `8fa1479b6b942f72f18ff4ed2cb1a5c73ddc2501`.
- Release ELF SHA-256:
  `6A2D8F79D72387311C83599663B192FCF764F53AB3E0926E3B917F3746B426CA`.
- Release S-record SHA-256:
  `82A277EEBBED0CC4FBDDCC848ACEFD43E706849803673C4920E7851FC2ACABB5`.
- Controller A, assembly `1751136`, hardware variant `0`, J-Link
  `69664082`: `USB05_4G`.
- Controller B, assembly `1751219`, hardware variant `1`, J-Link
  `69660123`: `USB01_2G`.

The raw helper artifacts record repository HEAD `c63de824...` because that is
the evidence-script/planning state at capture time. Candidate-bound tools
verified the explicit frozen ELF and S-record above; no firmware was rebuilt
or substituted.

## Enumeration observation and entry gates

Controller B mounted `USB01_2G` on its first insertion with a valid FileX
session, media generation `2`, and zero errors.

Controller A initially detected `USB05_4G` electrically but did not complete
USBX class/media enumeration. The read-only capture showed host attachment
`1`, port status `1`, `usb_mounted=0`, `SYSSTS0=32769`, `DVSTCTR0=512`, no
fresh media generation, application session state `5`, null media identity
and pointer, and zero system/USB application errors. No FileX operation had
started. After one clean powered USB removal, five-second wait, and full
reinsertion, the drive completed normal enumeration with a fresh generation
`3`, `SYSSTS0=32864`, `DVSTCTR0=531`, USB mounted `1`, handoff status `0`,
acceptance mask `15`, application session state/status `2/0`, and a valid
FileX media pointer. No controller power, VBUS command, firmware retry, or
drive-specific code path was used.

This initial below-class enumeration miss is retained as compatibility
evidence. It does not establish a FileX or 32 KiB write failure, but it means
the round is not described as a zero-intervention first-insertion pass.
Controller A has now shown initial enumeration misses with both `USB03_32G`
and `USB05_4G`; promotion must account for that pattern after the complete
matrix is available.

Required SD identities at the guarded export release were:

| Controller | Protocol status | CID valid | Representative sector | Identity |
| --- | ---: | ---: | ---: | --- |
| A | `6` | `1` | `1` | SanDisk/WD; MID `0x03`; OEM `SD`; product `SS08G`; revision `8.0`; serial `2540634244`; manufactured `2024-05`; raw CID `035344535330384780976F0084018559` |
| B | `6` | `1` | `1` | SanDisk/WD; MID `0x03`; OEM `SD`; product `SS08G`; revision `8.0`; serial `2540634245`; manufactured `2024-05`; raw CID `035344535330384780976F0085018507` |

The general HPT identity helper's separate last-operation field reported
representative-sector status `0` after chart-cache capture. It did not
authorize either export. Initial and final USB captures reported
representative-sector validity `1`, and each trigger-specific guarded capture
released its request only with representative-sector validity `1`.

## Common customer workflow

After the single recorded insertion reseat on A, both controllers accepted
the same operations without workflow retry:

- enumerate and load `W00.WAV` and `W01.WAV`;
- exercise sound 1 playback;
- publish a new PID capture;
- replace `7520553_SMI_00_05_00.imx`;
- publish a full retained-range HPT CSV.

Image-publication metrics were:

| Drive / controller | Bytes | Calls | Maximum write | Write | Close | Flush | Rename | Total | Result |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | --- |
| `USB05_4G` / A | 8,388,864 | 8,193 | 1,024 | 225.71 s | 0.00 s | 1.32 s | 0.05 s | 239.03 s | published, status `0` |
| `USB01_2G` / B | 8,388,864 | 8,193 | 1,024 | 426.43 s | 0.01 s | 0.56 s | 0.06 s | 437.33 s | published, status `0` |

The image path intentionally retains its established 1 KiB FileX writes. The
candidate changes only the HPT export write cap.

## Full-range 32 KiB HPT discriminator

| Drive / file | Requested range | Selected / health | Bytes / calls / maximum | Timing | Result |
| --- | --- | --- | --- | --- | --- |
| `USB05_4G` / `K2A_USB05.csv` | `301739760..302285220` | 8,809; 8,809 healthy, 0 degraded, 0 gaps | 442,642 / 14 / 32,768 | scan 11.23 s; write 1.83 s; close 0.01 s; USB 3.26 s; total 14.54 s | state/reason `4/0`; complete/published `1/1`; USB status `0`; phase `14` |
| `USB01_2G` / `K2B_USB01.csv` | `301741860..302285280` | 8,817; 8,736 healthy, 81 historically degraded, 0 gaps | 443,162 / 14 / 32,768 | scan 11.30 s; write 2.51 s; close 0.00 s; USB 4.03 s; total 15.34 s | state/reason `4/0`; complete/published `1/1`; USB status `0`; phase `14` |

Controller B's 81 degraded records are an existing HPT source-data
classification, not a USB failure. Both exports covered their complete
captured retained ranges, reached the exact 32 KiB maximum, reported no
snapshot or requested-range gaps, and completed close, flush, rename, and
publication with no USB failure.

## Final controller state and disposition

Final captures on both controllers showed USB mounted `1`, host attached `1`,
handoff status `0`, acceptance mask `15`, application session state/status
`2/0`, valid FileX media pointers, complete image metrics, system errors `0`,
USB application errors `0`, full SD detection/CID/representative-sector
validity, and no VBUS activity.

Raw captures remain in the ignored local evidence tree:

- `work/evidence/hpt-log-store-circular-mirror/controller-a/usb-32k-round2-usb05-20260731/`
- `work/evidence/hpt-log-store-circular-mirror/controller-b/usb-32k-round2-usb01-20260731/`

Round 2 passes the controller-side common workflow and the isolated 32 KiB
discriminator on the opposite hardware pairing. At controller closeout it was
not yet an end-to-end PASS because the independent no-repair Pi gate remained
pending.

The subsequent independent Pi gate passed FAT consistency, equal FAT copies,
kernel state, exact CSV sizes and continuous sequences, COMPLETE markers,
PID/WAV content, identical internally CRC-valid recovery images, absence of
temporary artifacts, and final unmounted state. Round 2 is PASS end to end.
See `work/evidence/usb-32k-round2-pi-usb05-usb01-20260731.md`.
