This is a cache of https://discuss.96boards.org/t/410c-add-ir-overlay-drivers/637. It is a snapshot of the page at 2024-11-01T03:43:44.235+0000.
410c add IR Overlay Drivers - DragonBoard410c - 96Boards Forum

410c add IR Overlay Drivers

Hello,

Working on a prototype product for a company and just upgraded boards to the 410c. Only problem is the board doesn’t work with our infrared overlay.

The drivers provided are here;
http://multitouch.com/support.html

They provide a usb_pqlabs.ko file. On the old board (iStick from same company) this was on the android at /system/lib/modules/ . I pushed the ko file to that location on the new board but no luck…

Any Help ?

Joe

In general it is not possible to copy a .ko file from one Android system and have it work on another, you need to the source code for the driver. Does the PQ Labs driver come with source code?

Hello Danielt!

Thanks for taking the time to help me with this.

To answer your quetion yes PQ Labs has the drivers with the source on the link I provided.
http://multitouch.com/support.html

If you look at that link you’ll see the “ubuntu / Fedora” driver download.

How would I go about using the source they provide and putting it on the board?

Basically you have to build the code from PQ Labs as an out-of-tree module.

The generic advice on how to build an out-of-tree module is found here:
https://www.kernel.org/doc/Documentation/kbuild/modules.txt

The tricky pieces in the above are:

  1. Finding the out-of-tree driver code in the PQ Labs release. I took a quick look and I think it might be in /driverkit/driver/pqlabs/ . Ultimately though if you're not sure here you'll have to ask PQ Labs.
  2. The instructions on building out-of-tree modules require that you "must have a prebuilt kernel available that contains the configuration and header files used in the build.". That can be tricky if you not done it before but is a guide to help you (you'll need to read most of the doc but the section you really care about is "4.4 Build the Linux kernel manually"):

    https://developer.qualcomm.com/download/db410c/linux-android-software-build-and-installation-guide.pdf

BTW when you asked about this before I remember seeing some kind of Android specific driver. You might want to hunt for that (and any related documentation for that that PQ Labs provides). The kernel driver is probably not enough to get everything working… there seems to be a lot of userspace code too.

Great!

I managed to find the G4 android driver that you mentioned at the bottom of this page under the “Supported OS” section;

http://multitouch.com/g4-spec.html

Now that I have those what would you say the steps are exactly again?

To give you an idea of what the project looks like thus far here is a video link. I hope it sparks your interest and I’m prsenting it in Portland Oregon in a little over a month so hoping to have version 2 prototype done!

I’ll be releasing a new video going in depth about the UI I’ve made and other features here in the next few weeks.

Joe

The steps for the kernel module don’t really change. You will still have to build the driver code as an out-of-tree module (see #2 from my last post) which will be somewhat fiddly. However at least now you also have the rest of the Android code needed to get the userspace working too :wink: .