2018-07-02 12:50 AM
Posted on July 02, 2018 at 09:50
Hi everyone !
I am currently trying to write a custom usb class driver to support a webcam. I am using the STM32F769 Discovery boark and the STM32CubeF7 firmware. After the first steps of enumeration and initialisation, I want to send some request to the webcam (set_cur, get_cur). I noticed that the set_cur involving a data stage would cause problems if the DMA is not enabled, I seems as if a NYET package is received right after the data stage. However with the DMA enabled, a set_cur request would result in a stall. By checking the VC_REQUEST_ERROR_CODE_CONTROL via a get_cur request It seems that the data value I wanted to set is out the range expected by the webcam eventhough I set it at its default value.
TL:DR : Weird behavior when making a set_cur request which involves a data stage to a device. Data seems corrupted before the transfer. Using USB HS on STM32f769 Disco