Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] scrollwheel misbehaving / switching to evdev
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
red-wolf76
l33t
l33t


Joined: 13 Apr 2005
Posts: 714
Location: Rhein-Main Area

PostPosted: Thu May 06, 2010 5:36 pm    Post subject: [SOLVED] scrollwheel misbehaving / switching to evdev Reply with quote

Evdev is getting on my nerves. It's working perfectly with my keyboard (a Logitech diNovo Bluetooth) even though I haven't yet managed to get bt to work automagically after booting, but it giving me heartburn with the mouse. I have the cordless MX900 that came with the keyboard (3 axes, 8 buttons) as well as a "simpler" Logitech Optical Mouse (3 axes, 3 buttons). I also have a wacom tablet, which isn't connected currently.

Point & Click works, as do buttons 1 through 3. (both mice). When using the scroll wheel... well... hilarity ensues. The problem being that the events are completely off. Scrolling down sends me all the way back in the browser tab history. So I guess I only need to tell Xorg how to arrange the buttons correctly.

I've searched high and wide but all solutions offered in the threads that can be found so far haven't cut any cheese. It seems as if Xorg sees the mouse options I care to enter into xorg.conf - only to completely ignore them.

Here's my
/etc/X11/xorg.conf:
Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Mouse0"     "SendCoreEvents"
    InputDevice    "stylus"     "SendCoreEvents"
    InputDevice    "cursor"     "SendCoreEvents"
    Option         "Xinerama" "false"
    Option      "IgnoreAPI"
EndSection

Section "ServerFlags"
    Option         "AutoAddDevices"
    Option         "AutoEnableDevices"
EndSection

Section "InputDevice"
    Identifier     "Mouse0"
    Driver      "evdev"
    Option         "CorePointer"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/input/mice"
    Option         "Resolution" "1200"
    Option         "Buttons" "8"
    Option         "ZAxisMapping" "7 8"
    Option         "Emulate3Buttons" "false"
EndSection

Section "InputDevice"
     Driver        "hid-wacom"
     Identifier    "stylus"
     Option        "Device"       "/dev/input/wacom-bamboo-one"
     Option        "Type"         "stylus"
     Option        "USB"          "on"                 # USB ONLY
     Option        "Mode"         "Absolute"           # other option: "Relative"
     Option        "Vendor"       "WACOM"
     Option        "Threshold"    "5"   # the official linuxwacom howto advises this line
EndSection

Section "InputDevice"
     Driver        "hid-wacom"
     Identifier    "cursor"
     Option        "Device"       "/dev/input/wacom-bamboo-one"
     Option        "Type"         "cursor"
     Option        "USB"          "on"                  # USB ONLY
     Option        "Mode"         "Absolute"            # other option: "Absolute"
     Option        "Vendor"       "WACOM"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "LG"
    ModelName      "FLATRON L2000CE"
    HorizSync       28.0 - 83.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
    ModeLine "1400x1050" 121.75  1400 1488 1632 1864  1050 1053 1057 1089 +hsync +vsync
EndSection

Section "Device"
    Identifier      "Videocard0"
    Driver      "nvidia"
    VendorName      "NVIDIA Corporation"
    BoardName      "GeForce 7600 GS"
    Option      "Coolbits" "true"
    Option      "RenderAccel" "true"
    Option      "AllowGLXWithComposite" "true"
    Option      "NoPowerConnectorCheck" "true"
    Option      "Backingstore" "true"
    Option      "Triplebuffer" "true"
    Option      "AddARGBGLXVisuals" "true"
    Option      "NoLogo" "true"
    Option      "FlatPanelProperties" "Scaling = native"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Videocard0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
   Virtual     1400 1050
    EndSubSection
EndSection

Section "Extensions"
    Option      "Composite" "Enable"
EndSection


