Dear readers,
I’m developing a USB interface with KEIL MDK Plus (V5.35) and the STM32CubeMX (V6.5) tool.
Is it possible to configure endpoint 0 to a message pipe resp. to a control transfer type ? The Run-Time Environment looks like:
In principle it should be possible to edit BMAttributes = 0 (=control) but I think this is not supported by the library ? At least it is not a standard in the CustomClass_0.h file:
The reason is the used WinUSB driver which can't access the "WinUsb_ControlTransfer" function.
Thanks in advance!
Best regards
Norbert
Moving to Keil specific forum
I'm not sure I completely understand what you are trying to do but in general USB device has only 1 Control Endpoint (EP0) which is minimum required for device to be able to be addressed and return basic information about it to the USB Host.
Control Endpoint 0 can be used also to send or read data to/from Device or Interface or Endpoint, you already have and example Windows application with source code in the Middleware pack called WinUSB_Test.exe under folder similar to \ARM\PACK\Keil\MDK-Middleware\7.x.y\Utilities\WinUSB_Test\Release\ .
Hi Milorad,
Thanks for your response.
Please help me where can I find the given path '\ARM\PACK\Keil\MDK-Middleware\7.x.y\Utilities\WinUSB_Test\Release\ ' to download the WinUSB_Test application with source code. I tried this in the past but I wasn't successful. Is it in the Pack Installer or in the ARM development environment ?
Thanks in advance.
B.R.
Hi Norbert.
From your screenshot it is obvious you have already MDK-Middleware pack installed, so you can just search for WinUSB_Test.exe on your local machine starting from root where you have Keil MDK installed.Root of Keil MDK would usually be on your C drive in C:\Keil or C:\Keil_v5Also, there is an example on how to use WinUSB it is called WinUSB_Echo and available for many devices, however unfortunately not for the one you are using (STM32F3) but closest one you could use for reference is STM32F4 series.You can find that example via Pack Installer or also searching for it, but you have to install STM32F4xx_DFP pack.
Best regards, Milorad
Wow, thank you, finally I found the path to the examples !
Let me check the examples and I give you a feedback afterwards.