User Tools

Site Tools


USB OTG (on the go)

Many users ask for USB OTG function in X-plore. This is, connecting a USB memory card directly to Android device through special cable, and access the files.

This article explains a bit how it works on Android, and problems around it.

Native device drivers

Some Android devices contain drivers to access USB OTG directly in the operating system (it is more dependent on installed ROM version rather than on device). In such case, Android manages all about USB OTG, and when it is inserted, the memory card is mapped into a folder in /storage/<something>, and X-plore will also directly show the USB memory in top level. This is ideal case, as Android manages most of what's needed.

Missing device drivers

Another Android devices contain needed USB hardware (USB host mode), but do not mount the USB device automatically, simply ignoring it. It is still possible for apps to access connected USB device (after confirming USB access in a system dialog). Basically, an app can work with any connected USB device if the app implements the low-level USB communication protocol for the device. In case of USB OTG, an app like X-plore must implement needed raw communication with memory card and understand the file system in which card is formatted.
It's shame that an app must provide tasks that are better suited for operating system, but that's so on Android.

When in this mode, only one app can use USB at a time. So when one app gets user's permission to use USB device, other apps won't see the device anymore until the app releases the access.

A complication is that there are many file systems (FAT32, ExFat, NTFS, ext3, etc…) to which memory card may be formatted. Each of these is pretty complicated, mainly when it comes to reliable writing, so that files are not corrupted or lost. X-plore works only with mostly used FAT32 file system. Some other file managers may support also different file systems.

X-plore's way to access USB OTG

X-plore now supports both modes of operations. There is option in Configuration that enables raw USB access in X-plore when a USB device is plugged in.

When the option Allow USB access is enabled, X-plore uses own file system driver (FAT32) to work with memory card. This will show those system USB confirmation dialog, and USB device is exclusively used by X-plore. There is also chance that due some bug in X-plore, writing may corrupt some files on the card (the feature is still “experimental”).

In this mode, there's also Eject option in long-click menu, that lets X-plore to disconnect the USB device.

The better option is if device has native USB drivers, and the USB option is unchecked in X-plore. If your USB memory is recognized this way, prefer it and uncheck the direct USB access.

xplore/usb_otg.txt · Last modified: 2016/12/29 16:50 (external edit)