And my
emerge --info:
Portage 2.2_rc67 (default/linux/x86/10.0/desktop/gnome, gcc-4.4.3, glibc-2.11-r1, 2.6.33-gentoo-r1 i686)
=================================================================
System uname: Linux-2.6.33-gentoo-r1-i686-AMD_Athlon-tm-_XP_3000+-with-gentoo-2.0.1
Timestamp of tree: Thu, 06 May 2010 16:45:01 +0000
app-shells/bash:     4.1_p5
dev-java/java-config: 2.1.11
dev-lang/python:     2.6.5-r2, 3.1.2-r3
dev-util/cmake:      2.8.1-r1
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.6.1-r1
sys-apps/sandbox:    2.2
sys-devel/autoconf:  2.13, 2.65
sys-devel/automake:  1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1
sys-devel/gcc:       4.4.3-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
virtual/os-headers:  2.6.33
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA dlj-1.1"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=native -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps=y"
FEATURES="assume-digests distlocks fixpackages news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror ftp://ftp.uni-erlangen .de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo ftp://ftp.gentoo.mesh-solutions.com/gentoo ftp://ftp.tu-clausthal.de/pub/linux/gentoo ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo"
LANG="de_DE.utf8"
LC_ALL=""
LDFLAGS="-Wl,-O1"
LINGUAS="de"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /var/lib/layman/enlightenment-niifaq"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X Xaw3d a52 aac acl acpi alsa berkdb bluetooth branding bzip2 cairo cdparanoia cdr cli consolekit cracklib crypt cups cxx dbus dmi dri dts dvd dvdr emboss encode evo exif fam ffmpeg firefox flac fortran gconf gdbm gdu gif gnome gnome-keyring gnutls gpm gstreamer gtk iconv ipv6 java jpeg lcms libnotify mad mikmod mmap mmx mmxext mng modules moznopango mp3 mp4 mpeg mudflap nautilus ncurses nforce2 nfs nls nptl nptlonly nsplugin nvidia odbc offensive ogg opengl openmp pam pango pcre pdf perl pidgin png policykit ppds pppd python python3 qt3support qt4 readline reflection reiserfs rtc samba sdl session spell spl sqlite sse ssl startup-notification svg sysfs tcpd threads thunderbird tiff truetype unicode usb v4l v4l2 vorbis x264 x86 xcb xml xorg xulrunner xv xvid xvmc zlib" ALSA_CARDS="intel8x0 intel8x0m mpu401 usb-audio virmidi" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="canon ptp2" ELIBC="glibc" INPUT_DEVICES="evdev joystick mouse wacom" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nouveau nvidia nv vesa v4l vga" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS


Tried it using no input devices at all already - to no avail. Mouse will work, but scrollwheel is the plague.

Any pointers?

EDITH See last post. Solved by using the Option "ButtonMapping" "1 2 3 7 8 ..." in the corresponding InputDevice Section.
_________________
0mFg, G3nt00 r0X0r$ T3h B1g!1111 ;)

Use sane CFLAGS! If for no other reason, do it for the lulz!


Last edited by red-wolf76 on Sun Jun 06, 2010 12:30 am; edited 2 times in total
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Thu May 06, 2010 6:32 pm    Post subject: Reply with quote

red-wolf76,

What version of Xorg do you have ?
Look at the top of /var/log/Xorg.0.log as what you need to do changes at version 1.8.0.

Are you deliberately not using hal?
At least, its not in your USE flags.

Code:
Section "InputDevice"
    Identifier     "Mouse0"
    Driver      "evdev"
    Option         "CorePointer"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/input/mice"
This is confused.
evdev uses /dev/input/eventX nodes for its input events, not /dev/input/mice ... thats for the old kernel and Xorg driver.

You have
Code:
     Option         "AutoAddDevices"
    Option         "AutoEnableDevices"
in which case all your Section "InputDevice" sections are ignored but that also needs hald running and Xorg built with the hal USE flag
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
red-wolf76
l33t
l33t


Joined: 13 Apr 2005
Posts: 714
Location: Rhein-Main Area

PostPosted: Fri May 07, 2010 6:14 pm    Post subject: Reply with quote

Hi Neddy, thanks for helping.

My xorg.conf is a dried old remnant. :) I deliberately have eliminated hal from my make.conf, as it is being merged into udev. It is still installed - and running currently - until it can be safely assumed that everything that used it was turned to udev. Call it backwards compatibility paranoia... 8)

Here's my versions:
emerge -pv udev hal xorg-server:
These are the packages that would be merged, in order:
[ebuild   R   ] sys-fs/udev-151-r4  USE="extras -devfs-compat -old-hd-rules (-selinux) -test" 0 kB
[ebuild   R   ] sys-apps/hal-0.5.14-r2  USE="X acpi consolekit crypt policykit -apm -debug -dell -disk-partition -doc -laptop (-selinux)" 0 kB
[ebuild   R   ] x11-base/xorg-server-1.8.0  USE="ipv6 kdrive nptl udev xorg -dmx -doc -hal -minimal -static-libs -tslib" 0 kB

I suspected that having AutoAddDevices and AutoEnableDevices options would trample on sections, but how on earth am I supposed to correct stuff if things go wrong (as in my case with the mouse)? Is it really "all or nothing"? As my keyboard was working, I'm quite comfy with not having a section for it, but it's evident that the mouse still needs work.

