Device status, Get status – Rainbow Electronics AT89C5132 User Manual
Page 13

13
AT89C5132
4256A–USB–06/03
Device Status
Get Status
The Host employs the DFU_GETSTATUS request to facilitate synchronization with the
device. This status gives information on the execution of the previous request: in
progress/OK/Fail/...
The device responds to the DFU_GETSTATUS request with a payload packet contain-
ing the following data:
bmRequestType
bRequest
wValue
wIndex
wLength
Data
1010 0001b
DFU_GETSTATUS (3)
Zero
Interface (4)
6
Status
0010 0001b
DFU_CLRSTATUS (4)
Zero
Interface (4)
Zero
none
Table 9. DFU_GETSTATUS Response
Offset
Field
Size
Value
Description
0
bStatus
1
Number
An indication of the status resulting from the execution of the most recent request.
1
bwPollTimeOut
3
Number
Minimum time in milliseconds that the host should wait before sending a subsequent
DFU_GETSTATUS. The purpose of this field is to allow the device to dynamically adjust
the amount of time that the device expects the host to wait between the status phase of
the next DFU_DNLOAD and the subsequent solicitation of the device’s status via
DFU_GETSTATUS.
4
bState
1
Number
An indication of the state that the device is going to enter immediately following
transmission of this response.
5
iString
1
Index
Index of status description in string table.
Table 10. bStatus Values
Status
Value
Description
OK
0x00
No error condition is present
errTARGET
0x01
File is not targeted for use by this device
errFILE
0x02
File is for this device but fails some vendor-specific verification test
errWRITE
0x03
Device id unable to write memory
errERASE
0x04
Memory erase function failed
errCHECK_ERASED
0x05
Memory erase check failed
errPROG
0x06
Program memory function failed
errVERIFY
0x07
Programmed memory failed verification
errADDRESS
0x08
Cannot program memory due to received address that is out of range
errNOTDONE
0x09
Received DFU_DNLOAD with wLength = 0, but device does not think it has all the data yet
errFIRMWARE
0x0A
Device’s firmware is corrupted. It cannot return to run-time operations
errVENDOR
0x0B
iString indicates a vendor-specific error
errUSBR
0x0C
Device detected unexpected USB reset signaling