Issue :
Some of the Huawei USB Dongles not recognized by Android JellyBean4.1.2 in Beaglebone.
In Detail :
I am working with BeagleBone running on Android JellyBean4.1.2 .
Huawei - E1731 [Locked] , Huawei - E303D [Locked]
are working fine in this platform.
Huawei E303F , Huawei E303F (Both Factory Unlocked)
are not recognized by the OS
(Communication files not generated)
Now the mentioned USB Dongles are working fine .
But i want to find the root cause & have to fix it .
Is there any option to fix it by building Android OS from source ? If yes , How ? Which are the files need to change ?
Why some dongles directly recognized without the mentioned work-around ?
As skoperst said , i have checked option.c
in kernel_dir/drivers/usb/serial/option.c
Is there any solution other than hard-coding Device VID & PID
.
I need some more generic solution , to facilitate a Plug & Play
mechanism.
How the Plug & Play works in linux
.If it is possible with linux kernal
, is it also possible with Android?
Your great suggestions appreciated . Lot of thanks in advance.
Your issue is with the kernel running on the device you use and not about the Android OS.
Which USB device are supported(I.E. which combination of vid/pid) depends on which sets are defined in the kernel, its hard-coded.
Specifically you need USB serial device definition(AKA ttyUSB) for you specific VID&PID and they are usually located in: kernel_dir/drivers/usb/serial/option.c That's also true for any other driver you wish the device will recognize.