# trying to use iichid for i2c trackpad



## Crocodillian (Feb 10, 2020)

Hi, I am running current, and I just tried installing this for my i2c trackpad:









						GitHub - wulf7/iichid: Generic HID layer for FreeBSD. Including I2C and USB backends.
					

Generic HID layer for FreeBSD. Including I2C and USB backends. - GitHub - wulf7/iichid: Generic HID layer for FreeBSD. Including I2C and USB backends.




					github.com
				




the driver compiled and loaded from kld_list in rc.conf.

I see the following output in dmesg:


```
iicbus0: <Philips I2C bus> on ig4iic0
iichid0: HID command I2C_HID_CMD_DESCR at 0x20
iichid0: HID descriptor: 1e 00 00 01 4e 02 21 00 24 00 24 00 25 00 00 00 22 00 23 00 3a 09 36 13 10 00 00 00 00 00
iichid0 at addr 0x2c on iicbus0
iichid0:   ACPI Hardware ID  : UNIW0001
iichid0:   IICbus addr       : 0x2C
iichid0:   HID descriptor reg: 0x20
iichid0: HID command I2C_HID_CMD_SET_POWER(0)
iichid0: HID command I2C_HID_CMD_RESET
iichid0: HID command I2C_HID_REPORT_DESCR at 0x21 with size 590
iichid0: HID report descriptor: 05 01 09 02 a1 01 85 02 05 01 09 01 a1 00 05 09 19 01 29 02 15 00 25 01 75 01 95 02 81 02 05 0d 09 32 75 01 95 01 81 02 75 05 95 01 81 03 05 01 75 10 95 01 35 00 45 00 16 00 80 26 ff 7f 09 30 81 26 16 00 80 26 ff 7f 09 31 81 26 c0 c0 05 0d 09 05 a1 01 85 01 05 0d 09 22 a1 02 09 47 09 42 15 00 25 01 75 01 95 02 81 02 95 06 81 03 09 51 25 04 75 08 95 01 81 02 05 01 09 30 75 10 55 0e 65 11 35 00 46 10 04 27 1d 05 00 00 81 02 09 31 46 d0 02 27 8a 03 00 00 81 02 c0 05 0d 09 22 a1 02 09 47 09 42 15 00 25 01 75 01 95 02 81 02 95 06 81 03 09 51 25 04 75 08 95 01 81 02 05 01 09 30 75 10 55 0e 65 11 35 00 46 10 04 27 1d 05 00 00 81 02 09 31 46 d0 02 27 8a 03 00 00 81 02 c0 05 0d 09 22 a1 02 09 47 09 42 15 00 25 01 75 01 95 02 81 02 95 06 81 03 09 51 25 04 75 08 95 01 81 02 05 01 09 30 75 10 55 0e 65 11 35 00 46 10 04 27 1d 05 00 00 81 02 09 31 46 d0 02 27 8a 03 00 00 81 02 c0 05 0d 09 22 a1 02 09 47 09 42 15 00 25 01 75 01 95 02 81 02 95 06 81 03 09 51 25 04 75 08 95 01 81 02 05 01 09 30 75 10 55 0e 65 11 35 00 46 10 04 27 1d 05 00 00 81 02 09 31 46 d0 02 27 8a 03 00 00 81 02 c0 05 0d 09 54 15 00 25 04 75 08 95 01 81 02 05 09 09 01 15 00 25 01 75 01 95 01 81 02 95 07 81 03 05 0d 09 56 55 0c 66 01 10 35 00 47 ff ff 00 00 15 00 27 ff ff 00 00 75 10 95 01 81 02 06 0d 00 09 55 15 00 26 04 00 75 08 96 01 00 85 03 b1 02 06 0d 00 09 59 15 00 26 01 00 75 08 96 01 00 85 04 b1 02 06 00 ff 85 05 75 08 15 00 09 c6 25 08 95 01 b1 02 09 c7 26 ff 00 95 20 b1 02 c0 05 0d 09 0e a1 01 05 0d 09 22 a1 02 09 52 15 00 25 0a 75 08 95 01 85 06 b1 02 c0 05 0d 09 22 a1 00 09 57 09 58 15 00 25 01 75 01 95 02 85 07 b1 02 95 06 b1 03 c0 05 0d 09 60 15 00 25 01 75 01 95 01 85 08 b1 02 95 07 b1 03 c0 06 00 ff 09 01 a1 01 06 00 ff 09 11 15 00 26 ff 00 75 08 96 10 00 85 0c b1 02 c0
iichid0: determined (len=29) and described (len=34) input report lengths mismatch
iichid0: Interrupt setup failed. Fallback to sampling
hidbus4: <HID bus> on iichid0
hms2 on hidbus4
hms2: 2 buttons and [XY] coordinates ID=2
hmt0 on hidbus4
iichid0: HID command I2C_HID_CMD_GET_REPORT 3 (type 3, len 2)
iichid0: response size 5 != expected length 4
iichid0: response: 05 00 03 04
hconf0 on hidbus4
iichid0: HID command I2C_HID_CMD_GET_REPORT 6 (type 3, len 2)
iichid0: response: 04 00 06 00
iichid0: HID command I2C_HID_CMD_SET_REPORT 6 (type 3, len 2): 06 03
hmt0: Multitouch touchpad with 1 button
hmt0: 4 contacts with [C] properties. Report range [0:0] - [1309:906]
iichid0: HID command I2C_HID_CMD_SET_POWER(1)
```

This leads me to believe, perhaps incorrectly, that devices hms2 and hmt0 were registered for my trackpad.

However, I cannot find any device nodes corresponding to these devices.

For /dev/ums* there is only /dev/ums0 which is my wired mouse.

None of the /dev/input/* devices correspond to my trackpad either.

I have devd installed and running.

Apologies if I'm doing something stupid, I am very new to FreeBSD.


----------



## SirDice (Feb 10, 2020)

Crocodillian said:


> I am running current,


Topics about unsupported FreeBSD versions


----------



## aragats (Feb 10, 2020)

Crocodillian said:


> I cannot find any device nodes corresponding to these devices.


With the current iichid version you will not find any device nodes except /dev/input/eventX, so now the driver works with X server only.
Since you don't see them at all, I would suggest opening an issue on the project page and submitting your dmesg() output there.


----------



## Crocodillian (Apr 16, 2020)

Just tried the latest git master of iichid, and my trackpad works now!

Just need to tweak some libinput settings.


----------

