Beruflich Dokumente
Kultur Dokumente
This is a step-by-step guide showing the process to build Windows Embedded CE 6.0 image for
the eBox-4300 using Platform-Builder and the ICOP_eBox4300_60CS BSP.
Introduction
Learn by example and learn by doing are effective methods to learn new technology. This step-
by-step guide, using hands-on approach, is created to show the process of creating, customizing,
building and downloading a Windows Embedded CE 6.0 (CE 6.0) image on to eBox-4300 using
the ICOP_eBox4300_60CS Board-Support-Package for CE 6.0. This guide also shows how to
create a Hello-world application in managed code using Visual Studio 2005 C#. The guide also
shows how to establish a connection between eBox-4300 and Visual Studio 2005 workstation
using Corecon and download the application to eBox-4300 for testing and debug.
The exercises in this guide have been tested on Windows XP Professional and Windows Vista
development stations.
• On the Windows XP Professional SP2 development station, Visual Studio 2005, Visual
Studio 2005 SP1, CE 6.0, CE 6.0 SP1, CE 6.0 R2 and ICOP_eBox4300_60CS BSP are
installed.
• On the Windows Vista development station, Visual Studio 2005, Visual Studio 2005
SP1, Visual Studio 2005 SP1 Update for Vista, CE 6.0, CE 6.0 SP1, CE 6.0 R2 and
ICOP_eBox4300_60CS BSP are installed.
The eBox-4300 Windows Embedded CE 6.0 JumpStart kit is used as the target-hardware device.
Detailed information about eBox-4300 is available in appendix D. Both the development station
and eBox-4300 are connected to the same local LAN segment with DHCP service. A
development environment without DHCP service can be established by setting appropriate static
IP address and connecting a cross-over RJ45 Ethernet cable between the eBox-4300 and the
development station directly, refer to appendix B for more information.
Additional references and technical information resources for Windows Embedded CE are listed
in Appendix C.
Note: To go through all of the exercises in this guide, you need to have Visual Studio 2005,
Windows Embedded CE 6.0 Platform Builder and ICOP_eBox4300_60CS Board-Support-
Package installed on your development station. Refer to appendix A & B for device
preparation and setup information.
• eBox-4300, an 500Mhz embedded system with 512MB DDR2 RAM and a 256MB
EmbedDisk (IDE bootable flash storage) & power supply.
The eBox-4300 is pre-configured to boot to DOS and provide various options to load CE
6.0 image. A pre-built CE 6.0 image is included.
Note: Visual Studio 2005 SP1 is needed to develop application for Windows Embedded CE
6.0. When evaluating or using new technology and development tool, it’s good
practice to install all update, QFE and patches.
For Windows Vista, in addition to Visual Studio 2005 SP1, Visual Studio 2005 SP1
Update for Vista is also needed.
SDK Installation
To install and use eBox4300_WINCE600_SDK, after Visual Studio 2005, CE 6.0, CE 6.0 SP1
and CE 6.0 R2 are installed (with x86 CPU support), locate and execute the
eBox4300_WINCE600_SDK.msi from the JumpStart CD. The SDK and updated SDKs are
available for download from http://www.embeddedpc.net/download/ .
Note: CoreCon component is needed for the Hello-world managed code example.
VS2005 provides a common Integrated Development Environment (“IDE”) for Visual Basic,
Visual C++, Visual C#, Visual J# and Platform Builder. Depending on the development
preference selected during the installation of VS2005, your VS2005 screen may look different
from the above.
VS2005 IDE provides support to create different type of projects, such as Windows Application,
Console Application, Class Library, smart device application, Windows Services, Web Control,
etc…
When starting a new project with VS2005, there are options for different type of projects. PB for
CE 6.0 is one of the available project types. From VS2005 IDE, select “File | New | Project …”
the following project screen will appear.
• Click to highlight Platform Builder for CE 6.0 on the left of the New Project screen
• On the right side of the New Project screen, click to high-light OS Design.
• Enter eBox4300 as the name of the project.
• Make sure the Create directory for solution check box is checked.
• Click on the OK button to continue.
Note: .NET Compact Framework 2.0 is selected to support managed code application.
• On the Catalog Items tab, expand the Third Party | BSP | ICOP_eBox4300_60CS: x86
and the Device Drivers folder, check to make verify the following drivers are selected.
- VIA CN/CX Display Driver
- VIA HD Audio Driver
- VIA UAM3059 Audio Driver (Unified)
• Expand Third Party catalog items and select ConMan_x86 Files Component. This
component adds the CoreCon files to the final image, needed to establish connection
between the CE 6.0 device and VS2005 development station.
• Expand Core OS | CEBASE catalog items, find and include the following components to
the OS Design.
- Applications-End User | CAB File Installer/Uninstaller
This component provides application installation & removal. It’s needed for
application development using Visual Studio .NET 2003 and Visual Studio 2005.
• .NET Compact Framework 2.0 components are needed to support managed code
application. During the OS Design wizard steps, .NET Compact Framework 2.0
components were selected to include in the OS Design. If not selected during the OS
Design wizard phase, make sure the following two components are included.
- .NET Compact Framework 2.0
- OS Dependencies for .NET Compact Framework 2.0
• Expand Core OS | CEBASE | File Systems and Data Store catalog items, find and
include the following file system components to the OS Design.
- RAM and ROM File System
The RAM and ROM file system driver provides support for reading data from the
ROM and RAM file system in the object store.
- Hive-based Registry
This component provides the function for the system to persist registry setting
changes when the device is powered off
• Click to expand Configuration Properties tree on the left side of the screen.
• Click to high-light Build Options, a list of Build Options with check boxes will be
shown on the right side of the screen.
• Select Enable eboot space in memory (IMGEBOOT=1)
This option adds support for Ethernet debugging by bundling the Ethernet boot loader in
the image.
• Select Enable ship build (WINCESHIP=1)
This option will enable a retail build and suppress debug messages.
• Disable KITL – Make sure the Enable KITL (no IMGNOKITL=1) check box is NOT
selected.
Note: When deploying a release image onto eBox-4300’s local storage with KITL
enabled, the system may not boot or takes a long time to complete the boot
process. This is caused by the system looking for an unavailable KITL
connection.
VIA CN/CX Display Driver eBox-4300 display driver (Driver included with BSP)
VIA HD Audio Driver eBox-4300 HD audio driver (Driver included with BSP)
VIA UAM3059 (Unified) eBox-4300 Unified audio driver (Driver included with BSP)
USB Ports (USB 2.0 Host) USB host drivers (Driver available from PB’s component catalog)
To learn more about each of the components on the catalog, refer to the help document.
During the build process, the output tab on VS2005 IDE displays compilation activities.
If the development station and eBox-4300 are connected to a LAN with DHCP service, select
option 2. If eBox-4300 is connected directly to the development station using a cross-over
Ethernet cable, select option 3. If you are using the cross-over Ethernet cable with option 3, you
need to set your development computer’s IP address to 192.168.2.xxx, where xxx can be 1 to 255
except 232 (192.168.2.232 is used by eBox-4300 with option 3), and subnet mask to
255.255.255.0
After eBox-4300 boots-up and sends a boot-me request, the Ethernet Download Settings dialog
screen should look similar to the following, with a device ID listed in the Active target devices
list box.
• Turn on power and boot up eBox-4300, and select the appropriate option from the menu
according to your setup (Option 2 for setup with DHCP service, Option 3 for setup using
Cross-over Ethernet cable and static IP address)
After eBox-4300 completes the boot-up process and send boot-me request, you will see activities
on the Download Runtime Image screen showing the image being download to the device.
• Click on the Apply and then OK button to complete the Add New SDK process.
Note: To make changes to the SDK before building, from VS2005 IDE, select the Solution tab,
expand the SDKs folder, right click on eBox4300_WinCE600_SDK and select
Properties to bring up the SDK Property Pages.
A SDK with the file name eBox4300_WinCE600_SDK.msi is generated in the following folder.
..\WINCE600\OS Designs\eBox4300\eBox4300\SDKs\SDK1\MSI\
Install this SDK to the VS2005 development station to development CE 6.0 application for
eBox-4300.
Note: It’s a good practice to close VS2005 when installing this SDK.
Note: Project files for this exercise are provided in the ..\Application Sample\ folder on the
jumpstart CD.
• From within the console command window, type s IpConfig to view the eBox’s assigned
IP-address.
From VS2005 IDE, set the target device to “eBox4300_WinCE600_SDK x86 Device”
• On the left, click to expand the “Device Tools” folder and select the “Devices” sub-
folder.
• On the right, select eBox4300_WinCE600_SDK from the list of available platform
in the Show devices for platform combo text box.
When connection is successful, the Connecting dialog box will display Connection
succeeded to indicate a successful connection.
While it’s not within the scope of this guide to cover in depth development and debug issues, we
feel it’s informative to point out some of the built-in debug resources and remote tools Platform
Builder provides.
Using the same OS Design project, “eBox4300”, created in the earlier part of this guide, and
select the following Build Option.
Enable the associated check box to select the following build options.
• Enable eboot space in memory (IMGEBOOT=1)
• Enable kernel debugger (no IMGNODEBUGGER=1)
• Enable KITL (no IMGNOKITL=1)
From the VS2005 IDE, select Build | Build Solution to build the image from the OS Design
project.
After the build process is completed, follow the procedure in “Download Image to eBox-4300”
(page 24) to download the image to eBox-4300.
After the image is downloaded to eBox-4300, the Platform Builder IDE should look similar to
the following screen.
With KITL enabled, the Platform Builder’s Debug Output window shows a lot more
information during eBox-4300 boot process. From the Debug Output window, it shows the
library and driver components’ loading processes. The additional information is useful, and may
be critical, to help debug and solve problems and prevent potential problems. Debug output
message can be copied to a text file to be analyze in detail. Refer to Platform Builder online
document for more information about various debug and troubleshooting resources available.
NOTE: The image built with KITL and other added build option takes more time to complete
the boot process. Be patient and let the image complete the boot process.
From the Windows CE Remote Registry Editor menu, select Registry | Exit to terminate the
Remote Registry Editor tool.
Note: You can use similar steps to access and review the other Remote Tools.
To learn more about eBox-4300 and other ICOP hardware, visit the following Web sites.
http://www.embeddedpc.net/ebox4300
http://www.icoptech.com
Update to this jumpstart guide and other Windows Embedded CE information resources are
available at the following web site:
http://www.embeddedpc.net
A NULL modem serial cable linking one of the development station’s COM ports with the
eBox-4300’s COM1 port provides additional debug information.
This is a typical setup. Both the development station and eBox-4300 are connected to a
Local LAN with DHCP service. The null serial debug cable is connected between development
station’s COM1 and eBox-4300’s COM1.
If the eBox does not boot with this configuration, you may need to enable DHCP service for each
new device on your network. Some secure networks require that the MAC address be added to
the list of devices authorized for DHCP in the DHCP server.
A NULL serial cable linking between one of the development station’s COM port with eBox-
4300’s COM1 provides additional debug information.
When eBox-4300 is connected directly to the development station as above, the IP address for
the development station must be configured correctly for it to work.
When working with this setup method, 192.168.2.232 is the preset static IP address for eBox-
4300.
The development workstation’s IP address needs to be set correctly for this to work.
If the IP address is not setup correctly, eBox-4300 will not able to communicate with the
development station.
The eBox-4300 is a compact and computing device designed for applications where physical space is
limited. It can be mounted on any VESA standard fixture allowing it to be secured to desks and other
surfaces. Conforming to the VESA mounting enable eBox-4300 to be mounted on the back of most LCD
monitor supporting the VESA mount standard and help save precious space in the work place, point-of-
sales, point-of-information and other environment. The aluminum enclosure also function as heat sink to
help dissipate heat and make it possible for eBox-4300 to be fan-less and eliminated potential system
failure caused by premature fan failure.
Designed with the VIA Eden Ultra Low Power 500MHz CPU and CX700M chipset with integrated
UniChrome™ Pro Integrated Graphics Processor (IGP) ensuring optimal 2D/3D performance graphics
engine, dedicated 128-bit data paths, MEPG-2 / MPEG-4 and WMV9 Decoder. The onboard soldered on
512MB DDR2 RAM provide sufficient system memory to support Windows Embedded CE, Windows XP
Embedded and WEPOS. The high bandwidth USB 2.0 connections provide broad range of expansion
options, and support Operating System loading from USB storage device. The integrated Realtek
10/100M Ethernet is supported by the common RTL-8139 driver.
System
CPU VIA Eden ULV 500MHz
BIOS AMI BIOS
System Chipset VIA CX700M
I/O Chip Winbond W83697
System Memory Onboard 512MB DDR2 RAM
I/O
1 x EIDE (UltraDMA 133)
1 x Type I/II CF Slot
MIO 1 x PS/2 K/B & Mouse
2 x RS-232
1 x Mini PCI sockets
USB 3 x USB 2.0 Ports
Display
I/O VGA
Integrated VIA UniChrome Pro II, 2D/3D Graphics with
Chipset
MPEG2 and MPEG4 Decoding Accelerator
Display Memory 8/16/32/64/128 MB share system memory
Display Resolution Up to 1920 x 1440
Audio
AC97 2.2 (Codec) VIA Vinyl VT1708
Audio Interface Mic-in, Line-out
Ethernet
Chipset Realtek RTL8100B 10/100 Base-T Ethernet
Remote Boot ROM Built-in boot ROM function
(Vertical Type)
Pin Signal
# Name
1 VCC
2 USB0-
3 USB0+
4 GND
5 GGND
6 GGND
J10: MIC_IN – 5-pin RCA Phone Jack device –4-pin USB Type 1 Connector (H)
Signal Signal
Pin # Pin #
Name Name
1 GND 1 VCC
2 MIC1 2 USB2-
Open 3 USB2+
3
Touch 4 GND
Open 5 NC
4
Touch 6 NC
5 VREFOUT
M
Meem
moorryy M
Maappppiinngg
Address Description
0000:0000-9000:FFFF System RAM
A000:0000-A000:FFFF EGA/VGA Video Memory
B000:0000-B000:7FFF MDA RAM, Hercules graphics display RAM
B000:8000-B000:FFFF CGA display RAM
C000:0000-C000:F7FF EGA/VGA BIOS ROM
C000:F800-D000:07FF Boot ROM enable.
D000:0800-D000:FFFF Free Space.
E000:0000-E000:FFFF USB Legacy SCSI ROM space.
F000:0000-F000:FFFF Motherboard BIOS
II//O
OMMaappppiinngg
I/O Address Device
000h - 00Fh 8237 DMA Controller #1
020h - 021h 8259 Master Interrupt Controller
040h - 043h 8253 Programmable Timer
060h - 06Fh 8042 Keyboard Controller
070h - 07Fh RTC, NMI Mask Register
080h - 09Fh DMA Page Registers
0A0h - 0B1h 8259 Slave Interrupt Controller
0C0h - 0DFh 8237 DMA Controller #2
0F0h - 0F1h Math Coprocessor
0F8h - 0FFh Math Coprocessor
170h – 177h Hard Disk Controller #2
1F0h - 1F7h Hard Disk Controller #1
IIR
RQQM
Maappppiinngg
IRQ# Device
IRQ0 System Timer
IRQ1 Keyboard Controller
IRQ2 Cascade for IRQ8 - 15
IRQ3 Serial Port 2
IRQ4 Serial Port 1
IRQ5 USB
IRQ6 Unassigned
IRQ7 Unassigned
IRQ8 Real Time Clock
IRQ9 Unassigned
IRQ10 Ethernet, USB
IRQ11 AC’97 CODEC, USB
IRQ12 Mouse
IRQ13 Math Coprocessor
IRQ14 Hard Disk Controller
IRQ15 Hard Disk Controller
Here are the steps to configure eBox-4300 to boot from bootable USB flash storage. The USB flash
storage device must be inserted to the eBox-4300’s USB interface prior to power on.
• Press the DEL key multiple times immediately after eBox-4300 power on
• From the BIOS Setup Utility menu, use the Left/Right Arrow key to select the “Boot” option
• With the “Boot” option selected, use the Up/Down Arrow key to select “Boot Device Priority”, and
press the Enter key
• Use the Up/Down Arrow key to select “1st Boot Device”, and press the Enter key
• From the small Options menu, use the Up/Down Arrow key to select “USB: xxx” (xxx = name of
the USB flash storage) and press Enter
• Press the ESC key to navigate back to the main menu
• Use the Left/Right Arrow key to select “Exit”
• Use the Up/Down Arrow key to select “Save Changes and Exit” to complete the BIOS
configuration
The default selection, option 1, will execute after 15 seconds delay. During the initial 15 seconds delay,
you can select and execute the other options.
You can change the default selected option, to be executed after the 15 seconds delay. To change the
default option, use a text editor to edit the CONFIG.SYS file located in the root of the eBox-4300’s
storage as follow.
Note: Let’s say you are using the Cross-over Ethernet cable to connect your development station
directly to eBox-4300. You need to configure your development station and eBox-4300 to
use static IP address. It would be convenience for eBox-4300 to launch “Option 3” as the
default selection. Here is how you can make the change.
Menudefault=LOCAL, 15
Menudefault=STATIC, 15
If you are not familiar with DOS batch file, take a look at the AUTOEXEC.BAT file at the eBox-4300’s root.
When eBox-4300 is power up, it executes this batch file first along with designated configuration settings
in the CONFIG.SYS file.
To make Debug Serial active, you need to make the following change.
1, Use a text editor to edit the AUTOEXEC.BAT file located at eBox-4300’s root storage
Locate the following 2 lines of codes
loadcepc /C:0 nk.bin
loadcepc /C:0 /e:%NET_IOBASE%:%NET_IRQ%:%NET_IP% eboot.bin
Replace the “/C:0” switch to “/C:1”. The codes should read as follow.
loadcepc /C:1 nk.bin
loadcepc /C:1 /e:%NET_IOBASE%:%NET_IRQ%:%NET_IP% eboot.bin
From Windows Embedded CE desktop, select Start | Settings | Network and Dial-up Connections to
bring up the Network Connections screen.
From the Network Connection screen, right click on PCI-RTL81391 and select Properties.
From the PCI\RTL81391 Settings screen, select Specify an IP address and enter the static IP address.
Note: You may select different and use different IP address.
You need to set your development station’s IP address to the same subnet as eBox-4300.
You can assign a static IP address by adding the following registry entries to the OS Design project’s
PROJECT.REG registry file.
[HKEY_LOCAL_MACHINE\Comm\PCI\RTL81391\Parms\TcpIp]
"EnableDHCP"=dword:0
"DefaultGateway"=multi_sz:"192.168.2.1"
"UseZeroBroadcast"=dword:0
"IpAddress"=multi_sz:"192.168.2.232"
"Subnetmask"=multi_sz:"255.255.255.0"
To add the above registry entries to the OS Design, with the OS Design project open, perform the
following steps.
• Click and select Solution Explorer from Visual Studio 2005 IDE
• Expand the Parameter Files folder
• Expand the ICOP_eBox4300_60CS: X86 folder
• Double click on the project.reg file
• In the center pane, click on the Source tap to view in source format
• Add the above registry entries to the end of the file.
After rebuilding the OS Design, the resulting CE 6.0 image will have the pre-assigned static IP address.