Low-level U3 and UE9 USB driver and C# Examples for Pocket PC 2002, 2003 and Windows Mobile 5.0
April 29, 2008
support@labjack.com


This package contains the USB driver for both the U3 and UE9, and Microsoft 
Visual Studio .NET example projects (written in C#) for calling low-level 
U3/UE9 functions over a USB connection using the USB driver.  Your Pocket PC 
device will need a USB host for the driver and examples to work.  Many Pocket 
PC devices come with a USB device port that is used only for connecting your 
Pocket PC to your computer, and do not have a built-in USB host.  If your 
device does not have a USB host, you can use a Compact Flash USB host.  Two 
known Compact Flash USB hosts are the RATOC CFU1U (http://www.ratocsystems.com) 
and the SolarExpress PDA CF Card (http://www.twin-paradox.com).  We have tested
the RATOC CFU1U Compact Flash USB host with the driver.

Here is a list of Pocket PCs known to us that have a built in USB host:
-Acer N30, N50, N300
-Asus MyPal A730, A730W
-Casio Cassiopeia E-200
-Fujitsu-Siemens Pocket Loox 710, 718, 720
-NEC MobilePro P300 (tested)
-Toshiba e330, e335, e350, e355, e400, e405, e740, e750 (tested), e755, e800, 
 e805, e830

Note that some USB ports (particularly PDA USB ports), might be limited to
100 mA of output current, and that the LabJack UE9 generally draws a little
more than 100 mA of quiescent current.  We have tested without problems 
on the e750 and P300 drawing all power from the USB, but technically you 
should connect the wall-wart power supply to the UE9 so that it supplies power 
rather than the USB cable.  The quiescent current of the U3 is less than 100 mA. 

Contents of this package: 

The drivers folder contains the following:
-The USB driver (labjackusb.dll) and library file.  These files are in the 
 folder name of the processor they were compiled for, such as ARM.  The driver
 supports both the U3 and UE9.
-Header file for the driver.
-The Install.txt file, which gives instructions on installing the driver.
     
The examples folder contains the following:
-Eight UE9 example projects in the UE9 folder, which are ue9AllIOUSB,
 ue9CommConfigUSB, ue9ControlConfigUSB, ue9FeedbackUSB, ue9Logger, ue9SingleIOUSB,
 ue9StreamUSB and ue9TimerCounterUSB.  The file ue9.cs in each project contains a
 class for opening and closing a USB connection, calculating checksums, getting 
 analog calibration information, and more.  The file error.cs in each project 
 contains a class that converts error code numbers to error code strings.
 For all the example applications, which are compiled from the example projects, 
 the low-level functions are called when the "Run" button is tapped in the 
 application.  The ue9FeedbackUSB application is the only application that does 
 not use a "Run" button.  It calls the Feedback function continually in one 
 second intervals until the application is closed.  The first UE9 device found 
 is used. 
-The executable ue9PocketPCUSBExamples.exe in the UE9 folder, which installs the 
 UE9 example project applications to a Pocket PC.  The default installation 
 directory on your Pocket PC is \Program Files\LabJack\UE9\USB. This does not 
 install the driver.
-Five U3 example projects in the U3 folder, which are u3AllIO, u3ConfigU3, 
 u3Feedback, u3Logger and u3Stream.  The file u3.cs in each project contains a 
 class for opening and closing a USB connection, calculating checksums, getting 
 analog calibration information, and more.  
 For all the example applications, which are compiled from the example projects, 
 the low-level functions are called when the "Run" button is tapped in the 
 application.  The u3Feedback application is the only application that does 
 not use a "Run" button.  It calls the Feedback function continually in one 
 second intervals until the application is closed.  The first U3 device found 
 is used. 
-The executable u3PocketPCUSBExamples.exe in the U3 folder, which installs the 
 example project applications to a Pocket PC.  The default installation directory 
 on your Pocket PC is \Program Files\LabJack\U3\. This does not install the 
 driver.

Note that the ARM driver and applications were tested on a NEC MobilePro P300
running Pocket PC 2002, a Toshiba Pocket PC e750 running Pocket PC 2003, and a
HP iPAQ hx2400 running Windows Mobile 5.0 with a RATOC CFU1U Compact Flash USB
host card.


Installation order:

-First, make sure that Microsoft ActiveSync is installed on both your computer
 and Pocket PC.  This is needed to install both the driver and example project
 applications.
-Second, install Microsoft .NET Compact Framework onto your Pocket PC.  The 
 example project applications require this to be installed.  This should 
 already be installed if you have a Pocket PC 2003.  The .Net Compact Framework
 can be downloaded from Microsoft at http://www.microsoft.com/downloads.  You
 can either search for "compact framework", or look in the mobile devices
 category for the download.  As of this writing, the .NET Compact Framework 
 1.0 SP3 Redistributable is the download you want.    
-Third, install the driver.  Instructions for installing the driver 
 (Install.txt) are in the drivers folder.
-Fourth, install the example project applications by running the 
 u3PocketPCUSBExamples.exe or ue9PocketPCUSBExamples.exe executable in the 
 examples folder.  The executable should be ran on the computer that is 
 connected to your Pocket PC.
-Fifth, test the driver by running the u3Feedback or ue9FeedbackUSB application, 
 or any of the other example project applications.
