Hi, I have an external USB IBM ThinkPad UltraNav keyboard[1] attached to my laptop and I'd like to get scrolling to work. Currently to scroll I mouse over the scrollbar, click and move the pointer. I have looked at some resources[2][3][4] but was unsuccessful.
I'll append some information on my keyboard to the end of this email. Note that my laptop is not a ThinkPad, but it has its own synaptics touchpad. I include its lsusb output as well. I test by loading up a long page in Firefox, then hold down the middle mouse button and scrolling with the red nubbie immediately above the B key, but the page does not scroll. Any pointers? Thanks! Mike [1] http://fula.jp/blog/image/ThinkPlus_USB_Keyboard_with_UltraNav_Japanese.jpg [2] http://kaeru.my/journal/scrolling-with-thinkpad-keyboard-with-ultranav [2] http://www.thinkwiki.org/wiki/Installing_Ubuntu_8.10_(Intrepid_Ibex)_on_a_ThinkPad_T61#Emulate_Wheel_.28Middle-click_scrolling.29 [4] http://mvogt.wordpress.com/2008/08/15/xorg-evdev-and-emulatewheel/ $ cat /etc/hal/fdi/policy/mouse-wheel.fdi <?xml version="1.0" encoding="ISO-8859-1"?> <deviceinfo version="0.2"> <device> <match key="info.product" string="Lite-On Tech IBM USB Keyboard with UltraNav"> <!--match key="info.product" string="Synaptics Inc. Composite TouchPad / TrackPoint"--> <!--match key="info.product" string="SynPS/2 Synaptics TouchPad"--> <merge key="input.x11_options.EmulateWheel" type="string">true</merge> <merge key="input.x11_options.EmulateWheelButton" type="string">2</merge> <merge key="input.x11_options.ZAxsisMapping" type="string">4 5</merge> <merge key="input.x11_options.Emulate3Buttons" type="string">true</merge> </match> </device> </device> Excerpt from `xinput list`: "SynPS/2 Synaptics TouchPad" id=2 [XExtensionPointer] Num_buttons is 12 Num_axes is 2 Mode is Relative Motion_buffer is 256 Axis 0 : Min_value is 1472 Max_value is 5472 Resolution is 1 Axis 1 : Min_value is 1408 Max_value is 4448 Resolution is 1 "AT Translated Set 2 keyboard" id=3 [XExtensionKeyboard] Num_keys is 248 Min_keycode is 8 Max_keycode is 255 "Synaptics Inc. Composite TouchPad / TrackPoint" id=4 [XExtensionPointer] Num_buttons is 32 Num_axes is 2 Mode is Relative Motion_buffer is 256 Axis 0 : Min_value is -1 Max_value is -1 Resolution is 1 Axis 1 : Min_value is -1 Max_value is -1 Resolution is 1 "Synaptics Inc. Composite TouchPad / TrackPoint" id=5 [XExtensionPointer] Num_buttons is 32 Num_axes is 2 Mode is Relative Motion_buffer is 256 Axis 0 : Min_value is -1 Max_value is -1 Resolution is 1 Axis 1 : Min_value is -1 Max_value is -1 Resolution is 1 "Lite-On Tech IBM USB Keyboard with UltraNav" id=6 [XExtensionKeyboard] Num_keys is 248 Min_keycode is 8 Max_keycode is 255 Num_buttons is 32 "Lite-On Tech IBM USB Keyboard with UltraNav" id=7 [XExtensionKeyboard] Num_keys is 248 Min_keycode is 8 Max_keycode is 255 Excerpt from `lsusb -v`: Bus 003 Device 007: ID 06cb:0009 Synaptics, Inc. Composite TouchPad and TrackPoint Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.10 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 8 idVendor 0x06cb Synaptics, Inc. idProduct 0x0009 Composite TouchPad and TrackPoint bcdDevice 0.20 iManufacturer 1 Synaptics Inc. iProduct 2 Composite TouchPad / TrackPoint iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 91 bNumInterfaces 2 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 3 Human Interface Device bInterfaceSubClass 1 Boot Interface Subclass bInterfaceProtocol 2 Mouse iInterface 3 Rel HID Device Descriptor: bLength 9 bDescriptorType 33 bcdHID 1.00 bCountryCode 0 Not supported bNumDescriptors 1 bDescriptorType 34 Report wDescriptorLength 50 Report Descriptors: ** UNAVAILABLE ** Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0003 1x 3 bytes bInterval 10 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 1 bNumEndpoints 1 bInterfaceClass 0 (Defined at Interface level) bInterfaceSubClass 0 bInterfaceProtocol 0 iInterface 4 Abs Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0008 1x 8 bytes bInterval 10 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 3 Human Interface Device bInterfaceSubClass 1 Boot Interface Subclass bInterfaceProtocol 2 Mouse iInterface 3 Rel HID Device Descriptor: bLength 9 bDescriptorType 33 bcdHID 1.00 bCountryCode 0 Not supported bNumDescriptors 1 bDescriptorType 34 Report wDescriptorLength 50 Report Descriptors: ** UNAVAILABLE ** Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0003 1x 3 bytes bInterval 10 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 1 bNumEndpoints 1 bInterfaceClass 0 (Defined at Interface level) bInterfaceSubClass 0 bInterfaceProtocol 0 iInterface 4 Abs Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0008 1x 8 bytes bInterval 10 Device Status: 0x0000 (Bus Powered) Bus 003 Device 006: ID 04b3:3018 IBM Corp. UltraNav Keyboard Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.10 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 8 idVendor 0x04b3 IBM Corp. idProduct 0x3018 UltraNav Keyboard bcdDevice 1.16 iManufacturer 1 Lite-On Tech iProduct 2 IBM USB Keyboard with UltraNav iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 59 bNumInterfaces 2 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 70mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 3 Human Interface Device bInterfaceSubClass 1 Boot Interface Subclass bInterfaceProtocol 1 Keyboard iInterface 0 HID Device Descriptor: bLength 9 bDescriptorType 33 bcdHID 1.10 bCountryCode 0 Not supported bNumDescriptors 1 bDescriptorType 34 Report wDescriptorLength 65 Report Descriptors: ** UNAVAILABLE ** Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0008 1x 8 bytes bInterval 24 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 3 Human Interface Device bInterfaceSubClass 0 No Subclass bInterfaceProtocol 0 None iInterface 0 HID Device Descriptor: bLength 9 bDescriptorType 33 bcdHID 1.10 bCountryCode 0 Not supported bNumDescriptors 1 bDescriptorType 34 Report wDescriptorLength 85 Report Descriptors: ** UNAVAILABLE ** Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0005 1x 5 bytes bInterval 48 Device Status: 0x0000 (Bus Powered) Bus 003 Device 005: ID 04b3:3016 IBM Corp. UltraNav Keyboard Hub Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.10 bDeviceClass 9 Hub bDeviceSubClass 0 Unused bDeviceProtocol 0 Full speed (or root) hub bMaxPacketSize0 8 idVendor 0x04b3 IBM Corp. idProduct 0x3016 UltraNav Keyboard Hub bcdDevice 2.01 iManufacturer 1 Lite-On Tech iProduct 2 USB 1.1 2 port downstream low-power hub iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 25 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 40mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 9 Hub bInterfaceSubClass 0 Unused bInterfaceProtocol 0 Full speed (or root) hub iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0001 1x 1 bytes bInterval 255 Hub Descriptor: bLength 9 bDescriptorType 41 nNbrPorts 4 wHubCharacteristic 0x0009 Per-port power switching Per-port overcurrent protection bPwrOn2PwrGood 50 * 2 milli seconds bHubContrCurrent 100 milli Ampere DeviceRemovable 0x18 PortPwrCtrlMask 0xff Hub Port Status: Port 1: 0000.0100 power Port 2: 0000.0100 power Port 3: 0000.0303 lowspeed power enable connect Port 4: 0000.0303 lowspeed power enable connect Device Status: 0x0000 (Bus Powered)