AnsweredAssumed Answered

Looking for GCC based CDC code for F107 that actually works

Question asked by Wood.Robert on May 19, 2016
Latest reply on Sep 13, 2016 by Wood.Robert
Folks,

I've spent almost two weeks trying to get a virtual com port (VCP) working on an F107 with FreeRTOS and am getting problems whichever thing I try.

I started with an old version of FreeRTOS with old libraries and tried to get my F103 code working on the F107 to no avail.

I then tried using Cube code which seemed to crack it, but then it crashes when you replug the USB cable.

I then found some run-to-complete software here:

https://github.com/znuh/STM32_VCP

This  echoes back what is sent to it and thought I'd cracked it as you can plug and unplug as much as you want and it still works. However, when I integrated that into FreeRTOS I realised that this continually jumps into the USB OTG interrupt routine amd starves all tasks (even though it does echo data back to the terminal which sends data *to* the F107).

Finally, I've spent the whole day getting this code to work:

https://my.st.com/public/STe2ecommunities/mcu/Lists/cortex_mx_stm32/Attachments/23342/STM32_USB-FS-Device_Lib_V3.3.0.zip

Which is the official STM code, but this does exactly the same as the first lot of run-to-complete software, i.e. it just never clears the interrupt bits. I've spent hours and hours trying to work out how to make the software clear those bits and it is beyond me.

So, does anyone have some software for the STM32F107 that enables be to have a CDC/VCP going on the OTG port please?

Or maybe they could tell me how on earth to stop this ST official code from doing nothing but jumping in to its OT interrupt service routine?

My sanity awaits a reply!

Thanks!

Outcomes