USB Library
PROGRAM_DEVICE

The PROGRAM_DEVICE (0x05) command sends the data that is going to be written to the device. Since this command has a maximum data payload of 58 bytes, it is necessary to issue multiple commands to program a single area of memory. 

The data payload section of the packet is packed from the end, with the padding following the Size field. Ex: If the host sends 4 bytes of data to be programmed, the resulting packet would have 54 bytes of padding followed by four bytes data. 

This command does not have any associated response. 

Table: PROGRAM_DEVICE command format  

Packet Byte 
Content 
PROGRAM_DEVICE (0x05) 
1-4 
32-bit address to program (little endian) 
Size (1-58 bytes) 
6-(n) 
Padding (0-57 bytes) 
(n+1) 
Data Payload 
MLA - USB Library Help Version : 2.16
http://www.microchip.com/mla