Is there any special reason you are using Auto DMA? Since you are using HID Generic, you probably are transferring a few bytes only. There is no performance advantage using DMA in this case, since you still need to spend time setting up the DMA and serving the DMA ISR.
couple of reasons actually:
1. I was hoping that the source of the errors was something else in my code, and that using auto-DMA would fix it(if the data is transferred automatically, maybe my other code can't screw it up - some sort of timing problem or something; maybe my other code was taking too long).
2. I was hoping to use CyUSB as in AN82072 to make a data logger. Even with only one endpoint that's still 64kB/s. It just happens that in this test project I am only sending sample text.
3. I'm thinking about learning all the device classes. First Generic HID, then a bulk transfer, and so on, until finally a composite device. Develop mastery of all the types.
In one of my other questions I ask about the ISRs. I'm wondering about both DMA and regular - I'd be happy for any input you have there!
If you want to implement a data logger, perhaps CDC Device Class would be the easiest. There is no need to have a custom driver on PC side. It is also easy to write software, since there are many libraries out there to write to COM ports.
If you still want to move ahead with the Generic HID, then please attach your project here. It helps to debug and get more people involved in the discussion.
Just a note, in the code, be sure to check out USB_EP_2_ISR