Only PS/2 keyboard is working, USB doesn't (Xorg.conf)

Posted on 2012-08-24
Last Modified: 2012-09-02
I have a linux system here which for some reason does not allow USB keyboard input when I'm running the X windowing environment. A ps/2 keyboard works properly, but the USB keyboard is ignored.

There is no desktop environment (e.g. Gnome, KDE etc.), it's JUST a raw X-window environment that runs a single GUI application.

I believe that the system was configured intentionally to behave this way. It's a debian-based custom distro.

Is there an obvious way I can re-enable USB keyboard input? The Xorg.conf is below:

# XF86Config-4 (XFree86 X server configuration file) generated by dexconf, the
# Debian X Configuration tool, using values from the debconf database.
# Edit this file with caution, and see the XF86Config-4 manual page.
# (Type "man XF86Config-4" at the shell prompt.)
# This file is automatically updated on xserver-xfree86 package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xfree86
# package.
# If you have edited this file but would like it to be automatically updated
# again, run the following commands as root:
#   cp /etc/X11/XF86Config-4 /etc/X11/XF86Config-4.custom
#   md5sum /etc/X11/XF86Config-4 > /var/lib/xfree86/XF86Config-4.md5sum
#   dpkg-reconfigure xserver-xfree86

Section "Files"
#       FontPath        "unix/:7100"                    # local font server
        # if the local font server has problems, we can fall back on these
#       FontPath        "/usr/lib/X11/fonts/Type1"
#       FontPath        "/usr/lib/X11/fonts/CID"
#       FontPath        "/usr/lib/X11/fonts/Speedo"
        FontPath        "/usr/lib/X11/fonts/misc"
#       FontPath        "/usr/lib/X11/fonts/cyrillic"
#       FontPath        "/usr/lib/X11/fonts/100dpi"
#       FontPath        "/usr/lib/X11/fonts/75dpi"

Section "Module"
        #Load   "GLcore"
        #Load   "bitmap"
        #Load   "dbe"
        #Load   "ddc"
        #Load   "dri"
        #Load   "extmod"
        #Load   "freetype"
        Load    "glx"
        Load    "int10"
        #Load   "record"
        #Load   "speedo"
        #Load   "type1"
        #Load   "vbe"

Section "ServerFlags"
        Option "DontZap" "true"
        Option "DontZoom" "true"
        Option "DontVTSwitch" "true"
        Option "LogFile" "/tmp/XFree86.log"

Section "InputDevice"
        Identifier      "Generic Keyboard"
        Driver          "keyboard"
        Option          "CoreKeyboard"
        Option          "XkbDisable"
#       Option          "XkbRules"      "xfree86"
#       Option          "XkbModel"      "pc104"
#       Option          "XkbLayout"     "us"

Section "InputDevice"
        Identifier      "Configured Mouse"
        Driver          "void"
        Option          "CorePointer"

Section "Device"
        Identifier      "Generic Video Card"
        Driver          "nvidia"
        Option          "NoLogo"

Section "Monitor"
        Identifier      "Generic Monitor"

        HorizSync       28-93.75
        VertRefresh     50-60
#       Option          "DPMS"

Section "Screen"
        Identifier      "Default Screen"
        Device          "Generic Video Card"
        Monitor         "Generic Monitor"
        DefaultDepth    24
        SubSection "Display"
                Depth           24
                Modes           "640x480"

Section "ServerLayout"
        Identifier      "Default Layout"
        Screen          "Default Screen"
        InputDevice     "Generic Keyboard"
        InputDevice     "Configured Mouse"

Open in new window

Question by:Frosty555
    LVL 82

    Expert Comment

    by:Dave Baldwin
    Does a USB mouse work?
    LVL 31

    Author Comment

    I'm not sure... the system only shows a mouse cursor at the very beginning of it's boot when the X window environment is first loading. Once the machine is fully booted and software is running (it's a fullscreen video game that runs automatically on boot) there is no obvious indication of the mouse, no mouse cursor present, so it's hard to test.

    I think it's the same as the keyboard - PS/2 probably works, but USB does not.
    LVL 82

    Expert Comment

    by:Dave Baldwin
    Does the USB keyboard work in the BIOS setup?  If not, you're probably out of luck.
    LVL 31

    Author Comment

    USB keyboard *does* work in the BIOS. It also works when booting from a live-cd.

    Actually, doing a bit more testing the USB keyboard appears to work right up until the X environment runs. I can hit CTRL+C or ENTER during the bootup process and I can see those keystrokes are being read while all the text is scrolling up the screen during bootup.

    This is why I suspect it was intentionally configured this way - this linux machine is actually a public kiosk - it's inside a locked cabinet with no keyboard attached. The USB keyboard is probably disabled so that people can't mess around with the machine. (there are usb ports on the front of the kiosk so people can plug in flash drives. The original authors probably didn't want people putting keyboards in)
    LVL 82

    Expert Comment

    by:Dave Baldwin
    Sounds like you're probably right.
    LVL 31

    Accepted Solution

    Okay I figured it out.

    In the "InputDevices" section there's a line:

    Option          "XkbDisable"

    Comment that out, and everything works.
    LVL 82

    Expert Comment

    by:Dave Baldwin
    Ok, glad you found it.
    LVL 31

    Author Closing Comment

    found my own solution. it was staring me right in the face

    Featured Post

    6 Surprising Benefits of Threat Intelligence

    All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

    Join & Write a Comment

    This article will explain how to establish a SSH connection to Ubuntu through the firewall and using a different port other then 22. I have set up a Ubuntu virtual machine in Virtualbox and I am running a Windows 7 workstation. From the Ubuntu vi…
    The purpose of this article is to show how we can create Linux Mint virtual machine using Oracle Virtual Box. To install Linux Mint we have to download the ISO file from its website i.e. Once you open the link you will see …
    Learn how to navigate the file tree with the shell. Use pwd to print the current working directory: Use ls to list a directory's contents: Use cd to change to a new directory: Use wildcards instead of typing out long directory names: Use ../ to move…
    Connecting to an Amazon Linux EC2 Instance from Windows Using PuTTY.

    754 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    16 Experts available now in Live!

    Get 1:1 Help Now