Which translates to: Byte 0, bit 5-7: Peripheral qualifier: 0 Byte 0, bit 0-4: Peripheral device type: 0 Byte 1: Page code: 0x80 Byte 2-3: Page length: 0x202 = 514 Byte 4-: Product Serial Number: And the spec says: The PRODUCT SERIAL NUMBER field contains right-aligned ASCII data. 0x1f is _not_ ASCII. So the field is garbage anyway. And you can already spot the issue with the output: - There's a wrap at 0x200; the line in 0x200 looks identical to the first line. I _bet_ if you ask the device to provide you with 1k of data you'd be getting the same output twice ... - It looks as if they've stored the information in a 512-byte buffer (ie one block), but fail to set the correct offsets. - Surprisingly enough, '0x1f' is roughly the size of the following right-aligned ASCII data. One more indicator for crappy USB information. Anyway, it's garbage. But I've fixed now the sg3_utils to not display any information for invalid fields.