Windows Embedded Compact

Microsoft® Windows® Embedded Compact, formerly known as Windows CE, is an open, scalable, 32-bit operating system (OS) that integrates reliable, real time capabilities with advanced Windows technologies.

Windows Embedded Compact allows you to build a wide range of innovative, small footprint devices. A typical Windows Embedded Compact–based device is designed for a specific use, often runs disconnected from other computers, and requires a small OS that has a deterministic response to interrupts.

Examples include enterprise tools, such as industrial controllers, communications hubs, and point-of-sale terminals, and consumer products, such as cameras, Internet appliances, and interactive televisions.

Board Support Package (BSP)

The Toradex Board Support Package for Windows Embedded Compact is one of the most advanced BSPs available on the market. Beside the standard Windows Embedded Compact functionality, it includes a large number of additional drivers as well as optimized versions of standard drivers.

The Toradex bootloader and BSP were designed to be very configurable. This relieves the application developer from the burden of creating an image. Instead the necessary adaptations can be done by registry settings and adding files to the on-board flash file system.

The BSP is available for Colibri customers here.

Customers who order any number of Support Hours will receive the workspace for Microsoft's Platform Builder, which enables the customer to build exactly the same Windows Embedded Compact image as Toradex provides by default.

Contact colibri@toradex.com after the purchase of the Support Hours and ask for the desired software.

Drivers

The following drivers are integrated in the standard image that comes pre-installed with each Colibri module

Driver Description Cost (Support Hours)
FFUART FFUART supports the full RS232 specification with all 9 signals. -
BTUART BTUART only supports RXD/TXD/CTS/RTS -
IRDA Handles the PXA270's IrDA port -
Ethernet 10/100Mbit driver for Davicom DM9000 -
USB Host 2 Ports supporting mass storage devices (USB-stick, hard disc, CD-ROM…) and other devices as keyboard, mouse, USB hub… -
USB Client Can be used as ActiveSync connection, mass storage or RNDIS -
Audio 16Bit stereo output (up to 48kHz), mic input, line-In -
Touch Screen All 4-wire resistive screens supported -
Display All types of displays supported. Easy configuration in registry -
PS2 Mouse Supports any standard PS/2 mouse -
PS2 Keyboard Supports any standard PS/2 keyboard -
Compact Flash Memory cards, Wireless LAN, modem, Bluetooth, serial card, GPS, GSM, … -
SD/MMC Memory cards, Wireless LAN, Bluetooth, GSM, GPS … -
Wireless LAN Support for different Wifi adapters -
Flash File System Standard FAT as well as TFAT (transaction safe FAT) are supported -

The following drivers are also available and can be purchased at Toradex. For more details on the Support Hours, please click here.
Bluetooth Support Windows CE Bluetooth Stack and HCI Transport Driver for USB Devices 4
Colibri Plugin for TCPMP Use the open source media player TCPMP (The Core
Pocket Multimedia Player) on all Colibri modules
8
Matrix Keypad Fully customizable through registry (MK_IN, MK_OUT and scan code to virtual key) 8
External UART Schematic and driver for external 16550-compatible UART controller attached to the system bus (up to 8 ports) 8
External Ethernet controller Schematic and driver for an additional Ethernet controller attached to the system bus 4
Soft Key Touch Driver Extension Support for "Soft Keys" on touch areas larger than the display size 8
SPI SD Card Driver Add an additional SD memory card to one of the Colibri's SPI ports 10

Windows Embedded Compact Services

The following services are integrated in the standard image that comes pre-installed with each Colibri module

Service Description Cost (Support Hours)
FTP Server Access Colibri using the FTP File Transfer Protocol -
HTTP Server Allows the Colibri to act as a web server -
Time Server / Client Synchronize time with the network using the NTP protocol -
File Server File sharing over the network using the SMB protocol -
OBEX Server Protocol for IrDA File Transfer -
Telnet Server Access Colibri using the Telnet protocol -

The following services are also available and can be purchased at Toradex. For more details on the Support Hours, please click here.
Mail Server SMTP, POP3 and mail sender services 20
Web Shop Shopping cart, product selector, mail order form on request

Special Features of Toradex Windows Embedded Compact

In addition to the standard Windows Embedded Compact functionality, Toradex has extended the operating system by following features:

