2015-04-01 03:01 AM
Hi
I'm using STM32Cubef4 USB Host CDC library on STM32F429I-Discovery. I have problem to connect a FTDI device. The USB host process returnHOST_ABORT_STATE because the FTDI class is 0xFF (Vendor specific) and CDC class is 0x in usbh_core.cfor
(idx = 0; idx < USBH_MAX_NUM_SUPPORTED_CLASS ; idx ++)
{
if
(phost->pClass[idx]->ClassCode == phost->device.CfgDesc.Itf_Desc[0].bInterfaceClass)
{
phost->pActiveClass = phost->pClass[idx];
}
}
if
(phost->pActiveClass != NULL)
{
if
(phost->pActiveClass->Init(phost)== USBH_OK)
{
phost->gState = HOST_CLASS_REQUEST;
USBH_UsrLog (
''%s class started.''
, phost->pActiveClass->Name);
/* Inform user that a class has been activated */
phost->pUser(phost, HOST_USER_CLASS_SELECTED);
}
else
{
phost->gState = HOST_ABORT_STATE;
USBH_UsrLog (
''Device not supporting %s class.''
, phost->pActiveClass->Name);
}
}
else
{
phost->gState = HOST_ABORT_STATE;
USBH_UsrLog (
''No registered class for this device.''
);
}
}
There are any solution to connect with a FTDI? (or orher device with Vendor specific class)
#stm32cubef4-cdc-host-ftdi
2016-02-14 01:42 AM
Hi pini.lorenzo,
not sure if this is still relevant for you - but I encountered the same thing and in the moment �´m investigating on the same FTDI issue like you. So, when I used another STM4 Discovery board as a USB device and run on that device the STM32 USB device VCP (virtual com port) example and connected that board with the USB CDC host board - both boards talked to each other. So this seems to be step one for me. Now I have to figure out whats the difference between the STM32 VCP and the ''real'' FTDI cable... (If you succeeded with the FTDI device already it would be great if you share...)