1 | 20141104/TOV
|
---|
2 | Testing of Prolific PL2773 based on reverse engineering from ismart.exe with API monitor.
|
---|
3 | Commands replicated with sg_raw
|
---|
4 |
|
---|
5 | sudo sg_raw -v -v -r 0x100 /dev/sdb d0 0 0 0 06 7b 0 0 0 0 0 0
|
---|
6 | # ismart.exe only requests 16 bytes, but block is 256 long and then repeats
|
---|
7 | # First 16 bytes seems like firmware version info
|
---|
8 | # Some bytes change value on consecutive runs?!
|
---|
9 | Received 256 bytes of data:
|
---|
10 | 00 06 7b 27 73 20 11 05 24 08 21 00 01 03 00 04 00 .{'s ..$.!......
|
---|
11 | 10 00 00 94 57 ce 2d 8f 9f ef e9 ed ff 7e 83 be 0f ...W.-......~...
|
---|
12 | ...
|
---|
13 |
|
---|
14 | sudo sg_raw -v -v -r 0x18 /dev/sdb F4 0 0 0 6 7b
|
---|
15 | # Makes some error?!
|
---|
16 | SCSI Status: Check Condition
|
---|
17 |
|
---|
18 | Sense Information:
|
---|
19 | Fixed format, current; Sense key: Illegal Request
|
---|
20 | Additional sense: Invalid command operation code
|
---|
21 | Raw sense data (in hex):
|
---|
22 | 70 00 05 00 00 00 00 0a 00 00 00 00 20 00 00 00
|
---|
23 | 00 00
|
---|
24 |
|
---|
25 | sudo sg_raw -v -v /dev/sdb D8 15 0 D8 06 7B 0 0 0 0 1 1 4F C2 A0 B0
|
---|
26 | # Makes disk make noises...
|
---|
27 | # B0 = ATA_SMART_CMD
|
---|
28 | # D8 = SMART Enable
|
---|
29 |
|
---|
30 | sudo sg_raw -v -v -r 0x24 /dev/sdb 12 0 0 0 24 0 0 0 0 0 0
|
---|
31 | # Returns device info
|
---|
32 | Received 36 bytes of data:
|
---|
33 | 00 00 00 00 00 23 00 00 00 57 44 43 20 57 44 32 30 ....#...WDC WD20
|
---|
34 | 10 45 41 52 53 2d 30 30 4d 56 57 42 30 20 20 20 20 EARS-00MVWB0
|
---|
35 | 20 35 31 2e 30 51.0
|
---|
36 |
|
---|
37 | sudo sg_raw -v -v -r 512 /dev/sdb D8 15 0 D0 06 7B 0 0 2 0 1 1 4F C2 A0 B0
|
---|
38 | # B0 = ATA_SMART_CMD
|
---|
39 | # D0 = READ_VALUES
|
---|
40 |
|
---|
41 | sudo sg_raw -v -v -r 512 /dev/sdb D8 15 0 D1 06 7B 0 0 2 0 1 1 4F C2 A0 B0
|
---|
42 | # B0 = ATA_SMART_CMD
|
---|
43 | # D1 = READ_THRESHOLDS
|
---|
44 |
|
---|
45 | sudo sg_raw -v -v /dev/sdb D8 15 0 D4 06 7B 0 0 0 0 0 1 4F C2 A0 B0
|
---|
46 | # Starts a selftest (Disk makes noises for a while!)
|
---|
47 | # B0 = ATA_SMART_CMD
|
---|
48 | # D4 = SMART Execute Off-line immediate
|
---|
49 |
|
---|
50 | sudo sg_raw -v -v -r 0x10 /dev/sdb D7 0 0 0 06 7B 0 0 0 0 0 0 0 0 0 0
|
---|
51 | # ATA status registers
|
---|
52 | # Receives 16 bytes of data
|
---|
53 | # Different examples when fooling around:
|
---|
54 | 00 50 00 00 00 09 00 4f 00 c2 00 a0 d5 00 b0 00 50 P.....O........P
|
---|
55 | 00 50 00 00 00 01 00 4f 00 c2 00 a0 d9 00 b0 00 50 P.....O........P
|
---|
56 | 00 fa c3 13 1c 06 72 9f f8 3b ba 06 01 98 00 00 d1 .....r..;.......
|
---|
57 | 00 51 04 01 00 b4 00 4f 00 c2 00 a0 d9 00 b0 00 50 Q.....O........P
|
---|
58 | 00 50 00 00 00 01 00 4f 00 c2 00 a0 d8 00 b0 00 50 P.....O........P
|
---|
59 |
|
---|
60 |
|
---|
61 |
|
---|