<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>LPC MicrocontrollersのトピックUSBDEV\Usb_Cdc: Some comments, updates, hints</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/USBDEV-Usb-Cdc-Some-comments-updates-hints/m-p/562240#M16451</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by capiman on Sun Sep 30 01:35:18 MST 2012&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;i have downloaded&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fwww.lpcware.com%2Fcontent%2Fnxpfile%2Flpc4350apdlzip" rel="nofollow" target="_blank"&gt;http://www.lpcware.com/content/nxpfile/lpc4350apdlzip&lt;/A&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;(according to release notes: RELEASE: LPC4300CMSIS_20120531)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;and tried&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;\Examples\USBDEV\Usb_Cdc&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;on a MCB4357. First i had some problems, but meanwhile i have it running. Just want to share some comments, updates, hints&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;to save you some hours of trying and debugging)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1) I used KEIL uVision4 (V4.54, mdk454.exe). It was no real problem to compile the project.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;(I can't remember what i have done in detail, but i set used chip to MCB4357, checked that used flash address is 0x1A000000 (Bank A).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;And i selected to create a HEX file. Even it says "Internal SRAM" a hex file with address range starting at 0x1A000000 was created...)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Perhaps Abstract.txt is not up-to-date with "Internal SRAM" or it is something i have changed, but where i a not aware of)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;2) I downloaded with latest FlashMagic 6.94.2780. Flash Bank: "Bank 0". Item "Activate Flash Bank" must be selected.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;(Selecting the correct chip type was a bit a problem, selection window is too big, i can't see "OK" button on my computer, big screen,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;selected bigger fonts, perhaps this is the reason for the problem?)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;3) Connect USB cable to USB0 and PC.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Abstract.txt mentions: "If use USB Port 1, pls set Main Clock to 60Mhz in CGU_Init function"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;(I have not tried USB1, because chosen the easy way first. I am happy to get it running on the new MCB4357 at all).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;4) My PC (Vista 64 Bit) reported new device "NXP LPC18xx VCOM ", looks good.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;5) Now selected the delivered *.inf file, but was not recognized. Seems to be old topic, inf file not yet ready for 64 bit...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;SPAN&gt;(there was a posting in LPC2000 yaqhoo group, see &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Ftech.groups.yahoo.com%2Fgroup%2Flpc2000%2Fmessage%2F54637" rel="nofollow" target="_blank"&gt;http://tech.groups.yahoo.com/group/lpc2000/message/54637&lt;/A&gt;&lt;SPAN&gt; )&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;i have adapted it only for the reported VID / PID:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;; This INF works for Windows XP SP2, Windows XP x64,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;; Windows Vista x86, Windows Vista x64, and Windows 7 x86 and x64.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;; This INF will work with Windows XP, and Windows XP SP1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;; after applying specific hotfixes&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;; (I have no idea what those hotfixes might be... boB)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[Version]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Signature&amp;nbsp;&amp;nbsp;&amp;nbsp; = "$Chicago$"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Class&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = Ports&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ClassGuid&amp;nbsp;&amp;nbsp;&amp;nbsp; = {4D36E978-E325-11CE-BFC1-08002BE10318}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Provider&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = %Provider%&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;DriverVer&amp;nbsp;&amp;nbsp;&amp;nbsp; = 05/31/2010,3.1.0.0&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;CatalogFile&amp;nbsp; = g_serial.cat&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[Manufacturer]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;%Provider%=GSerialDeviceList, NTamd64, NTia64&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialDeviceList]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;%GSERIAL%=GSerialInstall,&amp;nbsp; USB\VID_1FC9&amp;amp;PID_2002&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialDeviceList.NTamd64]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;%GSERIAL%=GSerialInstall,&amp;nbsp; USB\VID_1FC9&amp;amp;PID_2002&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialDeviceList.NTia64]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;%GSERIAL%=GSerialInstall,&amp;nbsp; USB\VID_1FC9&amp;amp;PID_2002&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialInstall]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;include=mdmcpq.inf&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;CopyFiles=FakeModemCopyFileSection; Replace above with this one&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;AddReg=GSerialAddReg&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialCopyFiles]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;usbser.sys;not sure if needs to be here or not&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[SourceDisksFiles]&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[SourceDisksNames]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;1=%Linux_Gadget_Rocks%,,,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[DestinationDirs]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;;DefaultDestDir&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 10;Comment this line out using ;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;DefaultDestDir=10, System32\Drivers;ADD this line WAS NOT HERE&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;FakeModemCopyFileSection =12&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;;GSerialCopyFiles&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 12&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;;DefaultDestDir=10,System32\Drivers; WAS NOT HERE&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialAddReg]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;HKR,,DevLoader,,*ntkern&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;HKR,,NTMPDriver,,usbser.sys&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialInstall.Services]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;include=mdmcpq.inf&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;AddService = usbser,0x0002,GSerialService&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialService]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;include=mdmcpq.inf&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;DisplayName = %GSERIAL_DISPLAY_NAME%&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ServiceType = 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; SERVICE_KERNEL_DRIVER&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;StartType = 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; SERVICE_DEMAND_START&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ErrorControl = 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; SERVICE_ERROR_NORMAL&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ServiceBinary = %10%\System32\Drivers\usbser.sys&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;LoadOrderGroup = Base&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[Strings]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Provider&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = "MidNite Solar Inc."&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;GSERIAL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = "USB CDC serial port emulation"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;GSERIAL_DISPLAY_NAME = "MidNite Solar USB CDC serial port emulation"&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;6) Now the driver was accepted, COM-port was created, but driver was not started due to communication problems with the device.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I narrowed it down to a call to USB_ReqSetConfiguration in usbcore.c&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Something strange happened here: There is a call to USB_ReqSetConfiguration, but it never arrived there!?!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I put a debug output just before the call and inside the function, i see it before the call, but not inside the function.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I debugged some time, first thinking it crashes somewhere on the way, but there is nothing between the two calls...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Checked that optimization was not turned off, but this was already set to level 0.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I got almost crazy, but then i looked for an update of uVision.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;7) Downloaded uVision4 (V4.60, mdk460.exe), which seems, it was just released.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Recompiled, now my debug output looked good, called function got called and returned. I assume it was a problem with the compiler...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;8) Now i can open the COM port. Because i am using USART3 for debugging, not used USART0 and UART1 yet, i had to change the code the handle and send via CDC endpoint.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;This can be done in&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void VCOM_Serial2Usb(void) { ... }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;void VCOM_Usb2Serial(void) { ... }&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; Martin&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 18:46:56 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T18:46:56Z</dc:date>
    <item>
      <title>USBDEV\Usb_Cdc: Some comments, updates, hints</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USBDEV-Usb-Cdc-Some-comments-updates-hints/m-p/562240#M16451</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by capiman on Sun Sep 30 01:35:18 MST 2012&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;i have downloaded&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fwww.lpcware.com%2Fcontent%2Fnxpfile%2Flpc4350apdlzip" rel="nofollow" target="_blank"&gt;http://www.lpcware.com/content/nxpfile/lpc4350apdlzip&lt;/A&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;(according to release notes: RELEASE: LPC4300CMSIS_20120531)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;and tried&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;\Examples\USBDEV\Usb_Cdc&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;on a MCB4357. First i had some problems, but meanwhile i have it running. Just want to share some comments, updates, hints&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;to save you some hours of trying and debugging)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1) I used KEIL uVision4 (V4.54, mdk454.exe). It was no real problem to compile the project.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;(I can't remember what i have done in detail, but i set used chip to MCB4357, checked that used flash address is 0x1A000000 (Bank A).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;And i selected to create a HEX file. Even it says "Internal SRAM" a hex file with address range starting at 0x1A000000 was created...)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Perhaps Abstract.txt is not up-to-date with "Internal SRAM" or it is something i have changed, but where i a not aware of)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;2) I downloaded with latest FlashMagic 6.94.2780. Flash Bank: "Bank 0". Item "Activate Flash Bank" must be selected.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;(Selecting the correct chip type was a bit a problem, selection window is too big, i can't see "OK" button on my computer, big screen,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;selected bigger fonts, perhaps this is the reason for the problem?)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;3) Connect USB cable to USB0 and PC.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Abstract.txt mentions: "If use USB Port 1, pls set Main Clock to 60Mhz in CGU_Init function"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;(I have not tried USB1, because chosen the easy way first. I am happy to get it running on the new MCB4357 at all).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;4) My PC (Vista 64 Bit) reported new device "NXP LPC18xx VCOM ", looks good.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;5) Now selected the delivered *.inf file, but was not recognized. Seems to be old topic, inf file not yet ready for 64 bit...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;SPAN&gt;(there was a posting in LPC2000 yaqhoo group, see &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Ftech.groups.yahoo.com%2Fgroup%2Flpc2000%2Fmessage%2F54637" rel="nofollow" target="_blank"&gt;http://tech.groups.yahoo.com/group/lpc2000/message/54637&lt;/A&gt;&lt;SPAN&gt; )&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;i have adapted it only for the reported VID / PID:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;; This INF works for Windows XP SP2, Windows XP x64,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;; Windows Vista x86, Windows Vista x64, and Windows 7 x86 and x64.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;; This INF will work with Windows XP, and Windows XP SP1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;; after applying specific hotfixes&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;; (I have no idea what those hotfixes might be... boB)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[Version]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Signature&amp;nbsp;&amp;nbsp;&amp;nbsp; = "$Chicago$"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Class&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = Ports&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ClassGuid&amp;nbsp;&amp;nbsp;&amp;nbsp; = {4D36E978-E325-11CE-BFC1-08002BE10318}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Provider&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = %Provider%&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;DriverVer&amp;nbsp;&amp;nbsp;&amp;nbsp; = 05/31/2010,3.1.0.0&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;CatalogFile&amp;nbsp; = g_serial.cat&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[Manufacturer]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;%Provider%=GSerialDeviceList, NTamd64, NTia64&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialDeviceList]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;%GSERIAL%=GSerialInstall,&amp;nbsp; USB\VID_1FC9&amp;amp;PID_2002&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialDeviceList.NTamd64]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;%GSERIAL%=GSerialInstall,&amp;nbsp; USB\VID_1FC9&amp;amp;PID_2002&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialDeviceList.NTia64]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;%GSERIAL%=GSerialInstall,&amp;nbsp; USB\VID_1FC9&amp;amp;PID_2002&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialInstall]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;include=mdmcpq.inf&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;CopyFiles=FakeModemCopyFileSection; Replace above with this one&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;AddReg=GSerialAddReg&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialCopyFiles]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;usbser.sys;not sure if needs to be here or not&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[SourceDisksFiles]&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[SourceDisksNames]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;1=%Linux_Gadget_Rocks%,,,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[DestinationDirs]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;;DefaultDestDir&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 10;Comment this line out using ;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;DefaultDestDir=10, System32\Drivers;ADD this line WAS NOT HERE&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;FakeModemCopyFileSection =12&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;;GSerialCopyFiles&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 12&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;;DefaultDestDir=10,System32\Drivers; WAS NOT HERE&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialAddReg]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;HKR,,DevLoader,,*ntkern&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;HKR,,NTMPDriver,,usbser.sys&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialInstall.Services]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;include=mdmcpq.inf&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;AddService = usbser,0x0002,GSerialService&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[GSerialService]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;include=mdmcpq.inf&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;DisplayName = %GSERIAL_DISPLAY_NAME%&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ServiceType = 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; SERVICE_KERNEL_DRIVER&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;StartType = 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; SERVICE_DEMAND_START&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ErrorControl = 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; SERVICE_ERROR_NORMAL&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ServiceBinary = %10%\System32\Drivers\usbser.sys&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;LoadOrderGroup = Base&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[Strings]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Provider&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = "MidNite Solar Inc."&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;GSERIAL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = "USB CDC serial port emulation"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;GSERIAL_DISPLAY_NAME = "MidNite Solar USB CDC serial port emulation"&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;6) Now the driver was accepted, COM-port was created, but driver was not started due to communication problems with the device.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I narrowed it down to a call to USB_ReqSetConfiguration in usbcore.c&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Something strange happened here: There is a call to USB_ReqSetConfiguration, but it never arrived there!?!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I put a debug output just before the call and inside the function, i see it before the call, but not inside the function.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I debugged some time, first thinking it crashes somewhere on the way, but there is nothing between the two calls...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Checked that optimization was not turned off, but this was already set to level 0.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I got almost crazy, but then i looked for an update of uVision.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;7) Downloaded uVision4 (V4.60, mdk460.exe), which seems, it was just released.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Recompiled, now my debug output looked good, called function got called and returned. I assume it was a problem with the compiler...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;8) Now i can open the COM port. Because i am using USART3 for debugging, not used USART0 and UART1 yet, i had to change the code the handle and send via CDC endpoint.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;This can be done in&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void VCOM_Serial2Usb(void) { ... }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;void VCOM_Usb2Serial(void) { ... }&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; Martin&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 18:46:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USBDEV-Usb-Cdc-Some-comments-updates-hints/m-p/562240#M16451</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T18:46:56Z</dc:date>
    </item>
  </channel>
</rss>

