Click here to Skip to main content
15,892,809 members
Articles / All Topics

Windows Mobile: Install FTDI_SER serial to USB adapter

Rate me:
Please Sign up or sign in to vote.
5.00/5 (1 vote)
4 Jan 2010CPOL2 min read 33K   1   1
Sometimes you may need additional serial connectors for your Windows Mobile device. Here is the odyssey I had with an FTDI adapter...

Sometime you may need additional serial connectors for your windows mobile device. Here is the odyssey I had with a FTDI adapter:

How I installed a FTDI serial to USB adapter within ITC CN50 running Windows Mobile 6.1.

Although the USB to Serial adapters with FTDI chips can be installed with drivers from FTDI, these will not work out of the box with WM6.1.

Initial Test with CN50

First I copied the Armv4 driver files ftdi_ser.dll and FTDIPORT.INF to \Windows on the device.

Inserted a Micro USB/B to USB A host connector (Digikey H11576-ND)

micro-usb-adapter

Inserted the USB2SER adapter “US232R-10 – Premium USB – RS232 Serial Converter Cable

US232R-10

The device prompts for the driver name and I typed “ftdi_ser.dll” although it should not do so, as I copied the files previously. See also

Then I started to try to communicate using COM10 (verified with registry). But there was no communication possible. The VCP test application did not list any port to open, so I entered COM10: (or SER0 for patched driver) but without success.

I also tested without success using a Loopback adapter as described here:

loopback-rs232

Using the VCP PC drivers for WinXP the serial adapter worked fine, so the hardware is not faulty.

I also tested on CN3 (WM6.1) at the dock connector without the micro-USB cable. But this did also not work.

Finally, I tested on a WinCE5 device (CK61) and this worked OK. So I compared the registry of WinCE5 and WM6.1 after driver install and adapter connection. I found the following (red) keys are missing on the WM6.1 device and so I added them manually:

REGEDIT4

;[HKEY_LOCAL_MACHINE\Drivers\Active\48]
;"FullName"="SER0"
;"Hnd"=dword:005A1A80
;"Key"="Drivers\\USB\\ClientDrivers\\FTDI_DEVICE"
;"Name"="SER0:"

[HKEY_LOCAL_MACHINE\Drivers\USB\ClientDrivers\FTDI_DEVICE\FTE06D03]
"ConfigData"=hex(3):01,04,3f,3f,10,27,88,13,c4,09,e2,04,71,
	02,38,41,9c,80,4e,c0,34,00,1a,00,0d,00,06,40,03,80,00,00,d0,80
"DeviceContext"=dword:00000000
"InitialIndex"=dword:00000000
"LatencyTimer"=dword:00000010

[HKEY_LOCAL_MACHINE\Drivers\USB\ClientDrivers\FTDI_DEVICE]
"ConfigData"=hex(3):01,04,3f,3f,10,27,88,13,c4,09,e2,04,71,02,38,41,9c,80,
	4e,c0,34,00,1a,00,0d,00,06,40,03,80,00,00,d0,80
"DeviceArrayIndex"=dword:00000000
"Dll"="ftdi_ser.dll"
"Index"=dword:00000000
"InitialIndex"=dword:00000000
"LatencyTimer"=dword:00000010
"Prefix"="SER"
"Version"="1.1.0.2"

[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24577\Default\Default\FTDI_DEVICE]
"DLL"="ftdi_ser.dll"

[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24592\Default\Default\FTDI_DEVICE]
"DLL"="ftdi_ser.dll"

[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24593\Default\Default\FTDI_DEVICE]
"DLL"="ftdi_ser.dll"

[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\Default\Default\255\FTDI_DEVICE]
"DLL"="ftdi_ser.dll"

Using these registry changes and after reinserting the adapter, I was able to communicate using the patched driver, where all COM was replaced with SER. Maybe the original driver will work too, it uses COM10 as port, where the patched driver uses SER0.

VCP Test Tool

Although the VCP Test application is not the best in regards of error checking (you can enter whatever you want for port and it always makes you think it was able to open the port), I include it here only for completeness.

Original VCP test tool: http://www.ftdichip.com/Projects/CodeExamples/VC++/VCPTest_vcpp.zip

Patched Driver: DOWNLOAD: FTDI (CE ARM) patched driver - Replaced all COM by SER

Here is the source code of the modded VCP test tool: DOWNLOAD: Modded VCP test tool -

Additional Links

Link to Installation guides: http://www.ftdichip.com/Documents/InstallGuides.htm

The CE installation guide: http://www.ftdichip.com/Documents/InstallGuides/Windows_CE_Installation_Guide.pdf

<!-- Social Bookmarks BEGIN --> <!-- Social Bookmarks END -->

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Germany Germany
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
Suggestionwindows Mobile 6.1/6.5 FTDI driver loading Pin
MadManMarkAu17-Jan-12 13:21
MadManMarkAu17-Jan-12 13:21 
I recently had some experience with the Windows Mobile FTDI driver not loading when a device is connected. It turns out in order for Windows Mobile to load the FTDI drivers, it needs to know the driver file associated with each device ID. This is what those LoadClient registry settings are for. The other registry settings are added by the CAB file/driver when it loads. They are automatic.

If you install the FTDI CAB file on the device, set those registry settings and connect the USB device, it should load correctly without prompting for the driver DLL. The registry settings can be applied by editing the setup XML in the CAB file.

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.