How to add new bluetooth handles as event inputs?

Could anyone give me a hint on where in the linux bluetooth stack things need to be modified to get new “ATT” Handle Value Notification codes working?

I have some bluetooth remotes that don’t create an event device in /dev/input at all, and others where certain buttons don’t generate anything in evtest when pressed while other buttons work fine.

All of the buttons from all the remotes show input received in btmon though (after successful pair/trust/connect).

Buttons that work all have Handle: 0x007d under the ATT entry.

ACL Data RX: Handle 65 flags 0x02 dlen 11 #2 [hci0] 15.324941
ATT: Handle Value Notification (0x1b) len 6
Handle: 0x007d
Data[4]: 41000000

Buttons that don’t work have other values like 0x0081 and 0x005e. Remotes that don’t create devices don’t have any buttons with 0x007d codes.

A button that doesn’t work on a remote that mostly works:

ACL Data RX: Handle 65 flags 0x02 dlen 11 #26 [hci0] 236.728490
ATT: Handle Value Notification (0x1b) len 6
Handle: 0x0081
Data[4]: 00ce0000

A button from a remote that doesn’t create an event device.

ACL Data RX: Handle 64 flags 0x02 dlen 10 #13 [hci0] 111.050397
ATT: Handle Value Notification (0x1b) len 5
Handle: 0x005e
Data[3]: 520000