Feature Description Cost (Support Hours)
Bootloader Configuration through RS232, clear flash registry, download image to RAM, download image to Flash, set/save config structures, define initial GPIO configuration.
Debug Functionality: erases flash range, write/read 32bit value at address.
-
Splash Screen Display default start-up screen while Windows Embedded Compact is booting. -
AutoStart Automatically execute programs upon system boot or upon removable media insertion -
AutoCopy Automatically copy files to the RAM file system upon system boot or upon removable media insertion. This, for example, can be used to add items to the Windows Embedded Compact START menu button. -
GPIO Interrupts Each GPIO can be configured to act as an interrupt source -
Update Tool Save registry to flash, clear registry on flash, update Windows Embedded Compact image, show BSP revision, warm reboot, cold reboot -
GPIOConfig Configure input/output/alternate function of each GPIO at startup -
Colibri Tweak Display and adjust system parameters as CPU clock, bus clock, core voltage, sleep modes, flash timings, SDRAM/DRAM timings, PCMCIA timings.
Change Colibri serial number and flash layout.
Configure display settings on the fly.
-
AC97 Tweak Audio input settings: source left/right, micboost, gain left/right, DC filter, High pass, mute.
Audio output settings: gain left/right, bass, treble, de-emphasis, headphone driver, mute.
Audio test features
-
RTCSync Automatically synchronisation with the extern RTC STM4T0 which is used on the Evaluation board and the Orchid -
Power Management Advanced Power Management, possible to set the wakeup sources and GPIO Sleep state in the Registry -

The following special features are also available and can be purchased at Toradex. For more details on the Support Hours, please click here.
ColibriCustomize Automatically configure the registry for your own settings (Using .reg file). 2
.Net Framework 2.0 / 3.5 Flash Installer Install the .Net Compact Framework 2.0 or 3.5 to the flash memory 2
Internet Explorer Flash Installer Install the Microsoft Internet Explorer to the flash memory 2
Multilanguage Support Add additional languages to your system (can be switched at runtime) 8 per western language
Large Input Panel Add a larger software keyboard (SIP) (about 465x195 pixels) 2
SplashScreen Customizer Show your own screen while Windows CE is booting 8
SetFailSafe Add fail safe feature: This tool configures the bootloader to be fail-safe. This allows you to boot even after a failed bootloader update. 8

To interface between your desktop PC and the Colibri module, Toradex provides the following Windows XP utilities:
Colibri Loader Load bootloader over JTAG, load Images over JTAG , Ethernet, RS232 -
Remote Display Control the Colibri module by a desktop PC (keyboard, mouse, display, file transfer) using a connection through ActiveSync (USB) or Ethernet. -

The following Windows XP utilities are also available and can be purchased at Toradex. For more details on the Support Hours, please click here.
Win CE Image Compressor Reduce the size of the Windows Embedded Compact Image to about 50%. This leaves more flash space for user applications or the flash file system 10

C Libraries and Code Samples

The following libraries and code samples are provided as ready-to-use software projects for Visual Studio 2008. Most of the libraries can also be bought as source code, so customers can easily adapt them to their project's specific needs. To get the total price you need to add the cost of all required libraries as well. No cost object code only versions can be downloaded here.

Samples / Libraries Description Required Libraries Cost (Support Hours)
Hardware Register Access Simple direct hardware register access
(GPIO register access is shown as an example)
- -
Interrupts Simple interrupt handling
(GPIO interrupt is shown as an example)
- -

The following Source Code libraries are also available and can be purchased at Toradex. For more details on the Support Hours, please click here.
GPIOlib Basic functions for accessing GPIO (Set/GetGPIOLevel, Set/GetGPIODir, Set/GetGPIOAltFn, and some more) - 2
PWM / DA – Converter Use the PXA's integrated PWM unit. The PWM signal can be used for example as a simple digital-to-analog converter GPIOlib 2
AC97 / AD-Converter Communicate with the audio codec and use the four analog-to-digital channels. GPIOlib 4
I2C Transfer data through the the I2C unit - 2
Advanced Interrupt  Use an installable Interrupt Service Routine (ISR) and fast interrupt handling (FIQ) - 2
SPI Configure the SSP unit to be used as a standard SPI interface GPIOlib 4
SPI with DMA Configure the SSP unit to be used as a standard SPI interface. 
(Faster version featuring DMA transferes)
GPIOlib, DMA  4
CAN Transmit and receive CAN packets with the SJA1000 CAN controller as it is implemented on the Evaluation Board - 2
RTC synchronization Automatically synchronize the system time to an external RTC I2C 2
DMA To handle DMA transfers  - 4
Overlays  RGB and YUV Overlays to use in movie and picture - 8
Quick Capture Interface Library to capture pictures form a camera over the Quick Capture Interface GPIOLib, I2C, Overlays, DMA 4
Advanced CAN Transmit and receive CAN packets with the SJA1000 in PELICan mode. With ISR handling.  - 8
Watchdog Enable and retrigger the integrated watchdog. The watchdog is only available on Colibri PXA3xx. - 2
Bootloader Kit A PlatformBuilder project including the Toradex standard Bootloader as binary lib and a sample bootloader c file to build your own Bootloader.  - 8
UpdateLib Program new image/bootloader/registry into the on-board flash memory. - 8