WEC7: OSDesign Development

From Compulab Mediawiki
Revision as of 12:09, 14 February 2013 by Grinberg (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Creating a new OSDesign

  1. Start VS 2008 and select File->New->Project menu option.
    File:OpenNewProjectScreenVS2008.png
  2. In the Project Types pane, select the “Platform Builder” option
    File:SelectProjectTypeOSDesingVS2008.png
  3. Select the OS Design option in the Templates pane
  4. Click the Next button
    File:OSDesingWizardScreenVS2008.png
  5. Now you need to choose the BSP for your device. The list varies according to the BSPs that are installed. Press Next
    File:OSDesignChooseBSPVS2008.png
  6. The templates screen lets you choose a configuration from predefined devices according to the desired functionality. For this demonstration choose Handheld.
    File:OSDesignTemplateChooseVS2008.png
  7. In the following steps you can choose to add/remove components from the design according to your needs
    File:OSDesignComponents1VS2008.png
    File:OSDesignComponents2VS2008.png
  8. When done with the Components screens press Finish to create the design
    File:OSDesignFinishVS2008.png
  9. To enable the relevant and desired drivers, view the BSP documentation for the product you purchased (e.g: CM-X300, CM-T3530 , etc.)
  10. Add more standard components from the Catalog. See the Components Overview for more information
  11. Add chosen Subprojects to your design:
    • To create a subproject go to the solution explorer, right click the Subprojects node and select Add New Subproject
    • To add an existing subproject go to the solution explorer, right click the Subprojects node and select Add Existing Subproject
    SubprojectsContextMenu.jpg
  12. Select the Project->Properties menu option and then select Configuration Properties->Build Options Uncheck all options, except for Enable Eboot Space in memory and Run Time Image can be larger than 32 MB (if that is the case) You can read about IMG environment variables at MSDN IMG variables
  13. Perform a Sysgen ( Build ->Advanced Build Commands->Sysgen )

Components Overview

You can find the description for all the components (SYSGEN variables) in MSDN catalog items.

This is a screen-shot of the Catalog view, through which you can add/remove components:

File:Catalog DeviceDriversVS2008.png


Admolition tip.png To easily find components, search for the specified names in the Catalog Items View panel in VS2008

Standard Device Drivers

In the catalog you can find the Device Drivers section with drivers to several widely used hardware.


For example, if you have a Realteck Ethernet on Base module, you can add the RealTeck RTL8139 component from the Device Drivers->Networking->Local Area Networking (LAN) devices.

Standard OS Components

When using one of the templates in the Create New OSDesign wizard many core components are selected automatically, however you can go through the list and add more components according to your needs. The Core OS components can be found at Core OS->Windows Embedded Compact->Core OS Services
For example, you need Device Manager (SYSGEN_DEVICE) for most drivers.

Key components overview

The BSP component alone is not always sufficient for the driver to work properly. There is a need for some Core OS components to implement full functionality. The following are recommended components for some BSP drivers:

  • Device Manager (SYSGEN_DEVICE=1)
- Required to load device drivers at run time
  • FAT File System (SYSGEN_FATFS=1), Partition Driver (SYSGEN_MSPART=1), {{Filename|Storage Manager Control Panel Applet (SYSGEN_STOREMGR_CPL=1)
- Used by/for Block device drivers (FLASH,IDE,..)
  • USB Function Driver (SYSGEN_USBFN = 1), USB Function – Serial (SYSGEN_USBFN_SERIAL=1)
- For USB function and ActiveSync over USB
  • USB Host Support (SYSGEN_USB =1)
- USB Host driver
  • USB Human Input Device (HID) Class Driver (SYSGEN_USB_HID =1)
- USB keyboard and mouse drivers
  • USB Storage Class Driver (SYSGEN_USB_STORAGE=1)
- For USB storage devices
  • Touch Screen (Stylus) (SYSGEN_TOUCH=1)
- For a Touch Screen driver
  • SD Memory (SYSGEN_SD_MEMORY=1)
- For SD storage card
  • Network Driver Architecture (NDIS) (SYSGEN_NDIS=1)
- The Microsoft Network Stack
  • Wired Local Area Network (802.3, 802.5) (SYSGEN_ETHERNET=1)
- LAN support
  • Wireless LAN (802.11) STA - Automatic Configuration and 802.1x (SYSGEN_ETH_80211=1)
- WLAN Network drivers

Recommended Components

The following are recommended SYSGEN variables for some useful system components:

  • Command Processor (SYSGEN_CMD=1), Console Window (SYSGEN_CONSOLE=1)
- For console applications
  • .NET Compact Framework 3.5 (SYSGEN_DOTNETV35=1), OS Dependencies for .NET Compact Framework 3.5 (SYSGEN_DOTNETV35_SUPPORT=1)
- To run .Net Compact Framenwork applications
  • Core Server Support (SYSGEN_SERVICES=1), Telnet Server (SYSGEN_TELNETD =1)
- Telnet service
  • Remote Display Application (SYSGEN_CERDISP=1)
- Remote Display
  • AYGShell API Set (SYSGEN_AYGSHELL)
- To be able to run the Windows Mobile applications