I want to send a custom SCSI command to my Cypress device from the Host. I'm exploring using the Cypress CyUSB.NET API, in particular the CyUSBStorDevice's SendScsiCmd() function. Some questions:
- According to the Programmer's Reference, the SendScsiCmd() uses the CDB10 structure. What if the CDB I want to send is a different size (e.g. 6 Bytes or 16 Bytes)?
- What is the difference between the Cmd byte and the Op byte? Isn't the SCSI command the same as the opcode sent in the CDB?
- Can I send a Cmd byte that is not part of the standard Scsi commands?
Thanks in advance for the help.
-Our API uses a 10 byte structure for the SCSI Pass through and hence you cannot send a CDB of a different size.
-The actual command code is sent with the cmd byte while the op byte is additional argument which may be required in some commands only.
-You could send a custom command but it should be supported by your device.