Windows CE BSP contents

Our windows embedded development team has developed the Windows CE BSP that is distributed as part of production ready PXA270 reference design and on the latest PXA300 computer on module named eSOM300. The Wince BSP has been used by a number of customers worldwide to get their product in to production. Here are the features of the BSP:

Eboot level






Kernel download to the device from PC through platform builder

Supported through USB client, Ethernet and Serial

Used during development phase


Kernel download to the device from PC without platform builder

Supported through Ethernet(via TFTP) and Serial port(via ymodem)

Used during field debugging. Also platform builder need not be opened every time during development phase. Please see the Regulus TFTP user manual for more information.


Diagnostics for all peripherals

Diagnostics are provided for most of the peripherals like Ethernet, SDRAM, NOR flash, NAND flash, RTC, SD Memory, USB client

Helps during production to check the status of the peripherals.


Boot up Splash Screen

Any bmp image can be loaded. This is restricted to the size of the display.

The screen will not be empty until the Windows CE OS screen shows up. Please see the Boot logo creation/Changing document.


Firmware upgrade through USB*

USB device firmware upgrade class supported. The device complies with the USB device firmware upgrade standard.

This is very useful when you just want to update the entire OS image by just connecting a USB A to B cable to the PC and through some key sequence you would want to upgrade the OS. An application pops on the PC and the user can choose the firmware file to be downloaded.


Eboot prompt

Eboot prompt is supported on any of the serial ports. The debug port is configurable

Useful during development when download has to be done or during production when diagnostics has be done.


LEDS – Software controllable


The LEDS can be controlled through software and is used for debugging purpose.


CPU speed change command support

Yes. CPU speed can be configured for either of 312/416/520.

Helps in testing the performance of the application under various processor speeds.


Kernel boot options

Supports kernel boot via NOR flash, NAND flash and also on the external SD card.

Users can choose to boot from SD card if they can use this as a field upgrade tool for their firmware and the OS.



Supports boot code flashing through JTAG

An application is provided in the PC to flash the boot code via JTAG

Kernel level






Debug and release version of builds

The default build comes up with a working debug and release version binaries.

Debug build is needed for inserting break points etc. The release build is just 6 MB in size and includes a full windows CE shell with driver support for all the on board peripherals.


Active KITL and Passive KITL




Kernel Debug messages

The debug messages shall appear on the serial port. The serial port is configurable

User can choose the serial port where the debug messages can be done. Alternatively the port can also be disabled and used for application purposes. .


KITL interface

KITL interface is supported via USB client, Ethernet and Serial.

User can choose which interface they want to use for debugging. Some devices might have Ethernet and may not have USB slave and some might not have either of Ethernet or USB slave and hence support of KITL over Serial becomes important. Please see the Regulus KITL startup user manual and Regulus KITL application debugging document for more info.


Kernel debugger

Inserting and removing break points can be done at any point in the kernel code.

Helps when building custom device drivers


Debug zones


Helps when building device drivers



CElog and kernel profiling support is provided

Helps when you face performance issues with the driver and you would want to see where you spent most of your time on the CE kernel.


Ethernet driver support

Supported. It is a 10/100 Ethernet driver with performance of up to 20Mbps in UDP traffic using iperf.

Application support for DHCP as well as static IP is provided.


USB Host - USB Mass storage

Support for memory stick up to 8GB is provided

Tested with Kingston USB drive up to 8 GB.


USB Host – HID class

Support for Keyboard, mouse is provided



USB device – Active sync

Support for syncing devices to the PC.

Sharing files and folders between the PC And the device can be achieved. Active sync has sync features using which you do not need to physically copy the files.


USB device - Mass storage support

On plugging the device to the PC, the device will act like a mass storage

Useful for devices like digital camera or any other device where the end user has to just have access to the data storage on the device.


USB device – Composite*

The device shall show multiple properties like active Sync and mass storage also. This will be done simultaneous

Useful when multiple properties of the USB device has to be supported simultaneously.


NAND flash – Storage

The device will appear as a storage device. Supports up to 1GB in storage

Support for SLC NAND flash.


NAND flash – bad block reporting and management

The bad blocks are reported in the boot time and the driver manages the bad blocks and the ECC correction.

Bad block management is important as NAND flash on usage the blocks become bad and it becomes critical to have a robust driver an file system.


NOR flash – Storage

The device will appear as a storage device.



CF card – storage**

Drivers shall be provided for acting like a storage device.



SD card – Storage

Supports SD high capacity storage up to 16GB.



SD – Wi-Fi

802.11b ad 802.11b/g cards are supported. Iperf test results are available.

This is available as a add on module to the Sirius and regulus platforms.


SPI driver

There is no SPI device but the SPI interface is exposed as a header in the reference platforms like Regulus and Alioth. e-con provides sample SPI drivers for a EEPROM like device on the SPI port.

Customers can use this sample driver source to build the drivers for their SPI devices. e-con's windows ce driver development team has supported several customers for building their own SPI drivers on top of Windows CE. Application level API is provided for read and write through SPI interface. Please see Regulus SPI LIB document and Regulus sample SPI driver document for more information.



Yes provided.

There is a RTC that sits on the I2C interface(On Regulus) and hence the driver can be used to write drivers for I2C devices. In case of Sirius, a sample I2C driver is provided. Please see the I2C API Document for more information.


Display – 3.2", 3.5” and 7” LCD driver

Driver support for sharp and Optrex LCDs are provided.

The 3.5” display is sunlight readable (Transflective). Standard Win32 APIs can be used to access the display interface.


Display – 8.4” LCD driver support - *

Driver provided for Optrex LCDs.

This is not part of the regular BSP but can be provided as a separate component.


Serial port driver

Serial port driver is provided.

The end user can access the COM ports like COM1: , COM2 in the application. The regulus supports up to 7 UARTs and sample application is provided for reading and writing through these serial pors.


Power management - Voltage scaling and frequency scaling**

APIs are provided for Dynamic voltage scaling and dynamic frequency scaling.

End user developing handheld devices can use these power management APIs to conserve the power dissipation and achieve better power management.Please see the DFM DVM API document for more information.


Power management – Sample user profile support**

Sample user profiles are provided and different power states are also given.

Sample user profiles use three different power states.Please see Regulus power management user manual and the Regulus DFM DVM Application user guide for more information.


GPRS/GPS driver*

Supported as an add on module. CMUX driver is provided for the same. Through the CMUX driver interface only one UART needs to be used.

This is supported via add on module and doesn’t come as part of the normal BSP. Sample applications are provided where by the customer can send SMS, data and get the signal strength simultaneously.


Camera driver *

Supported as a add on module. View finder application is provided for image and Video capture.



GPIO driver

Supported with sample application for toggling GPIOs, receiving input, configuring the direction etc

There can be as much as 50 GPIOs with the Regulus and the Sirius platforms. Please see the GPIO API document for more information.


Keypad driver*

Supported using the GPIOs.



Sample applications

Sample applications are provided for using the UART, SPI, GPIOs and I2C



.NET Compact frame work

.NET compact frame work version 3.5 is supported

Customers familiar with C# coding can use this.


Embedded VC++ build environment

Supported for Windows CE 5.0

Customers preferring to use Windows CE 5.0 can use the embedded VC++ for application building with the SDK imported in to it.

* Available as add on solution
** Available either in Sirius or Regulus only.