[Android General] limited_imagination:
Adding FTDI VCP driver to Acer B1-750

Hopefully the smart kids in this thread have some ideas about the following:

I have an Acer B1-750, on stock rom, and rooted as I described earlier in this thread, and I'd like to use an app that needs the FTDI VCP serial drivers to be working.

Unfortunately, when I plug in my FT232R USB cable to the Acer with an OTG adapter, the Acer tablet finds the cable, but it does not "attach" to ttyUSB0 when I check dmesg in a terminal window.

It looks like Acer did not enable the FTDI driver in the kernel.

So it looks like I need to add the driver module to the existing kernel on the B1-750.

The source code for the B1-750 kernel is available on the Acer website, direct link here, so in theory it looks like it should be possible to add the FTDI module to the kernel:

http://global-download.acer.com/GDF...E 7&Step3=B1-750&OS=ALL&LC=en&BC=ACER&SC=PA_6

FTDI published a document to help people do this, about 5 years ago: http://www.ftdichip.com/Support/Doc...TDI_Devices_VCP_Driver_Support_to_Android.pdf

I have also been reading this "beginner's guide" to compiling a kernel and adding new modules here: http://xda-university.com/as-a-developer/getting-started-building-a-kernel-from-source

I am getting stuck right at creating a .config file, as outlined in Step 3 of the XDA University document.

Unfortunately, the B1-750 does not appear to have a config.gz file that I can pull out of it with adb, as suggested in that XDA University document.

So it looks like I would have to create my own .config file from the defaults in the source code, which is kind of a scary proposition.

Once I unzip the source code from Acer for the "linux-vespa2", there are actually two folders of source code within it. One folder is named "kernel", and one is named "modules".

It's not clear to me why Acer would have split the source code folders like this, and it causes problems.

Following the XDA University guide, and using my best guess as to which files in the source code should be referenced for the B1-750 kernel, I tried entering the following command in a terminal window, starting from the /linux-vespa2/kernel directory:

However, this generates "can't open file" errors, because it's parsing a script at /linux-vespa2/kernel/arch/x86/Kconfig, which refers to folders that don't exist under the "kernel" folder.

The first error was because the script pointed to /linux-vespa2/kernel/drivers/acpi/Kconfig. That Kconfig file does not exist, because there is no acpi folder under "kernel". But there is an acpi folder under "modules", so I simply copied it to the "kernel/drivers" folder, and re-ran the "make" command.

The second time, the "make" command got further down the script at /linux-vespa2/kernel/arch/x86/Kconfig, but it gave a new "can't open file" error at a later line number, this time for "drivers/rapidio/Kconfig".

Since there were no RapidIO drivers at all in the Acer source code, either in the "kernel" or the "modules" folders, I simply created a blank text file at /linux-vespa2/kernel/drivers/rapidio/Kconfig.

I re-ran the "make" command a third time, and again it worked further through the script. But it showed a new "can't open file" error at a later line number, this time because "fs/Kconfig.binfmt" did not exist.

So now I am stumped.

I can't keep creating these hack guesses about folder structure just to get the "make" command to work further through the script.

Even if it "works" to do that, I am going to end up with a .config file that probably doesn't fit the B1-750 at all. A high probability of bricking the tablet.

But Acer themselves provided the source code for the B1-750, with the weird folder structure, and with the /linux-vespa2/kernel/arch/x86/Kconfig script that doesn't event match the folders!

Can anyone provide some ideas here?

Thanks.