# Controller A General UDisk legacy compatibility qualification

Date: 2026-07-28
Result: PASS

## Identities

- Controller: A
- J-Link serial: `69664082`
- Firmware SREC SHA-256:
  `DF656508FDA7F20351ACEA0356FB79981710B96B39DD7CD1D64138CB4210F520`
- SD protocol status: available
- SD CID-valid status: valid
- SD representative-sector-read status: passed by the deployment capture
- SD manufacturer: SanDisk
- SD MID: `0x03`
- SD OEM/application ID: `SD`
- SD product name: `SS08G`
- SD product revision: `0x47`
- SD serial number: `0x80976F00`
- SD manufacturing date: 2018-05
- SD raw CID: `035344535330384780976F0084018559`
- USB model: General UDisk
- USB serial: `1003112253528015858612`
- USB capacity: 8 GB nominal / 7.5 GiB reported
- USB ID: `abcd:1234`
- FAT label: `A-CTRL`
- FAT UUID after controlled format: `F97A-E557`

## Compatibility trigger

The General UDisk previously reproduced `SYNCHRONIZE CACHE(10)` failure on
Linux with `Illegal Request / Invalid field in CDB` (sense key `0x05`, ASC
`0x24`, ASCQ `0x00`). The qualified firmware converts only that exact response
into legacy compatibility mode. Timeouts, transport failures, medium or
hardware errors, and all other sense responses remain terminal.

Compatibility publication requires a five-second physical USB VBUS removal,
fresh enumeration and FileX remount, exact size and marker checks, and a
complete post-remount CRC read of the published file.

## Controller results

The 1 MiB tier passed at 16, 32, 64, and 96 KiB maximum FileX write sizes:

- Each output was exactly `1,048,576` bytes.
- Write-call counts were 64, 32, 16, and 11 respectively.
- All first and final FileX statuses were zero.
- All four completion flags were set.
- Overall status was zero and USB was mounted after the final cycle.
- The exact-sense compatibility counter advanced by eight.

The 7 MiB tier passed at 16, 32, 64, and 96 KiB:

- Each output was exactly `7,340,032` bytes.
- Write-call counts were 448, 224, 112, and 75 respectively.
- All first and final FileX statuses were zero.
- All four completion flags were set.
- Overall status was zero and USB was mounted after the final cycle.
- The cumulative exact-sense compatibility counter advanced to 16.

Controller telemetry is retained under:

- `work/evidence/hpt-log-store-circular-mirror/controller-a/usb-legacy-compatibility-20260728/general-udisk-1m/`
- `work/evidence/hpt-log-store-circular-mirror/controller-a/usb-legacy-compatibility-20260728/general-udisk-7m/`

## Independent Pi verification

The serial-numbered UDisk was mounted read-only on `srv-rpi00.local`. All eight
files were fully read:

- Every 1 MiB output SHA-256:
  `6ab78b4dde26efd91a20aa003198a13d794b1cd7276f3cc05880f944f56966b3`
- Every 7 MiB output SHA-256:
  `885418a583a8ebf3d9e0c0f0811ca821fb82ee99a25ef6573a0a49f01fc82b1d`
- Byte-for-byte comparison passed among all four write-size variants in each
  tier.
- `fsck.vfat -n -v` reported a consistent filesystem.
- The UDisk was unmounted after verification.

## Conclusion

The original bad-USB-write specimen is compatible with the narrowly gated
fallback. The controller does not falsely claim persistence after the
unsupported cache command: it physically removes USB power, remounts the
device, and completely rereads each output before reporting success.

This qualifies the fallback and this specimen. It does not by itself select a
new production HPT write-size cap or complete additional-specimen and lifecycle
qualification.
