AnsweredAssumed Answered

USB Device CDC on KSDK PEx components and KDS 3.0 and KSDK 1.2.0 or KSDK  1.3.0 .

Question asked by Konstantin Grjznov on Oct 11, 2015

Hardware and software configuration:


OpenSDA J-Link firmware

KDS 3.0 with KSDK 1.2.0 and KSDK 1.3.0 Eclipse update installed.


KDS no updates: 

GNU ARM C/C++ Cross Compiler

GNU ARM C/C++ J-Link Debugging

GNU ARM C/C++ OpenOCD Debugging


File→New→Kinetis Project…. Name… boards FRDM-K64

Select KSDK 1.2.0 or KSDK 1.3.0

Select Processor Expert

Set Build Options

Stack Size 0x1000

Heap Size 0x0400


Now I find the fsl_usb_framework component from KSDK 1.2.0 or KSDK 1.3.0

and add it to project and inherited components :

Note: is  KSDK 1.2.0 set Baud Rate in  component fsl_debug_console.



Select usbFmw:fsl_usb_framework Properties Mode and Select Device class driver USBCFG_DEV_CDC Enabled


Select usbFmw:fsl_usb_framework Properties Initialization

and Select Auto Initialization Disabled

Click Generate Prosessor Expert Code


Create New Folger classes



Includes Path








and Apply.


Copy C:\Freescale\KSDK_1.X.0\usb\usb_core\device\sources\classes\

to {ProjDirPath}/SDK/usb/usb_core/device/sources/classes/








Copy c:\Freescale\KSDK_1.X.0\examples\frdmk64f\demo_apps\usb\device\cdc\virtual_com\

to {ProjDirPath}/Sources/





Note: Not copy virtual_com.c

Next step change main.c based virtual_com.c.

  View attachment projects. 

  Click Generate Prosessor Expert Code.

  Note: function void APP_init(void) different KSDK_1.2.0 and KSDK_1.3.0

If KSDK_1.3.0 add

cdc_config.board_init_callback.callback = NULL ; //usb_device_board_init;

cdc_config.board_init_callback.arg = CONTROLLER_ID;





Original Attachment has been moved to: CDC_KDS130.ZIP

Original Attachment has been moved to: CDC_KDS120.ZIP