It is possible to switch the functionality of the USB Function driver on Colibri and Apalis modules. There are three possibilities in the Toradex default image:
To change this, you have to set one of the following registry values:
[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers] DefaultClientDriver="Serial_Class" ; This is the default setting -> Used e.g. for ActiveSync DefaultClientDriver="Mass_Storage_Class" ; Module behaves like USB mass storage device DefaultClientDriver="RNDIS" ; Module behaves like a USB network adapter DefaultClientDriver="USBSER_Class" ; Module behaves like a regular COM port
When Mass Storage Class is selected, the storage location is DSK1: by default. This is, for example, an external USB memory stick. If you would like to change this to the internal FlashDisk, you have to change the following registry value. The FlashDisk will disappear from the module root folder because it's now dedicated to the USB mass storage function.
[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\Mass_Storage_Class] DeviceName="DSK0:" ; DSK indexes can be found in Start->Controll Panel->Storage Manager
On the Vybrid VF50 and VF61 modules, we use the WEC7 notation even for Windows CE 6.0. In the DeviceName parameter you cannnot use the DSKn:
disk number, but set the store name of the mass-storage device you want to expose via the USB interface.
You can retrieve suitable names by checking under [HKEY_LOCAL_MACHINE\System\StorageManager\Profiles]
. Each profile has a Name entry containing its Store Name.
For example to expose SD card you can configure:
[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\Mass_Storage_Class] DeviceName="SD Memory Card"
In the DeviceName parameter you can also set the store name of the mass-storage device you want to expose via the USB interface. DSK names are still possible as well.
You can retrieve suitable names by checking under [HKEY_LOCAL_MACHINE\System\StorageManager\Profiles]
.
Each profile has a Name entry containing its Store Name.
For example to expose SD card you can configure:
[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\Mass_Storage_Class] DeviceName="SD Memory Card"
On images for i.MX before V1.0 and Tegra-based before 2.0 you can't expose the internal flash via usb-client interface.
It is possible to generate a Ram Drive (Ramdisk) to expose as the mass storage.
Depending on the host operating system, some registry patches might be required to make this driver work properly.
If your device is configured to behave as a serial port, Windows CE chooses the lowest available COM-port number by default. The COM port number for Windows CE can be defined in the following registry entry:
[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\USBSER_Class] Index=dword:<port number>