Do I have to fiddle with udev somewhere?
_________________
0mFg, G3nt00 r0X0r$ T3h B1g!1111 ;)

Use sane CFLAGS! If for no other reason, do it for the lulz!
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Fri May 07, 2010 8:33 pm    Post subject: Reply with quote

red-wolf76,

Ahhhh. xorg-1.8. with udev and without hal.

You now have /etc/X11/xorg.conf.d/* which contains the default configurations for Xorg and an /etc/X11/xorg.conf that overrides the defaults.

Some of the section names have changed. To customise input devices, copy the section of interest from /etc/X11/xorg.conf.d/10-evdev.conf, to xorg.conf, change the identifier, then the options are pretty much the same as xorg prior to hal.

The man page has been updated too - see man xorg.conf
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
red-wolf76
l33t
l33t


Joined: 13 Apr 2005
Posts: 714
Location: Rhein-Main Area

PostPosted: Fri May 07, 2010 10:20 pm    Post subject: Reply with quote

Ok, I've looked into the man page and copied some of the stuff from /etc/X11/xorg.conf.d/05-keyboard.conf and /etc/X11/xorg.conf.d/10-evdev.conf over to xorg.conf... It now looks like this:
/etc/X11/xorg.conf (with comments):
Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "german keyboard"  "CoreKeyboard"
    InputDevice    "Mouse0"     "CorePointer"
    InputDevice    "Mouse1"     "SendCoreEvents"
#    InputDevice    "stylus"     "SendCoreEvents"
#    InputDevice    "cursor"     "SendCoreEvents"
    Option         "Xinerama" "false"
    Option      "IgnoreABI"
EndSection

#Section "Files"
#    ModulePath      "/usr/lib/xorg/modules/extensions/nvidia"
#    ModulePath      "/usr/lib/xorg/modules/drivers"
#    ModulePath      "/usr/lib/xorg/modules"
#    RgbPath         "/usr/lib/X11/rgb"
#EndSection

#Section "Module"
#    Load           "dbe"
#    Load           "extmod"
##    Load           "type1"
##    Load           "freetype"
#    Load           "glx"
#EndSection

#Section "ServerFlags"
#    Option         "AutoAddDevices"
#    Option         "AutoEnableDevices"
#    Option         "AllowEmptyInput"
#EndSection

Section "InputDevice"
        Identifier "Mouse0"
        Driver "evdev"
#        MatchIsPointer "on"
#        MatchDevicePath "/dev/input/event*"
        Option "AutoServerLayout"
        Option "SendCoreEvents"
        Option "Protocol" "auto"
        Option "Resolution" "1200"
        Option "Buttons" "8"
        Option "ZAxisMapping" "7 8"
        Option "Emulate3Buttons" "false"
EndSection

Section "InputDevice"
        Identifier "Mouse1"
        Driver "evdev"
#        MatchIsPointer "on"
#        MatchDevicePath "/dev/input/event*"
        Option "AutoServerLayout"
        Option "SendCoreEvents"
        Option "Protocol" "auto"
        Option "Resolution" "1200"
        Option "Buttons" "5"
        Option "ZAxisMapping" "4 5"
        Option "Emulate3Buttons" "false"
EndSection

Section "InputDevice"
        Identifier "german keyboard"
        Driver "evdev"
#        MatchIsKeyboard "on"
#        MatchDevicePath "/dev/input/event*"
        Option "AutoServerLayout"
        Option "SendCoreEvents"
        Option "xkbmodel" "evdev"
        Option "xkblayout" "de"
        Option "xkbvariant" "deadgraveacute"
        Option "xkbrules" "base"
EndSection

#Section "InputClass"
#        Identifier "evdev tablet catchall"
#        MatchIsTablet "on"
#        MatchDevicePath "/dev/input/event*"
#        Driver "evdev"
#EndSection

#Section "InputDevice"
#     Driver        "hid-wacom"
#     Identifier    "stylus"
#     Option        "Device"       "/dev/input/wacom-bamboo-one"
#     Option        "Type"         "stylus"
#     Option        "USB"          "on"                 # USB ONLY
#     Option        "Mode"         "Absolute"           # other option: "Relative"
#     Option        "Vendor"       "WACOM"
#     Option        "tilt"         "on"  # add this if your tablet supports tilt
#     Option        "Threshold"    "5"   # the official linuxwacom howto advises this line
#EndSection

#Section "InputDevice"
#     Driver        "hid-wacom"
#     Identifier    "cursor"
#     Option        "Device"       "/dev/input/wacom-bamboo-one"
#     Option        "Type"         "cursor"
#     Option        "USB"          "on"                  # USB ONLY
#     Option        "Mode"         "Absolute"            # other option: "Absolute"
#     Option        "Vendor"       "WACOM"
#EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "LG"
    ModelName      "FLATRON L2000CE"
    HorizSync       28.0 - 83.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
    ModeLine "1400x1050" 121.75  1400 1488 1632 1864  1050 1053 1057 1089 +hsync +vsync
EndSection

Section "Device"
    Identifier "Videocard0"
    Driver "nvidia"
    VendorName "NVIDIA Corporation"
    BoardName "GeForce 7600 GS"
#    Option "ExactModeTimingsDVI" "true"
#    Option    "NvAGP" "1"
    Option "Coolbits" "true"
    Option "RenderAccel" "true"
#    Option "DisableGLXRootClipping" "true"
    Option "AllowGLXWithComposite" "true"
    Option "NoPowerConnectorCheck" "true"
    Option "Backingstore" "true"
    Option "Triplebuffer" "true"
    Option "AddARGBGLXVisuals" "true"
    Option "NoLogo" "true"
#    Option "UseEDID" "true"
    Option "FlatPanelProperties" "Scaling = native"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Videocard0"
    Monitor        "Monitor0"
    DefaultDepth    24
#    Option         "MetaModes" "1400x1050 1280x1024 1024x768 640x480"
    SubSection     "Display"
        Depth       24
   Virtual     1400 1050
#        Modes      "1400x1050"
    EndSubSection
EndSection

Section "Extensions"
    Option      "Composite" "Enable"
#    Option      "RENDER"    "Enable"
EndSection


Problem persists, however... I noted a difference between the sections "InputDevice" and "InputClass" in the man page. Looks like the latter is more general and the former more specific... But I'm unsure about the device path option and obviously, I'm still doing something wrong here, as shows the log:

/var/log/Xorg.0.log:
[187069.866] (II) config/udev: Adding input device Logitech USB-PS/2 Optical Mouse (/dev/input/event3)
[187069.866] (**) Logitech USB-PS/2 Optical Mouse: Applying InputClass "evdev pointer catchall"
[187069.866] (**) Logitech USB-PS/2 Optical Mouse: always reports core events
[187069.866] (**) Logitech USB-PS/2 Optical Mouse: Device: "/dev/input/event3"
[187069.866] (II) Logitech USB-PS/2 Optical Mouse: Found 3 mouse buttons
[187069.866] (II) Logitech USB-PS/2 Optical Mouse: Found scroll wheel(s)
[187069.866] (II) Logitech USB-PS/2 Optical Mouse: Found relative axes
[187069.866] (II) Logitech USB-PS/2 Optical Mouse: Found x and y relative axes
[187069.866] (II) Logitech USB-PS/2 Optical Mouse: Configuring as mouse
[187069.866] (**) Logitech USB-PS/2 Optical Mouse: YAxisMapping: buttons 4 and 5
[187069.866] (**) Logitech USB-PS/2 Optical Mouse: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[187069.866] (II) XINPUT: Adding extended input device "Logitech USB-PS/2 Optical Mouse" (type: MOUSE)
[187069.867] (**) Logitech USB-PS/2 Optical Mouse: (accel) keeping acceleration scheme 1
[187069.867] (**) Logitech USB-PS/2 Optical Mouse: (accel) acceleration profile 0
[187069.867] (**) Logitech USB-PS/2 Optical Mouse: (accel) acceleration factor: 2.000
[187069.867] (**) Logitech USB-PS/2 Optical Mouse: (accel) acceleration threshold: 4
[187069.867] (II) Logitech USB-PS/2 Optical Mouse: initialized for relative axes.
[187069.867] (II) config/udev: Adding input device Logitech USB-PS/2 Optical Mouse (/dev/input/mouse0)
[187069.867] (EE) No input driver/identifier specified (ignoring)
[187069.868] (II) config/udev: Adding input device Logitech USB Receiver (/dev/input/event4)
[187069.868] (**) Logitech USB Receiver: Applying InputClass "german keyboard"
[187069.868] (**) Logitech USB Receiver: Applying InputClass "evdev keyboard catchall"
[187069.868] (**) Logitech USB Receiver: always reports core events
[187069.868] (**) Logitech USB Receiver: Device: "/dev/input/event4"
[187069.868] (II) Logitech USB Receiver: Found keys
[187069.868] (II) Logitech USB Receiver: Configuring as keyboard
[187069.868] (II) XINPUT: Adding extended input device "Logitech USB Receiver" (type: KEYBOARD)
[187069.868] (**) Option "xkb_rules" "evdev"
[187069.868] (**) Option "xkb_model" "evdev"
[187069.868] (**) Option "xkb_layout" "de"
[187069.868] (**) Option "xkb_variant" "deadgraveacute"
[187069.869] (II) config/udev: Adding input device Logitech USB Receiver (/dev/input/event5)
[187069.869] (**) Logitech USB Receiver: Applying InputClass "german keyboard"
[187069.869] (**) Logitech USB Receiver: Applying InputClass "evdev pointer catchall"
[187069.869] (**) Logitech USB Receiver: Applying InputClass "evdev keyboard catchall"
[187069.870] (**) Logitech USB Receiver: always reports core events
[187069.870] (**) Logitech USB Receiver: Device: "/dev/input/event5"
[187069.870] (II) Logitech USB Receiver: Found 12 mouse buttons
[187069.870] (II) Logitech USB Receiver: Found scroll wheel(s)
[187069.870] (II) Logitech USB Receiver: Found relative axes
[187069.870] (II) Logitech USB Receiver: Found x and y relative axes
[187069.870] (II) Logitech USB Receiver: Found absolute axes
[187069.870] (II) Logitech USB Receiver: Found keys
[187069.870] (II) Logitech USB Receiver: Configuring as mouse
[187069.870] (II) Logitech USB Receiver: Configuring as keyboard
[187069.870] (**) Logitech USB Receiver: YAxisMapping: buttons 4 and 5
[187069.870] (**) Logitech USB Receiver: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[187069.870] (II) XINPUT: Adding extended input device "Logitech USB Receiver" (type: KEYBOARD)
[187069.870] (**) Option "xkb_rules" "evdev"
[187069.870] (**) Option "xkb_model" "evdev"
[187069.870] (**) Option "xkb_layout" "de"
[187069.870] (**) Option "xkb_variant" "deadgraveacute"
[187069.870] (**) Logitech USB Receiver: (accel) keeping acceleration scheme 1
[187069.870] (**) Logitech USB Receiver: (accel) acceleration profile 0
[187069.870] (**) Logitech USB Receiver: (accel) acceleration factor: 2.000
[187069.871] (**) Logitech USB Receiver: (accel) acceleration threshold: 4
[187069.871] (II) Logitech USB Receiver: initialized for relative axes.
[187069.871] (WW) Logitech USB Receiver: ignoring absolute axes.
[187069.871] (II) config/udev: Adding input device Logitech USB Receiver (/dev/input/mouse1)
[187069.871] (**) Logitech USB Receiver: Applying InputClass "german keyboard"
[187069.871] (**) Logitech USB Receiver: always reports core events
[187069.871] (**) Logitech USB Receiver: Device: "/dev/input/mouse1"
[187069.871] (EE) ioctl EVIOCGNAME failed: Inappropriate ioctl for device
[187069.871] (II) UnloadModule: "evdev"
[187069.871] (EE) PreInit returned NULL for "Logitech USB Receiver"
[187069.876] (II) config/udev: Adding input device AT Translated Set 2 keyboard (/dev/input/event1)
[187069.877] (**) AT Translated Set 2 keyboard: Applying InputClass "german keyboard"
[187069.877] (**) AT Translated Set 2 keyboard: Applying InputClass "evdev keyboard catchall"
[187069.877] (**) AT Translated Set 2 keyboard: always reports core events
[187069.877] (**) AT Translated Set 2 keyboard: Device: "/dev/input/event1"
[187069.877] (II) AT Translated Set 2 keyboard: Found keys
[187069.877] (II) AT Translated Set 2 keyboard: Configuring as keyboard
[187069.877] (II) XINPUT: Adding extended input device "AT Translated Set 2 keyboard" (type: KEYBOARD)
[187069.877] (**) Option "xkb_rules" "evdev"
[187069.877] (**) Option "xkb_model" "evdev"
[187069.877] (**) Option "xkb_layout" "de"
[187069.877] (**) Option "xkb_variant" "deadgraveacute"
[187069.878] (II) config/udev: Adding input device PC Speaker (/dev/input/event0)
[187069.878] (EE) No input driver/identifier specified (ignoring)

_________________
0mFg, G3nt00 r0X0r$ T3h B1g!1111 ;)

Use sane CFLAGS! If for no other reason, do it for the lulz!
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7470

PostPosted: Fri May 07, 2010 10:28 pm    Post subject: Reply with quote

to quote someone that might know the answer....

bah, look at what this wise guy said there : https://forums.gentoo.org/viewtopic-p-6269843.html#6269843

to pray the wise guy it's there: https://forums.gentoo.org/viewtopic-t-819042-highlight-.html
Back to top
View user's profile Send private message
red-wolf76
l33t
l33t


Joined: 13 Apr 2005
Posts: 714
Location: Rhein-Main Area

PostPosted: Fri May 07, 2010 10:49 pm    Post subject: Reply with quote

There is a difference between Section "InputDevice" and Section "InputClass". They are not equivalent, as per the man page...

Code:
The section names are:
(...)
           InputDevice    Input device description
           InputClass     Input class description
(...)
       The  following obsolete section names are still recognised for compati‐
       bility purposes.  In new config files, the InputDevice  section  should
       be used instead.
(...)

_________________
0mFg, G3nt00 r0X0r$ T3h B1g!1111 ;)

Use sane CFLAGS! If for no other reason, do it for the lulz!
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7470

PostPosted: Sat May 08, 2010 12:30 am    Post subject: Reply with quote

well, i was having trouble to let xorg understand my change within xorg.conf.

after removing any inputdevice section from xorg.conf, xorg was doing as previously: doing what he want to do with my keyboard and mouse.

but after modifying InputClass section from xorg.conf.d this time: xorg start doing some default mouse & keyboard and then switch to option he found in xorg.conf.d directory (in my case, switch keyboard to fr)

Code:

cat /etc/X11/xorg.conf | grep -i Input
# Uncomment this to disable dynamically modifying the input device
head /etc/X11/xorg.conf
# **********************************************************************
# Server flags section.  This contains various server-wide Options.
# **********************************************************************
# mitsu H: 30.0-96 V: 50.0-1620
# iiyama H: 30.0-132 V: 50.0-200

Section "ServerLayout"
    Identifier     "X.org Configured"
    Screen      0  "Screen0" 0 0
EndSection

ls /etc/X11/xorg.conf.d/
10-evdev.conf  97-evdev.conf

cat /etc/X11/xorg.conf.d/97-evdev.conf
Section "InputClass"
   Identifier "mouse-all"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
        Driver "evdev"
        Option "AutoServerLayout" "on"
EndSection

Section "InputClass"
        Identifier "keyboard-all"
        MatchIsKeyboard "on"
        MatchDevicePath "/dev/input/event*"
        Driver "evdev"
        Option "XkbLayout" "fr"
        Option "XkbRules"  "xorg"
        Option "XkbModel"  "pc105"
        Option "AutoServerLayout" "on"
EndSection



why? not sure, my best guess is that like my xorg.log show me, when starting udev/hal/xorg (pick the name of the dog you wish to kill) configure devices in strange manner (my keyboard is detect as a keyboard, then as mouse) and if you specify an option a keyboard could handle, but not a mouse, xorg fail to setup the keyboard as i was wishing.
Next to that, he found again the keyboard (maybe some other options of the keyboard as that device have many option in my case) and default to a "default" keyboard layout because he will ignore the 1st inputSection as it as already fail 1 time = options ignore and xorg use a default schem to ignit my keyboard.
So: always end with a working keyboard, but the fr option was always drop.
but after this faulty starting, the keyboard is init and work, and then xorg apply the more target inputclass options and this time he won't fail because he will not try to apply them when detecting the device, but to an already detect (and well identified) keyboard.

and as i see in your xorg.log, you seems to have the same problem:
detect: USB Receiver set as keyboard
detect: USB Receiver set as a mouse
error setting a parameter : (EE) ioctl EVIOCGNAME failed: Inappropriate ioctl for device
unloading module: (II) UnloadModule: "evdev"
and again, confirming your USB receiver (and options) will be dropped: (EE) PreInit returned NULL for "Logitech USB Receiver"

As i said, i don't really know why xorg/hal/udev do that, but this was best explain i could think of (and how i pass over my problem).

And so, passing options to inputclass instead of inputdevice was my solve (as neddy show in that thread, seems not only for me)
Back to top
View user's profile Send private message
red-wolf76
l33t
l33t


Joined: 13 Apr 2005
Posts: 714
Location: Rhein-Main Area

PostPosted: Sun May 09, 2010 12:01 pm    Post subject: Reply with quote

Ah, I see now what you meant...

Trouble is, my Logitech USB Receiver is supposed to (and does) work both as a mouse and a keyboard. I guess it should be possible to develop an input class that specifically adresses this, but so far I haven't found it.

I'll keep doctoring and will mark this solved once I've fixed it.
_________________
0mFg, G3nt00 r0X0r$ T3h B1g!1111 ;)

Use sane CFLAGS! If for no other reason, do it for the lulz!
Back to top
View user's profile Send private message
red-wolf76
l33t
l33t


Joined: 13 Apr 2005
Posts: 714
Location: Rhein-Main Area

PostPosted: Sat Jun 05, 2010 9:09 pm    Post subject: Reply with quote

Ho-hum... still no luck. I tried specifically limiting the Buttons, but all in vain. Xorg insist on not just using the info provided in xorg.conf, but also the fallback-stuff in the xorg.conf.d. As if there was no precedence whatsoever or if there is a precedence it's either misleadingly referred to in the manuals or ignored somehow.

This setting up needs a more thorough HOWTO. At present the documentation is too abstract to actually help.
_________________
0mFg, G3nt00 r0X0r$ T3h B1g!1111 ;)

Use sane CFLAGS! If for no other reason, do it for the lulz!
Back to top
View user's profile Send private message
VoidMage
Watchman
Watchman


Joined: 14 Oct 2006
Posts: 6196

PostPosted: Sat Jun 05, 2010 9:31 pm    Post subject: Reply with quote

As I noted few times already, 'Option "XkbRules" "xorg"' is both
invalid and redundant for evdev driver.

Also a minor note: no ZAxisMapping for evdev driver, it's
YAxisMapping

Try using 'xinput test' (or 'xinput test-xi2' or 'xev') on your mouse, to see if the mapping is correct.
Back to top
View user's profile Send private message
red-wolf76
l33t
l33t


Joined: 13 Apr 2005
Posts: 714
Location: Rhein-Main Area

PostPosted: Sat Jun 05, 2010 10:06 pm    Post subject: Reply with quote

VoidMage wrote:
As I noted few times already, 'Option "XkbRules" "xorg"' is both
invalid and redundant for evdev driver.
Yes, well... If I run into trouble with my keyboard, I will keep that in mind. As for now, my trouble concerns the mouse setup, for which I am not only using the MX900 that came with the diNovo set, but a USB cabled Pilot Optical. Or am I to think that having invalid/redundant info in a whole different device class section confuses the driver so much it borks up the scroll wheel?!
Quote:
Also a minor note: no ZAxisMapping for evdev driver, it's
YAxisMapping
Yes, I have tried both, with the identical result of FAIL. :-(
Quote:
Try using 'xinput test' (or 'xinput test-xi2' or 'xev') on your mouse, to see if the mapping is correct.
Ok, I get the following info:

xinput list:
user@hostname ~ $ xinput list
⎡ Virtual core pointer                       id=2   [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                 id=4   [slave  pointer  (2)]
⎜   ↳ Logitech USB-PS/2 Optical Mouse            id=7   [slave  pointer  (2)]
⎣ Virtual core keyboard                      id=3   [master keyboard (2)]
    ↳ Virtual core XTEST keyboard                id=5   [slave  keyboard (3)]
    ↳ Logitech diNovo de keyboard                id=6   [slave  keyboard (3)]

xinput get-button-map:
user@hostname ~ $ xinput get-button-map "Logitech USB-PS/2 Optical Mouse"
1 2 3 4 5 6 7
This is already b*ll*cks! The mouse only has five buttons.

EDITH says: the mapping can be changed to
xinput set-button-map:
user@hostname ~ $ xinput set-button-map "Logitech USB-PS/2 Optical Mouse" 1 2 3 7 8
and it'll work for the Optical Mouse. The MX900 has (if I can count correctly) 10 Buttons. So I'll try setting that up next.
_________________
0mFg, G3nt00 r0X0r$ T3h B1g!1111 ;)

Use sane CFLAGS! If for no other reason, do it for the lulz!
Back to top
View user's profile Send private message
VoidMage
Watchman
Watchman


Joined: 14 Oct 2006
Posts: 6196

PostPosted: Sat Jun 05, 2010 11:58 pm    Post subject: Reply with quote

Well, quite obviously InputDevice and InputClass are not
equivalent, so the construct from your previous post can't work.
Back to top
View user's profile Send private message
red-wolf76
l33t
l33t


Joined: 13 Apr 2005
Posts: 714
Location: Rhein-Main Area

PostPosted: Sun Jun 06, 2010 12:27 am    Post subject: Reply with quote

VoidMage wrote:
Well, quite obviously InputDevice and InputClass are not
equivalent, so the construct from your previous post can't work.

Which previous post? Do you mean the one in which I'm saying the exact same thing that you've now "obviously" pointed out? :roll: To quote:
red-wolf76 wrote:
There is a difference between Section "InputDevice" and Section "InputClass". They are not equivalent, as per the man page...

You did realize that I have been switching back and forth between using InputDevice and InputClass and maybe was using stuff that I merely commented out so it would be easier to switch, did you?

Actually, it has now been fully solved using the following xorg.conf (minus commented lines):

/etc/X11/xorg.conf:
Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Logitech diNovo de keyboard" "CoreKeyboard"
    InputDevice    "Logitech USB-PS/2 Optical Mouse" "CorePointer"
    InputDevice    "Logitech MX 900" "SendCoreEvents"
   Option      "IgnoreABI"
EndSection

Section "ServerFlags"
    Option         "Xinerama" "false"
    Option         "AutoAddDevices" "false"
    Option         "AutoEnableDevices" "true"
    Option         "AllowEmptyInput"
EndSection

Section "InputDevice"
        Identifier "Logitech USB-PS/2 Optical Mouse"
        Driver "evdev"
        Option "Device" "/dev/input/event3"
        Option "SendCoreEvents" "true"
        Option "Protocol" "event"
        Option "Resolution" "1200"
        Option "ButtonMapping" "1 2 3 7 8"
        Option "EmulateWheel" "false"
EndSection

Section "InputDevice"
        Identifier "Logitech diNovo de keyboard"
        Driver "evdev"
        Option "Device" "/dev/input/event4"
        Option "AutoServerLayout"
        Option "SendCoreEvents"
        Option "xkbmodel" "evdev"
        Option "xkblayout" "de"
        Option "xkbvariant" "deadgraveacute"
        Option "xkbrules" "base"
EndSection

Section "InputDevice"
        Identifier "Logitech MX900"
        Driver "evdev"
        Option "Device" "/dev/input/event5"
        Option "SendCoreEvents"
        Option "Protocol" "event"
        Option "Resolution" "1200"
        Option "Buttons" "10"
        Option "ButtonMapping" "1 2 3 7 8 4 5 6 9 10"
        Option "EmulateWheel" "false"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "LG"
    ModelName      "FLATRON L2000CE"
    HorizSync       28.0 - 83.0
    VertRefresh     56.0 - 75.0
    Option         "DPMS"
    ModeLine "1400x1050" 121.75  1400 1488 1632 1864  1050 1053 1057 1089 +hsync +vsync
EndSection

Section "Device"
    Identifier "Videocard0"
    Driver "nvidia"
    VendorName "NVIDIA Corporation"
    BoardName "GeForce 7600 GS"
    Option "Coolbits" "true"
    Option "RenderAccel" "true"
    Option "AllowGLXWithComposite" "true"
    Option "NoPowerConnectorCheck" "true"
    Option "Backingstore" "true"
    Option "Triplebuffer" "true"
    Option "AddARGBGLXVisuals" "true"
    Option "NoLogo" "true"
    Option "FlatPanelProperties" "Scaling = native"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Videocard0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
   Virtual     1400 1050
    EndSubSection
EndSection

Section "Extensions"
    Option      "Composite" "Enable"
EndSection


Thanks everyone for chipping in and helping.
_________________
0mFg, G3nt00 r0X0r$ T3h B1g!1111 ;)

Use sane CFLAGS! If for no other reason, do it for the lulz!
Back to top
View user's profile Send private message
VoidMage
Watchman
Watchman


Joined: 14 Oct 2006
Posts: 6196

PostPosted: Sun Jun 06, 2010 1:53 am    Post subject: Reply with quote

That's a rather ugly way of solving it - even if those two mouses
do have different button mapping, it could be done a bit cleaner,
especially given that a few of the lines you've put in InputDevice
section are redundant.
Back to top
View user's profile Send private message
RickyLoad
Tux's lil' helper
Tux's lil' helper


Joined: 29 Dec 2006
Posts: 148
Location: Rennes

PostPosted: Thu Aug 19, 2010 1:10 pm    Post subject: Reply with quote

Hello
Ok this post because I have the same problem with a mouse ==> Logitech MX900
By cons, since working with evdev ==> /dev/input/eventX
Why not simply "deleted" all ==> /dev/input/mice and /dev/input/mouse0 or /dev/input/mouse1
In this way, at the launch, only see the evdev devices ==> /dev/input/eventX
So no more problem ......
Thank you for giving me your opinion on this
@ Head
Back to top
View user's profile Send private message
P.Kosunen
Guru
Guru


Joined: 21 Nov 2005
Posts: 309
Location: Finland

PostPosted: Sat Jan 15, 2011 12:25 pm    Post subject: Reply with quote

krinn wrote:
error setting a parameter : (EE) ioctl EVIOCGNAME failed: Inappropriate ioctl for device


xorg.conf:
Code:

Section "InputClass"
     Identifier      "Ignore Mouse Alias"
     MatchDevicePath "/dev/input/mouse0"
     Option          "Ignore" "true"
EndSection


This get error away from Xorg.0.log.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum