none
USB serial dll on WEC700 RRS feed

  • Question

  • Hi all,

    some months ago i asked how to generate the usbser.dll driver for WinCE600.

    What about WEC700 ?


    SteMMo

    Tuesday, August 21, 2012 3:21 PM

Answers

  • In WINCE700 the makefile rules for USBSER (and some other components) are different with respect to previous version.

    If you look at ...\WINCE700\public\COMMON\cesysgen\makefile

    #
    # Drivers components
    #
    # files that need to be copied from $(SG_INPUT_ROOT)\oak\target directory
    [omissis]
    wavedev2_ensoniq wavedev2_virtual uhci ehci ehcicert usbprn usbser \
    [omissis]
    ::
        @echo Copying $@.*
        @echo $@ >> $(SG_OUTPUT_OAKTGT)\$(WINCEPROJ)_presysgen.lst
        -@xcopy /I /D /Q $(SG_INPUT_LIB)\$@.* $(SG_OUTPUT_OAKLIB) > nul $(SG_XCOPYREDIRECT)
        -@xcopy /I /D /Q $(SG_INPUT_ROOT)\oak\target\$(_CPUINDPATH)\$@.* $(SG_OUTPUT_OAKTGT) > nul $(SG_XCOPYREDIRECT)

    You see that the effect of running 'sysgen -p common usbser' is simply to copy prebuilt binaries from the WINCE700 tree to the OS design tree (according to CPU family and build type), as an example: From ...\WINCE700\public\COMMON\oak\lib\x86\retail to ...\WINCE700\OSDesigns\Virtual_PC\Virtual_PC\Wince700\VirtualPC_x86_Retail\cesysgen\oak\lib\x86\retail and from ...\WINCE700\public\COMMON\oak\target\x86\retail to ...\WINCE700\OSDesigns\Virtual_PC\Virtual_PC\Wince700\VirtualPC_x86_Retail\cesysgen\oak\target\x86\retail

    Since your output shows an error in the following line

    BuildLogs: BUILDMSG: Exiting: SysGen1.bat  -p common usbser (result code 1).

    I suspect that the prebuilt USBSER binaries in your WINCE700 tree are no longer present (maybe you ran -without success- a clean build on USBSER...?), check it. In any case you should be able to rebuild USBSER.DLL from the IDE or the command line from the ...\WINCE700\public\COMMON\oak\drivers\usb\class\usbser directory since, in WINCE700 'sources' for USBSER, you have TARGETTYPE=DYNLINK


    Luca Calligaris lucaDOTcalligarisATeurotechDOTcom www.eurotech.com Check my blog: http://lcalligaris.wordpress.com


    • Edited by Luca Calligaris Tuesday, August 28, 2012 1:35 PM fixed paths (from/to where inverted) in copy sample
    • Marked as answer by SteMMo Tuesday, August 28, 2012 2:15 PM
    Tuesday, August 28, 2012 10:05 AM

All replies

  • I don't remember that specific thread but I imagine that things would go almost the same on the two OS's

    Luca Calligaris lucaDOTcalligarisATeurotechDOTcom www.eurotech.com Check my blog: http://lcalligaris.wordpress.com

    Monday, August 27, 2012 7:45 AM
  • The command is: sysgen -p common usbser, under WinCE600 it worked.

    Now the log is:

    Wince ARMV7 CEBASE MisterBlack Development Environment for SteM

    C:\WINCE700\osdesigns\MisterBlackOSDesign\MisterBlackOSDesign\RelDir\MisterBlack _ARMV7_Release>sysgen -p common usbser BuildLogs: BUILDMSG: Starting: SysGen1.bat -p common usbser BuildLogs: BUILDMSG: Logs at "C:\WINCE700\osdesigns\MisterBlackOSDesign\MisterBl ackOSDesign\Wince700\MisterBlack_ARMV7_Retail\cesysgen\sysgen.*". SYSGEN: BUILDMSG: Starting sysgen phase for project ( common ) SYSGEN: BUILDMSG: Found localized resources for Languages ( 0404 0407 0409 040c 0410 0411 0412 0413 0416 0419 041d 0804 0c0a) BuildLogs: BUILDMSG: Exiting: SysGen1.bat -p common usbser (result code 1). BuildLogs: BUILDMSG: C:\WINCE700\osdesigns\MisterBlackOSDesign\MisterBlackOSDesi gn\Wince700\MisterBlack_ARMV7_Retail\cesysgen\sysgen.log BuildLogs: BUILDMSG: C:\WINCE700\osdesigns\MisterBlackOSDesign\MisterBlackOSDesi gn\Wince700\MisterBlack_ARMV7_Retail\cesysgen\sysgen.out C:\WINCE700\osdesigns\MisterBlackOSDesign\MisterBlackOSDesign\RelDir\MisterBlack _ARMV7_Release>


    Nothing is compiled!

    SteMMo


    • Edited by SteMMo Monday, August 27, 2012 1:59 PM
    Monday, August 27, 2012 1:58 PM
  • In WINCE700 the makefile rules for USBSER (and some other components) are different with respect to previous version.

    If you look at ...\WINCE700\public\COMMON\cesysgen\makefile

    #
    # Drivers components
    #
    # files that need to be copied from $(SG_INPUT_ROOT)\oak\target directory
    [omissis]
    wavedev2_ensoniq wavedev2_virtual uhci ehci ehcicert usbprn usbser \
    [omissis]
    ::
        @echo Copying $@.*
        @echo $@ >> $(SG_OUTPUT_OAKTGT)\$(WINCEPROJ)_presysgen.lst
        -@xcopy /I /D /Q $(SG_INPUT_LIB)\$@.* $(SG_OUTPUT_OAKLIB) > nul $(SG_XCOPYREDIRECT)
        -@xcopy /I /D /Q $(SG_INPUT_ROOT)\oak\target\$(_CPUINDPATH)\$@.* $(SG_OUTPUT_OAKTGT) > nul $(SG_XCOPYREDIRECT)

    You see that the effect of running 'sysgen -p common usbser' is simply to copy prebuilt binaries from the WINCE700 tree to the OS design tree (according to CPU family and build type), as an example: From ...\WINCE700\public\COMMON\oak\lib\x86\retail to ...\WINCE700\OSDesigns\Virtual_PC\Virtual_PC\Wince700\VirtualPC_x86_Retail\cesysgen\oak\lib\x86\retail and from ...\WINCE700\public\COMMON\oak\target\x86\retail to ...\WINCE700\OSDesigns\Virtual_PC\Virtual_PC\Wince700\VirtualPC_x86_Retail\cesysgen\oak\target\x86\retail

    Since your output shows an error in the following line

    BuildLogs: BUILDMSG: Exiting: SysGen1.bat  -p common usbser (result code 1).

    I suspect that the prebuilt USBSER binaries in your WINCE700 tree are no longer present (maybe you ran -without success- a clean build on USBSER...?), check it. In any case you should be able to rebuild USBSER.DLL from the IDE or the command line from the ...\WINCE700\public\COMMON\oak\drivers\usb\class\usbser directory since, in WINCE700 'sources' for USBSER, you have TARGETTYPE=DYNLINK


    Luca Calligaris lucaDOTcalligarisATeurotechDOTcom www.eurotech.com Check my blog: http://lcalligaris.wordpress.com


    • Edited by Luca Calligaris Tuesday, August 28, 2012 1:35 PM fixed paths (from/to where inverted) in copy sample
    • Marked as answer by SteMMo Tuesday, August 28, 2012 2:15 PM
    Tuesday, August 28, 2012 10:05 AM
  • Ok, thanks.

    But how can i make sure that the library will be built at every compilation of the image?

    I guess to add a Pre-build image command, but which?


    SteMMo

    Monday, September 3, 2012 9:46 AM
  • Why do you want to rebuild the DLL every time since it does not change?

    Luca Calligaris lucaDOTcalligarisATeurotechDOTcom www.eurotech.com Check my blog: http://lcalligaris.wordpress.com

    Monday, September 3, 2012 3:28 PM
  • I only want to be sure the file will be copied into the output directory.

    With the current commands it is not !


    SteMMo

    Monday, September 3, 2012 3:41 PM
  • For some reason (maybe MSFT simply forgot to do it) USBSER is not included in the catalog (both WINCE600 and WINCE700) like the other USB class driver (HID, Mass Storage, ...) so you need to explicitely set SYSGEN_USB_SER=1 in the OS environment to include the component and the related entries from common.bib and common.reg

    You can also modify the catalog file for your BSP to expose the USBSER component if you prefer to include the component from Platform Builder UI.


    Luca Calligaris lucaDOTcalligarisATeurotechDOTcom www.eurotech.com Check my blog: http://lcalligaris.wordpress.com

    Friday, September 7, 2012 6:57 AM