Summary: Considerations and tools you'll need to begin developing a BSP.
To create a BSP many resources need to come together. Here is a brief list:
* Platform with schematics and data sheets.
* Source Code
* Programmers & Real Time Debuggers
* Debug Hardware
* Software
* Power Analyzer / Meter
Other tools that may also be needed are:
*
Voltage Meter *
Oscilloscope *
Logic Analyzer_analyzer
Platform With Schematics And Data Sheets
The first step to creating a BSP is to select a well documented platform. The availability of well documented schematics and data sheets can make or break a project. Schematics are used to describe how the electrical components of the board are all integrated together, while the data sheets describe how each component operates. For some BSP’s the platform is spread over multiple PCB board and requires multiple schematics. Often the schematics will describe the components with enough detail that data sheets from the platform vendor are not necessary.
Software
The approach for obtaining a development platform depends on whether you are developing on Windows Mobile or Windows Embedded CE.
Windows Mobile is Microsoft’s smartphone platform. Windows Embedded CE is Microsoft’s general embedded platform that can be used to build a variety of devices such as GPS, set top boxes, kiosks, gaming, media players, etc.
Obtaining the development platform for Windows Embedded CE
The development platform for Windows Embedded CE is Platform Builder. As of Windows Embedded CE 6.0, Platform Builder is a Visual Studio 2005 plugin. The development license for Platform Builder is a click-through EULA. There is an additional click-through license agreement if you need access to premium source. Microsoft has
shared source programs to increase developer productivity through source access.
A six month trial version of Platform builder is available for
download""."" You can only obtain the full-packaged version of Platform Builder through Microsoft’s worldwide network of
distributors""."" When you are ready to ship devices after completing product development and field trials, please contact your distributor for run-time licenses.
Obtaining the development platform for Windows Mobile
The Windows Mobile Development platform is available only to Windows Mobile Development licensees. New licensees will need nomination from existing licensees. For example, if you are a systems integrator, enquire with your Windows Mobile OEM/ODM partner whether they will nominate you. Microsoft does not physically ship Windows Mobile code.
Programmers & Real Time Debuggers
Platform Builder provides a debugger for stepping through OS-level code. Platform Builder's debugger communicates over a Kernel-Independent Transport Layer (KITL), which must be implemented in your BSP. Microsoft strongly recommends enabling KITL as early as possible in development. For bootloader (pre-OS) development, a JTAG debugger is a valuable tool. JTAG is also typically used to program code into Flash memory, and debug kernel (pre-KITL) bring-up. Contact the manufacturer of your development board to see if they offer custom flash programmers or JTAG solutions.
Debug Hardware
Debug hardware isn’t an absolute requirement for BSP development, but it should be. Debug hardware typically provides breakout IO’s as well as a network interface for a development platform even when most platforms don’t need them in the final form factor. Besides the obvious benefits of breaking out key signals, having a network connection on the debug board allows IP to be the primary interface with Platform Builder or Visual Studio and allows developers to test the other native peripherals that might otherwise be in use if the debugging connection was over an interface such as USB.
Postmortem Debugger
Postmortem Debugger is a debugger extension for use with Platform Builder. It facilitates the capturing of the system state, before or after a system crash, to a single file that can later be reopened by Platform Builder and reviewed.
CEDebugX
""CeDebugX"" is a general purpose debugger extension for use with Platform Builder. It facilitates the examination of system information and functions as an automatic diagnostic tool. This extension provides an extensive list of commands that can be used to get a better understanding of the state of the device and how to proceed with debugging.
Power Analyzer / Meter
BSP developers use power meters and analyzers to measure power usage while performing various tests to find un-optimized power conditions. Just recently Microsoft built its own Power Monitor, which Microsoft OEM’s can purchase from http://www.msoon.com""."" It is also possible to use other custom power measurement solutions like logging scopes or Stripchart recorders.
Go up to
Big Book of BSP
Thank you for contributing to this BSP Wiki. To ensure your comments and concerns receive proper exposure, include bspwiki""@""microsoft"".""com when providing feedback or topical suggestions.