Getting a USB ACCESS-IS matrix board to work under linux

User avatar
zulios

27 Apr 2014, 01:58

Hello everyone,

I am a big fan of ACCESS-IS matrix keyboards and recently had the opportunity to buy a model I have been looking for during a long time : one of their 120 keys matrix board with USB connection and integrated USB hub. However, after getting it fully programmed I realized that it works perfectly in Windows, grub, but not under linux once the system has booted (ubuntu 14.04).

Some research on ACCESS-IS's website brought to my attention that there are two kind of boards : AKEOCU models and AKENOV. Mine being an AKEOCU (older models that do not send regular scancodes), it says that it should require some specific drivers or firmware to work, but obviously I can't get any further information.
USB:NOV Connects to the PC as a normal USB keyboard (i.e. characters typed on the keyboard will appear in a text editor or word processor). The keyboard part number normally begins AKENOV

USB:HID Connects to the PC as a custom USB HID device. This requires special firmware or drivers to read the output from the keyboard
So I went into the peripherals manager in Windows and could not find anything besides standard HID drivers. I tried looking into alternate solutions:
  • Using a USB to PS2 connector
  • Using wine
  • Using alternate entry methods in ubuntu config (respectively ibus and none)
  • Googling for other solutions / possibilities
What I don't get is that it works fine in grub, so that means there is a way to capture what the keyboard sends, probably using some kind of raw method. Would anyone have an idea on what I could do to get it working under linux ? I am terribly annoyed having to go back to Windows, especially since unity has gotten better with 14.04.

quantalume

27 Apr 2014, 08:28

Does it show up when you do a lsusb? How about xev--do any of the key codes come through?

User avatar
matt3o
-[°_°]-

27 Apr 2014, 10:21

could it be a BIOS setup? I had a similar issue and I had to set some "compatibility" mode in my motherboard bios.

User avatar
zulios

27 Apr 2014, 14:53

BIOS does not seem to be showing such a compatibility mode, all I could find is "legacy USB support" and it is already enabled.

lsusb shows the device as "Bus 005 Device 010: ID 0db5:0119", but no way to get morer information with -v. It's really strange because I could use it just fine to browse into the BIOS.

-- edit --

Forgot to mention that xenv does not show anything for that device. As expected, it needs some drivers once the system has loaded.

-- re edit --

Tried to deactive USB 1.1 support in BIOS (legacy USB). Keyboard is not recognized anymore in grub. I also realized that even in BIOS, the function keys are not recognized, but arrow keys, esc and enter work fine.

User avatar
matt3o
-[°_°]-

27 Apr 2014, 15:31

is it an USB3 motherboard? in that case can you disable v3 support?

User avatar
zulios

27 Apr 2014, 17:13

No usb 3, sorry. Only 1.1 / 2.0, and PS2 of course :)

User avatar
Muirium
µ

27 Apr 2014, 17:31

Hmm. I recently desoldered a 16x8 (128) switch matrix Tipro of my own, because I was sick of its PS/2 controller. (Only programmable under Windows XP!) I have the PCB spare if you wanted to substitute one set of problems for another! I've almost finished hooking it up by hand to a Teensy for NKRO over USB.

Edit: oh wait, Access != Tipro. Ah, the weekend!

quantalume

27 Apr 2014, 17:49

Have you checked to see what gets recorded in the kernel ring buffer? Plug it in after booting and then do a dmesg | tail.

User avatar
zulios

27 Apr 2014, 19:00

@Muirium : Thanks for the laugh :)

@quantalume: Here is the log tail; interesting !

Code: Select all

[  726.852025] usb 5-2: new full-speed USB device number 3 using uhci_hcd
[  727.026810] usb 5-2: New USB device found, idVendor=0db5, idProduct=0119
[  727.026815] usb 5-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  727.026819] usb 5-2: Product: Multifunction Keyboard Hub
[  727.026822] usb 5-2: Manufacturer: Access Keyboards Ltd.
[  727.034838] hub 5-2:1.0: USB hub found
[  727.035809] hub 5-2:1.0: config failed, hub has too many ports! (err -19)
It has an integrated hub with two (2) ports. Now why does configuration fail ? Maybe the keyboard sends the wrong info (yeah, I have one zillion ports) or there is a bug / not handled situation in the driver. Don't know if I can override the configuration though.

-- edit --

Or simply the problem might be that it should be detected as a keyboard, not a hub in the first place. But it seems that using udev is difficult in that regard.

Post Reply

Return to “Keyboards”