I am using the FRDM-K22F and would like to be able to communicate to an FTDI232R device. Starting with the host_cdc_serial_frdm22K_freertos_frdmk22f demo, I get to the point where the display shows only "unsupported device attached."
Has anyone who has worked with the FRDM series implemented the USB interface to an FTDI chipset? If so, what pointers can they provide.
Just starting on this, so it is all new to me!
I haven't FTDI232R, but I have CP2102 and PL2303. I tested these chip and it seems they are same. I trace the enumeration flow and found some reason. In Device Descriptor, DeviceClass is 00. In Interface Descriptor, bInterfaceClass is 0xFF. The interface class is vendor-specific. So when USB_HostCdcEvent find bInterfaceClass is not USB_HOST_CDC_COMMUNICATIONS_CLASS_CODE, it shows this device is not supported.
By manipulating the values for the VID & PID in the DriverInfoTable, I was able to get the FTDI to enumerate and the program is "happy". However, since I have not set up the FTDI chip with baud rate, etc., it is not happy.
I am using the host_cdc_serial_frdm22k_freertos_frdmk22f as a starting point and this leads me to two questions:
1. In the DriverInfoTable in the example there are two entries (USB_CLASS_COMMUNICATION and USB_CLASS_DATA), what does each entry represent?
2. In setting up the FTDI, I need to be able to send/receive control/status information to endpoint 0. How is this accomplished versus sending/receiving data?
Offhand, I don't recall if I got the FTDI interface fully functional. There were issues about NDAs, etc. before they would send me the technical information. Since my end goal was to communicate over Bluetooth and I had been using a USB=>Bluetooth adapter from Laird Tech which used the FTDA. I looked around and found a Bluetooth adapter from Ada Fruit that used the CP2102 chip. SiLabs was very cooperative in sending me the info I needed (even without an NDA) and I got that up and running.
After all that, my client ended up not using the Bluetooth capability - for now. Oh, well...