View Full Version : btnx: Send keyboard and mouse combination events with mouse buttons
po0f
January 25th, 2008, 06:50 PM
daou,
Don't know if I've said thank you for such a great program yet, so if I haven't: THANK YOU!
(Now that sucking up is complete...) ;)
I have a feature request, feel free to shoot me down if you want: would it be possible to eventually get "profiles" integrated into btnx-config?
I have one configuration that I use solely for desktop use (lots of desktop switching and window manipulation commands mapped to the mouse), and one for gaming (*cough*WoW*cough*). As is, I have two separate config files, and just symlink the one I want to use to `/etc/btnx/btnx_config` and restart btnx when I switch "tasks".
Not too much of a hassle, but a simple menu to easier facilitate this would make me even happier. (Not much of a programmer here, but it doesn't sound like it would be /too/ hard to implement...)
Thanks in advance, whichever way you decide. :)
(And sorry if this has already been requested/denied.)
Gigamo
January 25th, 2008, 07:17 PM
It seems you have not configured the mouse buttons to do anything. To configure buttons, select a key from the "Keycode" combobox/entry and set any (optional) modifier keys in the "Modifier #" comboboxes. For example, if button 4 is a thumb button and you want to use firefox back with it, do this:
Keycode: KEY_LEFT
Modifier 1: KEY_LEFTALT
Then restart btnx. By the way, you should name your buttons in a more intuitive way... like "Thumb button up" or similar so you can easily know which button you are editing.
Another example (for moving windows while holding a button over them):
Keycode: BTN_LEFT
Modifier 1: KEY_LEFTALT
If a Keycode starts with KEY_ it is a keyboard button. If it starts with BTN_ it is a mouse button. So the firefox example does a Alt+Left arrow combination. The second example does a Alt+Left mouse button combination.
EDIT: blazoner posted some useful key combos you can use: http://ubuntuforums.org/showpost.php?p=3812017&postcount=550
Wow, thanks. Your program just made this mouse even more useful on Ubuntu than on Windows with proprietary software. :D
blazoner
January 26th, 2008, 05:45 AM
Just an update:
I have twice sent emails to the author of revoco, asking about adding a "hybrid" mode, with switching between "auto" (speed sensitive) and "free" modes.
In theory, it should work like "manual", with a definable click between "auto" mode and "free" mode.
Unfortunately, I have yet to get a response from the author, and it looks as if little, if any, work is being done to maintain the sight.
I will let you all know when/if I get a response.
daou
January 27th, 2008, 05:04 AM
daou,
Don't know if I've said thank you for such a great program yet, so if I haven't: THANK YOU!
(Now that sucking up is complete...) ;)
I have a feature request, feel free to shoot me down if you want: would it be possible to eventually get "profiles" integrated into btnx-config?
I have one configuration that I use solely for desktop use (lots of desktop switching and window manipulation commands mapped to the mouse), and one for gaming (*cough*WoW*cough*). As is, I have two separate config files, and just symlink the one I want to use to `/etc/btnx/btnx_config` and restart btnx when I switch "tasks".
Not too much of a hassle, but a simple menu to easier facilitate this would make me even happier. (Not much of a programmer here, but it doesn't sound like it would be /too/ hard to implement...)
Thanks in advance, whichever way you decide. :)
(And sorry if this has already been requested/denied.)
Most of the functionality already exists for this. You can make multiple configurations and switch between them with a mouse button. You would need to dedicate a mouse button for this, however.
Configurations with different names can be started directly with btnx by calling "sudo btnx -b -c ConfigName" or via the init script with "sudo /etc/init.d/btnx start ConfigName". Note that you need to be root to do this, which makes automating it a bit difficult.
However, I started planning a btnx panel applet which would display the current configuration and allow the user to switch configurations with a menu on the applet. I still haven't decided whether I will make this. Possibly later, after I integrate btnx and btnx-config into a single package.
daou
January 27th, 2008, 05:09 AM
Just an update:
I have twice sent emails to the author of revoco, asking about adding a "hybrid" mode, with switching between "auto" (speed sensitive) and "free" modes.
In theory, it should work like "manual", with a definable click between "auto" mode and "free" mode.
Unfortunately, I have yet to get a response from the author, and it looks as if little, if any, work is being done to maintain the sight.
I will let you all know when/if I get a response.
This could be done with btnx, instead of bundling it with revoco. I'm not sure if it's even possible to do it only with revoco because revoco takes advantage of the mouse's hardware properties and doesn't add any of its own functionality.
Perhaps something to put on my TODO list. However, there are a bunch of other things to get done for btnx before I can work on the feature.
daou
January 27th, 2008, 05:13 AM
Is anyone using btnx successfully with hardy?
The button detection wizard doesn't seem to detect any of the buttons except for the scroll wheel up and down.
I'm using the latest svn with a MX Revolution
See this thread: http://ubuntuforums.org/showthread.php?t=676386
OliW suggests using btnx because someone complains about evdev being broken. According to his account info, he is running Hardy. Try asking him if there is anything special that needs to be done. (I would also appreciate it if you could post back here if you learn something important).
daou
January 27th, 2008, 05:16 AM
UPDATE 2: nope - same behaviour after making changes...
Did you check, after making the changes and booting, whether your changes were still intact in xorg.conf? For example, with Mandriva 2008, I had a lot of trouble getting btnx to work because it would autodetect and replace my xorg.conf edits (got around it by only changing a few bits, which didn't trigger an automatic replacement). Also, check your Xorg log to make sure that X is using the options you give. Sometimes it ignores things and uses other values.
blazoner
January 28th, 2008, 07:38 AM
This could be done with btnx, instead of bundling it with revoco. I'm not sure if it's even possible to do it only with revoco because revoco takes advantage of the mouse's hardware properties and doesn't add any of its own functionality.
The only problem I see with doing this directly through btnx is that you would have to dedicate a button to doing it, and it would destroy my current functionality. :(
As far as if revoco can do it, if "free" mode and "click" mode can be combined to form "manual," then revoco should be able to allow for swapping between "free" mode and "auto."
Revoco v0.4 - Change the wheel behaviour of Logitech's MX-Revolution mouse.
Usage:
revoco free free spinning mode
revoco click click-to-click mode
revoco manual[=button[,button]] manual mode change via button
revoco auto[=speed[,speed]] automatic mode change (up, down)
Prefixing the mode with 'temp-' (i.e. temp-free) switches the mode
temporarily, otherwise it becomes the default mode after power up.
Button numbers:
0 previously set button 7 wheel left tilt
3 middle (wheel button) 8 wheel right tilt
4 rear thumb button 9 thumb wheel forward
5 front thumb button 11 thumb wheel backward
6 find button 13 thumb wheel pressed
Gigamo
January 28th, 2008, 07:53 AM
First of all, another thank you for this great program. I have a very MINOR issue however:
Everytime after I reboot, I have to restart btnx (I just go sudo btnx-config -> Restart btnx button) just once to get all my MX Revolution functions back (revoco in particular). Don't know if this is a bug or not, just a minor issue that I don't really mind.
daou
January 28th, 2008, 08:29 AM
The only problem I see with doing this directly through btnx is that you would have to dedicate a button to doing it, and it would destroy my current functionality. :(
As far as if revoco can do it, if "free" mode and "click" mode can be combined to form "manual," then revoco should be able to allow for swapping between "free" mode and "auto."
If you look at the code for revoco, you'll notice it is sending raw data over USB to the MX Revolution. All the options to revoco just change what data it sends to the MX Revo to set its wheel in a different state. These states are all predetermined by the MX hardware. The problem is, the MX Revolution doesn't have a hardware option for manual free->auto functionality. It does have an option for a manual free->click though, and this is what revoco is telling the mouse to do.
daou
January 28th, 2008, 08:31 AM
First of all, another thank you for this great program. I have a very MINOR issue however:
Everytime after I reboot, I have to restart btnx (I just go sudo btnx-config -> Restart btnx button) just once to get all my MX Revolution functions back (revoco in particular). Don't know if this is a bug or not, just a minor issue that I don't really mind.
Do you have the "enable hotplugging" checkbox checked in the Advanced tab? Are you only referring to the revoco functions or all the keycombos you have defined as well?
EDIT: if you aren't on a laptop (the mouse is always plugged in) you can also try disabling the hotplugging if it's enabled. The init script installed by btnx should already launch btnx during boot.
Gigamo
January 28th, 2008, 09:03 AM
I see btnx launching when I'm booting, that's not an issue. Everything works except revoco's automatic scroll wheel changing, and the command launching from a button. Enable hotplugging is checked, and even though I'm on a laptop, the mouse is almost always plugged in.
daou
January 28th, 2008, 09:10 AM
I see btnx launching when I'm booting, that's not an issue. Everything works except revoco's automatic scroll wheel changing, and the command launching from a button. Enable hotplugging is checked, and even though I'm on a laptop, the mouse is almost always plugged in.
It's strange that some parts work and others don't. However, the revoco issue might be solved by making the mode permanent (I chose to use temporary revoco changes in btnx). I will probably change this in a later version.
bismark
February 1st, 2008, 11:19 AM
Do you have the "enable hotplugging" checkbox checked in the Advanced tab? Are you only referring to the revoco functions or all the keycombos you have defined as well?
EDIT: if you aren't on a laptop (the mouse is always plugged in) you can also try disabling the hotplugging if it's enabled. The init script installed by btnx should already launch btnx during boot.
I have a similar issue and maybe I am mistaken in how to configure btnx for my situation.
I'm on a laptop and have 3 different "mice". 1 is the UltraNav builtin into the laptop (Lenovo Thinkpad), the 2nd is a MX500 which I use at my desk with a docking station, the 3rd is a little VX Revolution that's in my bag for on the road.
Right now if I switch locations (usually powering down between curse you ATI) and start up with or without one of the logitech mice plugged in I have to open up btnx, choose the correct config file and then restart btnx.
I had envisioned it automatically choosing the correct config file from the vendor id and product id detected (which is different). Am I mistaken in how this should work or have I just been dumb and configured it wrong?
Also second question, how should my xorg.conf look like with the UltraNav also configured? Here is what I have so far and it "seems" to work.
<....snip...>
Section "InputDevice"
Identifier "TrackPoint"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ExplorerPS/2"
Option "Emulate3Buttons" "on"
Option "Emulate3TimeOut" "50"
Option "EmulateWheel" "on"
Option "EmulateWheelTimeOut" "200"
Option "EmulateWheelButton" "2"
Option "YAxisMapping" "4 5"
Option "XAxisMapping" "6 7"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
Identifier "UsbMouse"
Driver "evdev"
Option "evBits" "+1-2"
Option "keyBits" "~272-287"
Option "relBits" "~0-2 ~6 ~8"
#Option "Buttons" "10"
#Option "ZAxisMapping" "4 5"
EndSection
Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen" 0 0
InputDevice "Generic Keyboard"
InputDevice "TrackPoint"
EndSection
blazoner
February 3rd, 2008, 11:01 AM
If you look at the code for revoco, you'll notice it is sending raw data over USB to the MX Revolution. All the options to revoco just change what data it sends to the MX Revo to set its wheel in a different state. These states are all predetermined by the MX hardware. The problem is, the MX Revolution doesn't have a hardware option for manual free->auto functionality. It does have an option for a manual free->click though, and this is what revoco is telling the mouse to do.
This is frustrating, since I'm using "Emulate3button" "yes" to allow me to activate cube rotation in Compiz. It automatically sends a button 3 event when clicking L+R mouse buttons. As it stands now, I disable wheel-click in btnx, and still get full functionality from the WM (Matacity) when clicking L+R. When I attempt to map the wheel-click with btnx, pressing L+R triggers the identical btnx-mapped action as the wheel-click, not the action I mapped to cube rotation. Additionally, I don't want to trigger a switch between scroll modes when rotating the cube.
Working this explanation out in writing, I guess most of this could be taken care of in a script that would only change scroll modes when clicked over a window, although I wouldn't know where to start. However, it still doesn't allow for keeping the wheel-click exclusively for scrolling modes, while still allowing for L+R to do their thing separately.
Any additional feedback is welcome.
dondad
February 8th, 2008, 02:51 PM
If you find this tool useful, please help others use it by translating it into another language: btnx-config @ Launchpad (http://launchpad.net/btnx-config).
Latest versions:
btnx-0.4.5 - ChangeLog (http://svn.ollisalonen.com/btnx/trunk/ChangeLog)
btnx-config-0.4.5 - ChangeLog (http://svn.ollisalonen.com/btnx-config/trunk/ChangeLog)btnx (Button Extension) is a daemon that enables rerouting of mouse button events through uinput as keyboard and other mouse button combinations. For example, you can configure an extra mouse button to send a Ctrl+Alt+Right command to switch workspaces. You can also configure buttons to execute commands. This is especially useful for mice with more buttons than Gnome or KDE can properly handle, or mice that need evdev and a 100 step howto to register button events at all.
btnx-config is GUI for detecting and configuring your mouse. You must use btnx-config with btnx. btnx integrates revoco functionality for MX Revolution users, which is editable from btnx-config.
btnx should work with almost any mouse that is configured properly.
The btnx manual is available at: http://www.ollisalonen.com/btnx/man
btnx is known to work on:
(K)Ubuntu 7.04-i386 (32-bit).
(K)Ubuntu 7.04-amd64 (64-bit)
(K)Ubuntu 7.10 (see note below)Note: Gutsy (7.10) users with an MX or VX Revolution: if you have problems with the thumb buttons, refer to the btnx manual's troubleshooting section 12.2.1 for better xorg.conf values.
When will btnx be available in the Ubuntu repositories?
I don't know. However, it has been nominated for inclusion into Hardy. If you want to make sure btnx makes it there, you can show your support at the Launchpad bug report (https://bugs.launchpad.net/ubuntu/+bug/146160).
Report bugs at Launchpad:
http://launchpad.net/btnx
http://launchpad.net/btnx-config/ SVN repositories :
btnx: http://svn.ollisalonen.com/btnx/
btnx-config: http://svn.ollisalonen.com/btnx-config/
-------------------------------------------------------------------------------------------------
Installation:
Note: Ubuntu 7.04 users can download and install with .debs. Get them from http://www.ollisalonen/btnx (Kubuntu users should compile from source).
Note: If you are upgrading your btnx from pre v.0.3.0 or btnx-config from pre v.0.2.0, you must uninstall them first.
Note: If you have used another howto to configure your mouse, try to revert as much of the changes you have done.
1. Get all the necessary dependencies. btnx-config needs libgtk2.0 and libgtk2.0-dev (version 2.10.11 or newer), libglade and libglade-dev (version 2.6.0 or newer), pkg-config (0.21 or newer), and build-essential. btnx needs build-essential.
sudo apt-get install build-essential libgtk2.0-0 libgtk2.0-dev libglade2-0 libglade2-dev pkg-config2. Install btnx
$ wget http://www.ollisalonen.com/btnx/btnx-0.4.5.tar.gz
$ tar -xvvf btnx-0.4.5.tar.gz
$ cd btnx-0.4.5
$ make
$ sudo make install3. Install btnx-config.
$ wget http://www.ollisalonen.com/btnx/btnx-config-0.4.5.tar.gz
$ tar -xvvf btnx-config-0.4.5.tar.gz
$ cd btnx-config-0.4.5
$ ./configure
$ make
$ sudo make installIf you encountered an error, there is probably a dependency problem. You can also call "./configure builddocs=no" if there was a documentation build problem, or if you don't want to install the manual.
4. You should have gotten a menu item. In GNOME, Applications->System tools->btnx. In KDE, System->btnx. Press it to launch btnx-config.
You can find all the necessary information for configuring your mouse with btnx-config in the btnx manual. Either press the "Help" button in btnx-config or refer to the online manual at http://www.ollisalonen.com/btnx/man
--------------------------------------------------------------------------------------------------
Uninstall
To uninstall btnx and btnx-config, just run
$ sudo make uninstallin the same directory as where you ran the "sudo make install" command for both programs.
--------------------------------------------------------------------------------------------------
Troubleshooting
Please refer to the troubleshooting section in the btnx manual: http://www.ollisalonen.com/btnx/man
It contains answers to frequent problems and good reference values for your xorg.conf file.
NOTE: If some of your mouse buttons send multiple events (like extra middle, right, or left clicks) then refer to the
manual's troubleshooting section on editing you xorg.conf InputSection. Follow it closely!
If your problem persists, post it on this thread.
--------------------------------------------------------------------------------------------------
Useful key combos
blazoner posted a list of some useful keyboard combinations to use with btnx. Look here (http://ubuntuforums.org/showpost.php?p=3812017&postcount=550).
--------------------------------------------------------------------------------------------------
Old btnx
The old btnx (v.0.2.14) is still available for those that want to use it. http://www.ollisalonen.com/btnx/old.html
I have btnx running in Gutsy with a Revolution mouse and it works great. I have install of Hardy at the latest alpha with all upgrades (dual boot on the same computer). I installed btnx from source per this tutorial in the Hardy install. It installed fine and runs, but after it detects the mouse and finds the two handlers, it will not detect any of the buttons. When I try, it gets to the part where you fill the bar by pressing a button, but nothing happens with any of the buttons. I modified the xorg configuration file to look just like the one in the gutsy install, but that made no difference. Any idea where I can go from here?
slughappy1
February 8th, 2008, 06:12 PM
I bought a Logitech VX Nano and am trying to get it to work. But it would appear that the program is running but NOT working. I have followed the configuration guide but nothing changes on the mouse. I am trying to make the forward and backward buttons to work. But when I click on the forward button it just acts like a right click, and when I click on the backwards button nothing happens. My current xorg.conf looks like:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ImPS/2"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSection
I tried to change it to:
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
Option "Buttons" "3"
EndSection
But when I rebooted it it just crashed my system. So I had to restore my original xorg.conf.
Any thoughts of how I can fix this problem?
Gourgi
February 8th, 2008, 06:46 PM
I have btnx running in Gutsy with a Revolution mouse and it works great. I have install of Hardy at the latest alpha with all upgrades (dual boot on the same computer). I installed btnx from source per this tutorial in the Hardy install. It installed fine and runs, but after it detects the mouse and finds the two handlers, it will not detect any of the buttons. When I try, it gets to the part where you fill the bar by pressing a button, but nothing happens with any of the buttons. I modified the xorg configuration file to look just like the one in the gutsy install, but that made no difference. Any idea where I can go from here?
i have btnx installed in ubuntu hardy alpha 4 and works fine (i firstly had to "force immidiately release" and set "repeat delay" to 200 )
my mouse's brand is Sweex , model name MI560 , more info here (http://www.sweex.com/MI560) :
i have used btnx's subversion 0.4.6 , not the stable
btnx is a great tool and this how to is absolutely great :popcorn:
dondad
February 9th, 2008, 01:19 AM
i have btnx installed in ubuntu hardy alpha 4 and works fine (i firstly had to "force immidiately release" and set "repeat delay" to 200 )
my mouse's brand is Sweex , model name MI560 , more info here (http://www.sweex.com/MI560) :
i have used btnx's subversion 0.4.6 , not the stable
btnx is a great tool and this how to is absolutely great :popcorn:
I only see 0.4.6 in btnx-config. I installed it exactly as shown in the quoted tutorial. The problem I have is getting the buttons detected in the first place. It detects the mouse, with 2 handlers, the same as it did in Gutsy, but when I try to detect the buttons, nothing happens. The program does not crash or anything and I can exit it normally, but the bar never fills after clicking the detect button menu.
daou
February 9th, 2008, 06:02 AM
I have a similar issue and maybe I am mistaken in how to configure btnx for my situation.
I'm on a laptop and have 3 different "mice". 1 is the UltraNav builtin into the laptop (Lenovo Thinkpad), the 2nd is a MX500 which I use at my desk with a docking station, the 3rd is a little VX Revolution that's in my bag for on the road.
Right now if I switch locations (usually powering down between curse you ATI) and start up with or without one of the logitech mice plugged in I have to open up btnx, choose the correct config file and then restart btnx.
I had envisioned it automatically choosing the correct config file from the vendor id and product id detected (which is different). Am I mistaken in how this should work or have I just been dumb and configured it wrong?
Also second question, how should my xorg.conf look like with the UltraNav also configured? Here is what I have so far and it "seems" to work.
<....snip...>
Section "InputDevice"
Identifier "TrackPoint"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ExplorerPS/2"
Option "Emulate3Buttons" "on"
Option "Emulate3TimeOut" "50"
Option "EmulateWheel" "on"
Option "EmulateWheelTimeOut" "200"
Option "EmulateWheelButton" "2"
Option "YAxisMapping" "4 5"
Option "XAxisMapping" "6 7"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
Identifier "UsbMouse"
Driver "evdev"
Option "evBits" "+1-2"
Option "keyBits" "~272-287"
Option "relBits" "~0-2 ~6 ~8"
#Option "Buttons" "10"
#Option "ZAxisMapping" "4 5"
EndSection
Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen" 0 0
InputDevice "Generic Keyboard"
InputDevice "TrackPoint"
EndSection
If you do not explicitly specify a config to start btnx with, it will choose the one with the highest priority. It does not do autodetection. However, for your case there might be a workaround.
You can edit the do_start() function in the btnx init script (located at /etc/init.d/btnx). Make it look something like this:
start_daemon $DAEMON -b -c config_name1
RET=$?
if [ $RET -eq 2 ]; then
log_failure_msg "start_daemon failed to start btnx with full pat
h. Trying without"
start_daemon $DAEMON -b -c config_name2
RET=$?
fi
return $RET
Replace config_name1 and config_name2 with the names of two configurations as seen in btnx-config. One contains the settings for one mouse, the other contains settings for the other mouse.
Now when btnx loads at boot, it first tries to start with the first configuration. If the mouse is not connected, btnx will fail to start. It then tries the second configuration, which should work if the other mouse is connected.
daou
February 9th, 2008, 06:08 AM
I bought a Logitech VX Nano and am trying to get it to work. But it would appear that the program is running but NOT working. I have followed the configuration guide but nothing changes on the mouse. I am trying to make the forward and backward buttons to work. But when I click on the forward button it just acts like a right click, and when I click on the backwards button nothing happens. My current xorg.conf looks like:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ImPS/2"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSectionI tried to change it to:
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
Option "Buttons" "3"
EndSectionBut when I rebooted it it just crashed my system. So I had to restore my original xorg.conf.
Any thoughts of how I can fix this problem?
Your edited xorg.conf was correct, except you edited the Identifier which probably caused the crash. So reedit the xorg.conf file, but this time, do not change the Identifier value (leave it to "Configured mouse" or whatever name is used in your InputDevice name at the ServerLayout section)
daou
February 9th, 2008, 06:11 AM
i have btnx installed in ubuntu hardy alpha 4 and works fine (i firstly had to "force immidiately release" and set "repeat delay" to 200 )
my mouse's brand is Sweex , model name MI560 , more info here (http://www.sweex.com/MI560) :
i have used btnx's subversion 0.4.6 , not the stable
btnx is a great tool and this how to is absolutely great :popcorn:
Good to hear it still works in hardy. Did you have to edit your xorg.conf at all? By the way, be careful with the SVN version. I might commit an nonworking version there, although I usually try to avoid it. But I make no commitment to keep a working version there.
daou
February 9th, 2008, 06:16 AM
I only see 0.4.6 in btnx-config. I installed it exactly as shown in the quoted tutorial. The problem I have is getting the buttons detected in the first place. It detects the mouse, with 2 handlers, the same as it did in Gutsy, but when I try to detect the buttons, nothing happens. The program does not crash or anything and I can exit it normally, but the bar never fills after clicking the detect button menu.
Could you post the edited xorg.conf? Do you still have a backup of the original hardy one so I can have a look at that as well?
I might try to get Hardy installed on one of my computers to see if something important has changed. btnx seems to work on Hardy, but with more frequent problems.
Gourgi
February 9th, 2008, 10:14 AM
Good to hear it still works in hardy. Did you have to edit your xorg.conf at all?
i edited my xorg before i even think of using btnx
here is my xorg :
##### GGT #################################
### lastly generated 6/2/2008 #############
## changelog : ############################
# added 5button mice support , this also works with btnx
# fix screen resolustion to 1280*1024@85Hz (wrong recognition as 72Hz), nvidia-glx-new
# compiz-fusion & emerald working set :D
#### /GGT #################################
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
RgbPath "/usr/X11R6/lib/X11/rgb"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
EndSection
Section "ServerFlags"
Option "Xinerama" "0"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
# GGT
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ExplorerPS/2"
Option "Buttons" "7"
Option "ButtonMapping" "1 2 3 6 7"
#Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "true"
# /GGT
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "LG F900P"
HorizSync 30.0 - 111.0
VertRefresh 50.0 - 160.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Videocard0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 6600 GT"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "0"
Option "TwinViewXineramaInfoOrder" "CRT-0"
# GGT
# Option "metamodes" "nvidia-auto-select +0+0"
Option "NoLogo" "True"
# /GGT
SubSection "Display"
Depth 24
# GGT
Modes "1280x1024" "1024x768" "800x600" "640x480"
#Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480"
# /GGT
EndSubSection
EndSection
i'm not a mouse freak , i only needed btnx to navigate back and forward through nautilus and firefox
here is also btnx configuration to do this:
# This is a btnx configuration file generated by btnx-config
Mouse
vendor_name = Sweex
product_name = 5mouse
vendor_id = 0x04f3
product_id = 0x0212
revoco_mode = 0
revoco_btn = 3
revoco_up_scroll = 5
revoco_down_scroll = 5
EndMouse
Button
name = Button1_aristero
rawcode = 0x01011000
enabled = 0
type = 0
delay = 0
force_release = 0
keycode = NONE
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Button2_deksi
rawcode = 0x01011100
enabled = 0
type = 0
delay = 0
force_release = 0
keycode = NONE
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Button3_mesaio
rawcode = 0x01011200
enabled = 0
type = 0
delay = 0
force_release = 0
keycode = NONE
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Button4_back
rawcode = 0x01011300
enabled = 1
type = 0
delay = 200
force_release = 1
keycode = KEY_LEFT
mod1 = KEY_LEFTALT
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Button5_front
rawcode = 0x01011400
enabled = 1
type = 0
delay = 200
force_release = 1
keycode = KEY_RIGHT
mod1 = KEY_LEFTALT
mod2 = NONE
mod3 = NONE
EndButton
By the way, be careful with the SVN version. I might commit an nonworking version there, although I usually try to avoid it. But I make no commitment to keep a working version there. oki doki :lolflag:
after lots of updates in hardy still no problems till now :)
I only see 0.4.6 in btnx-config. yep , i have 0.4.6 in btnx-config and btnx version is 0.4.5 (i saw it in the backuped configuration file)
i don;t know why is not working with you.
just an info though : i mapped only the buttons 4 and 5 through btnx , and these buttons only are enabled in btnx-config,the others buttons (button1, 2 and 3) are not enabled in btnx-config , so i guess they use xorg's default config.
Mushindo
February 9th, 2008, 10:32 AM
Tengo un RV revolution y estoy muy contento con tu trabajo con respecto a BTNX... gracias.
Sólo tengo un problema y es el siguiente: No se como configurar para usar un botón del ratón para cambiar de aplicación, es decir, ALT_L + TAB.
Espero que puedas ayudarme.
Nuevamente gracias.
GOOGLE TRADUCTOR
I have an RV revolution and I am very happy with your work with respect to BTNX ... Thanks.
I just have a problem and is the following: Is it possible to use a set button mouse for switching between applications, ie ALT_L + TAB.
I hope you can help me.
Again thanks.
Gourgi
February 9th, 2008, 12:09 PM
Tengo un RV revolution y estoy muy contento con tu trabajo con respecto a BTNX... gracias.
Sólo tengo un problema y es el siguiente: No se como configurar para usar un botón del ratón para cambiar de aplicación, es decir, ALT_L + TAB.
Espero que puedas ayudarme.
Nuevamente gracias.
GOOGLE TRADUCTOR
I have an RV revolution and I am very happy with your work with respect to BTNX ... Thanks.
I just have a problem and is the following: Is it possible to use a set button mouse for switching between applications, ie ALT_L + TAB.
I hope you can help me.
Again thanks.
yes you can
look here (picture attached)
dondad
February 9th, 2008, 12:43 PM
Could you post the edited xorg.conf? Do you still have a backup of the original hardy one so I can have a look at that as well?
I might try to get Hardy installed on one of my computers to see if something important has changed. btnx seems to work on Hardy, but with more frequent problems.
Here they are:
Original
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
EndSection
edited: (this is the same as the gutsy one that works [same computer, dual boot])
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ImPS/2"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSection
After the latest updates, it started crashing when I tried to detect the buttons. Just for grins, I tried taking the configuratin backup from the gutsy install and it sorta worked for a bit, but then the mouse really started acting weird, putting out continuous characters and disabling everything. I killed it then uninstalled butnx and deleted the folders. I can reinstall if anyone has something to try. This hardy install is for playing/testing, so I don't mind trying stuff if it will help debug. If it breaks the system, I can reinstall, no problem.
The way it is acting, I am wondering if the Hardy defaults take over some of the mouse buttons and is interfering with btnx. For instance, if I push the button on top of the mouse (after a normal hardy and btnx install, no changes), it opens the file search. (this is an MX Revolution mouse) I fixed that by changing the hot key for the search, but I wonder if the buttons are being intercepted by the xsystem. I don't know how to make that go away if that is the case.
slughappy1
February 9th, 2008, 05:11 PM
Ok, so I re-edited my xorg file so it looks like:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
Option "Buttons" "3"
EndSection
and my btnx-config looks like the picture I attached. But it still doesn't actually work. When I press the two front buttons on my VX Nano (forwards and backwards) don't do anything. Although when I press the forward button it no longer acts like the right button, so that's a step forward. What else can I do?
Mushindo
February 9th, 2008, 06:57 PM
yes you can
look here (picture attached)
Gracias por tu interés, pero esa configuración no soluciona mi problema.
Deseo cambiar de aplicación visual pulsando a un botón del ratón.
Al parecer la función ALT_LEFT + TAB no se realiza correctamente cuando se usan al mismo tiempo. Se tendría que usar primero ALT_LEFT y posteriormente TAB.
Un saludo a todos.
Google traslator:
Thanks for your interest, but this configuration does not solve my problem.
I want to change visibility application by pressing a button on the mouse.
Apparently the role ALT_LEFT + TAB is not performed correctly when used at the same time. It should be used first and then ALT_LEFT TAB.
A greeting to all.
bismark
February 9th, 2008, 07:03 PM
Thanks, that partially worked, I had to change theif [ $RET -eq 2 ]; then to the followingif [ $RET -ne 0 ]; then because btnx would error out with 152 if it couldn't find that mouse. btnx successfully stopped
btnx: uinput modprobed successfully.
btnx: Opening config file: /etc/btnx/btnx_config_MX500
btnx: Opened handler: /dev/input/event0
btnx: Opened handler: /dev/input/event1
btnx: Opened handler: /dev/input/event2
btnx: Opened handler: /dev/input/event3
btnx: Opened handler: /dev/input/event4
btnx: Opened handler: /dev/input/event5
btnx: Opened handler: /dev/input/event6
btnx: Opened handler: /dev/input/event7
btnx: Opened handler: /dev/input/event8
btnx: Opened handler: /dev/input/event9
btnx: Opened handler: /dev/input/event10
btnx: Opened handler: /dev/input/event11
btnx: Opened handler: /dev/input/event12
btnx: Error opening button event file descriptor: No such file or directory
152
I'm going to work on it a bit and do a bit more elegant solution envolving loop through all configs present (for those with multiple mice like me).
Also is there a way to make it start quietly without all of the "Opening Handler" messages?
daou
February 10th, 2008, 06:29 AM
Here they are:
Original
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
EndSection
edited: (this is the same as the gutsy one that works [same computer, dual boot])
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ImPS/2"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSection
After the latest updates, it started crashing when I tried to detect the buttons. Just for grins, I tried taking the configuratin backup from the gutsy install and it sorta worked for a bit, but then the mouse really started acting weird, putting out continuous characters and disabling everything. I killed it then uninstalled butnx and deleted the folders. I can reinstall if anyone has something to try. This hardy install is for playing/testing, so I don't mind trying stuff if it will help debug. If it breaks the system, I can reinstall, no problem.
The way it is acting, I am wondering if the Hardy defaults take over some of the mouse buttons and is interfering with btnx. For instance, if I push the button on top of the mouse (after a normal hardy and btnx install, no changes), it opens the file search. (this is an MX Revolution mouse) I fixed that by changing the hot key for the search, but I wonder if the buttons are being intercepted by the xsystem. I don't know how to make that go away if that is the case.
You could try setting the xorg.conf option Protocol to "auto", and if that isn't enough, try also setting Device to "/dev/psaux".
The search button on the MX Revolution is actually a "keyboard" button. This is probably why Hardy recognizes it as a search button, but it isn't a problem if remapping it under the keyboard shortcuts is enough.
daou
February 10th, 2008, 06:32 AM
Ok, so I re-edited my xorg file so it looks like:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
Option "Buttons" "3"
EndSectionand my btnx-config looks like the picture I attached. But it still doesn't actually work. When I press the two front buttons on my VX Nano (forwards and backwards) don't do anything. Although when I press the forward button it no longer acts like the right button, so that's a step forward. What else can I do?
The BTN_FORWARD and BTN_BACK aren't recognized correctly by the window manager or applications. Try using Alt+Left and Alt+Right keyboard combinations for back and forward, respectively. So for Alt+Left you would set keycode to KEY_LEFT and modifier 1 to KEY_LEFTALT.
daou
February 10th, 2008, 06:49 AM
Gracias por tu interés, pero esa configuración no soluciona mi problema.
Deseo cambiar de aplicación visual pulsando a un botón del ratón.
Al parecer la función ALT_LEFT + TAB no se realiza correctamente cuando se usan al mismo tiempo. Se tendría que usar primero ALT_LEFT y posteriormente TAB.
Un saludo a todos.
Google traslator:
Thanks for your interest, but this configuration does not solve my problem.
I want to change visibility application by pressing a button on the mouse.
Apparently the role ALT_LEFT + TAB is not performed correctly when used at the same time. It should be used first and then ALT_LEFT TAB.
A greeting to all.
Alt+Tab es un poco difícil en btnx. Puedes configurar un botón a KEY_LEFTALT y un otro botón a KEY_TAB. Entonces, mantenga pulsada el botón de KEY_LEFTALT y "click" el botón de KEY_TAB. En el futuro, tal vez es posible a utilizar uno botón para Alt+Tab. (Lo siento, porque no hablé o escribí español por cuatro años).
En Inglés:
Using Alt+Tab is difficult in btnx. You can configure one button as KEY_LEFTALT and another one as KEY_TAB. Then, hold down the key for KEY_LEFTALT and click the KEY_TAB button. In the future, it might be possible to bind one key to Alt+Tab.
daou
February 10th, 2008, 07:13 AM
Thanks, that partially worked, I had to change theif [ $RET -eq 2 ]; then to the followingif [ $RET -ne 0 ]; then because btnx would error out with 152 if it couldn't find that mouse. btnx successfully stopped
btnx: uinput modprobed successfully.
btnx: Opening config file: /etc/btnx/btnx_config_MX500
btnx: Opened handler: /dev/input/event0
btnx: Opened handler: /dev/input/event1
btnx: Opened handler: /dev/input/event2
btnx: Opened handler: /dev/input/event3
btnx: Opened handler: /dev/input/event4
btnx: Opened handler: /dev/input/event5
btnx: Opened handler: /dev/input/event6
btnx: Opened handler: /dev/input/event7
btnx: Opened handler: /dev/input/event8
btnx: Opened handler: /dev/input/event9
btnx: Opened handler: /dev/input/event10
btnx: Opened handler: /dev/input/event11
btnx: Opened handler: /dev/input/event12
btnx: Error opening button event file descriptor: No such file or directory
152
I'm going to work on it a bit and do a bit more elegant solution envolving loop through all configs present (for those with multiple mice like me).
Also is there a way to make it start quietly without all of the "Opening Handler" messages?
You can edit the source code and comment out the line that outputs the message. So add // in front of line 124 in btnx.c ("printf(OUT_PRE "Opened handler: %s\n", loc_buffer);")and recompile and install.
slughappy1
February 10th, 2008, 06:50 PM
Thank you very much, it worked
Mushindo
February 11th, 2008, 08:48 AM
Alt+Tab es un poco difícil en btnx. Puedes configurar un botón a KEY_LEFTALT y un otro botón a KEY_TAB. Entonces, mantenga pulsada el botón de KEY_LEFTALT y "click" el botón de KEY_TAB. En el futuro, tal vez es posible a utilizar uno botón para Alt+Tab. (Lo siento, porque no hablé o escribí español por cuatro años).
En Inglés:
Using Alt+Tab is difficult in btnx. You can configure one button as KEY_LEFTALT and another one as KEY_TAB. Then, hold down the key for KEY_LEFTALT and click the KEY_TAB button. In the future, it might be possible to bind one key to Alt+Tab.
Gracias por tu explicación...
Thanks
tocky
February 14th, 2008, 04:43 AM
Could someone help me set up my Logitech Mx 610 mouse. I've followed the various posts here, and googled but I can't get the mouse to work. Anyone that has the same mouse as me that got it working through Btnx?
daou
February 15th, 2008, 08:05 AM
Could someone help me set up my Logitech Mx 610 mouse. I've followed the various posts here, and googled but I can't get the mouse to work. Anyone that has the same mouse as me that got it working through Btnx?
btnx should work with most USB mice (or wireless with an USB adapter). I suggest you give it a try. The btnx manual explains its usage quite comprehensively.
I believe blazoner has an MX610 and uses btnx. He posts on this thread now and then.
manuhalo
February 16th, 2008, 11:40 AM
Allright, I've installed btnx - awesome job, really. Trouble is Xorg keeps saying that my cheap Maxxtro mouse (yeah, I know :p ) side buttons are respctively button 3 and button 2, which means that everytime I click them I get the action I chose in btmx + a context menu / middle button action. My xorg.conf now says
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ImPS/2"
Option "Emulate3Buttons" "false"
Option "Buttons" "7"
Option "ButtonMapping" "1 2 3 6 7"
Option "ZAxisMapping" "4 5"
Which is the final result of a number of changes I've tried - no remapping, 5-7-9 buttons, different zaxis mapping etc. Nothing worked so far. Any hint? At this point I would even accept a sub-optimal solution like hiding the side buttons from xorg so that I can at least send key combinations through btmx without xorg interfering.
Thanks in advance!
EDIT: solved. After reading again your manual I noticed I hadn't cchanged mouse protocol nor commented that CorePointer option, and that seems to do the trick for me. Thanks anyway :)
tocky
February 17th, 2008, 03:53 PM
btnx should work with most USB mice (or wireless with an USB adapter). I suggest you give it a try. The btnx manual explains its usage quite comprehensively.
I believe blazoner has an MX610 and uses btnx. He posts on this thread now and then.
I meant that I have tried to get my mouse working through btnx, but fail miserably every time.
milliman
February 17th, 2008, 07:54 PM
btnx is the only program that even comes close to getting my Logitech MediaPlay mouse working. It worked great under Fiesty and Gutsy, but not under Hardy. I had all of the buttons working wonderfully so it acted not only as a mouse but as a remote control with MythTV. After I rebuilt my machine from scratch with Hardy Alpha 4, I figured that it would only be a quick rebuild and configuration to get btnx working again. WRONG!
I downloaded the latest tarballs of btnx and btnx-config from the repository, compiled, and installed them per instructions. Next I started configuration via sudo btnx-config. The program detected my mouse and only a single handler, but it could not detect my mouse clicks or wheel scrolls. Since it did not detect any mouse clicks, I could not configure any of the buttons.
My xorg.conf file is identical to the sample code in the "Troubleshooting Guide." The basic mouse functions work and it is a recognized USB device. xev detects most of my clicks except the rewind and fast forward buttons. I ran lsmod and see that uinput is loaded. As far as I can recall, I have not installed any other potential conflicting programs.
Unabatedshaggie and I seem to be experiencing the same problems. Does anyone have any idea what the problem could be? I know that some people have it working with Hardy. The fact that I got this mouse working with btnx is why I kept using Ubuntu. Hopefully it will get running especially if it is a candidate program for Hardy.
daou
February 18th, 2008, 05:29 AM
btnx is the only program that even comes close to getting my Logitech MediaPlay mouse working. It worked great under Fiesty and Gutsy, but not under Hardy. I had all of the buttons working wonderfully so it acted not only as a mouse but as a remote control with MythTV. After I rebuilt my machine from scratch with Hardy Alpha 4, I figured that it would only be a quick rebuild and configuration to get btnx working again. WRONG!
I downloaded the latest tarballs of btnx and btnx-config from the repository, compiled, and installed them per instructions. Next I started configuration via sudo btnx-config. The program detected my mouse and only a single handler, but it could not detect my mouse clicks or wheel scrolls. Since it did not detect any mouse clicks, I could not configure any of the buttons.
My xorg.conf file is identical to the sample code in the "Troubleshooting Guide." The basic mouse functions work and it is a recognized USB device. xev detects most of my clicks except the rewind and fast forward buttons. I ran lsmod and see that uinput is loaded. As far as I can recall, I have not installed any other potential conflicting programs.
Unabatedshaggie and I seem to be experiencing the same problems. Does anyone have any idea what the problem could be? I know that some people have it working with Hardy. The fact that I got this mouse working with btnx is why I kept using Ubuntu. Hopefully it will get running especially if it is a candidate program for Hardy.
Did you verify that X is using the options you defined in xorg.conf, and not defaulting to other settings? You can do this by looking at the /var/log/Xorg.0.log file.
milliman
February 19th, 2008, 01:44 AM
Daou:
Thanks for your response. I think most of the xorg.conf file took but this latest version has a mind of its own. The video settings are what I specified, but the mouse settings vary a bit. I placed the appropriate sections of each file below.
xorg.conf
Section "InputDevice"
# generated from default
Identifier "Logitech Mouse"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "no"
Option "Buttons" "3"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Xorg.0.log
(**) Option "CoreKeyboard"
(**) Keyboard0: always reports core events
(**) Option "Protocol" "standard"
(**) Keyboard0: Protocol: standard
(**) Option "AutoRepeat" "500 30"
(**) Option "XkbRules" "xorg"
(**) Keyboard0: XkbRules: "xorg"
(**) Option "XkbModel" "pc105"
(**) Keyboard0: XkbModel: "pc105"
(**) Option "XkbLayout" "us"
(**) Keyboard0: XkbLayout: "us"
(**) Option "CustomKeycodes" "off"
(**) Keyboard0: CustomKeycodes disabled
(**) Option "Protocol" "auto"
(**) Logitech Mouse: Device: "/dev/psaux"
(**) Logitech Mouse: Protocol: "auto"
(**) Option "CorePointer"
(**) Logitech Mouse: always reports core events
(**) Option "Device" "/dev/psaux"
(**) Option "Buttons" "3"
(**) Option "Emulate3Buttons" "no"
(**) Option "ZAxisMapping" "4 5"
(**) Logitech Mouse: ZAxisMapping: buttons 4 and 5
(**) Logitech Mouse: Buttons: 9
(**) Logitech Mouse: Sensitivity: 1
(II) evaluating device (Logitech Mouse)
(II) XINPUT: Adding extended input device "Logitech Mouse" (type: MOUSE)
(II) evaluating device (Keyboard0)
(II) XINPUT: Adding extended input device "Keyboard0" (type: KEYBOARD)
(--) Logitech Mouse: PnP-detected protocol: "ExplorerPS/2"
(II) Logitech Mouse: ps2EnableDataReporting: succeeded
SetClientVersion: 0 9
.xsession-errors
** (gnome-settings-daemon:26317): DEBUG: Starting keyboard manager
expected keysym, got XF86KbdLightOnOff: line 70 of pc
last scanned symbol is: XF86KbdLightOnOff
expected keysym, got XF86KbdBrightnessDown: line 71 of pc
last scanned symbol is: XF86KbdBrightnessDown
expected keysym, got XF86KbdBrightnessUp: line 72 of pc
last scanned symbol is: XF86KbdBrightnessUp
Error: Meta_R added to symbol map for multiple modifiers
Using Mod4, ignoring Mod1.
Error: Meta_L added to symbol map for multiple modifiers
Using Mod4, ignoring Mod1.
Error: Key <META> added to map for multiple modifiers
Using Mod4, ignoring Mod1.
Warning: Type "PC_RALT_LEVEL2" has 2 levels, but <LALT> has 3 symbols
Ignoring extra symbols
Warning: No symbols defined for <SYRQ> (keycode 92)
Warning: No symbols defined for <II65> (keycode 101)
Warning: No symbols defined for <BRK> (keycode 114)
Warning: No symbols defined for <FK13> (keycode 118)
Warning: No symbols defined for <FK14> (keycode 119)
Warning: No symbols defined for <FK15> (keycode 120)
Warning: No symbols defined for <FK16> (keycode 121)
Warning: No symbols defined for <FK17> (keycode 122)
Warning: No symbols defined for <KPDC> (keycode 123)
Warning: No symbols defined for <XFER> (keycode 129)
Warning: No symbols defined for <I02> (keycode 130)
Warning: No symbols defined for <NFER> (keycode 131)
Warning: No symbols defined for <I04> (keycode 132)
Warning: No symbols defined for <AE13> (keycode 133)
Warning: No symbols defined for <I06> (keycode 134)
Warning: No symbols defined for <I07> (keycode 135)
Warning: No symbols defined for <I08> (keycode 136)
Warning: No symbols defined for <I09> (keycode 137)
Warning: No symbols defined for <I0A> (keycode 138)
Warning: No symbols defined for <I0B> (keycode 139)
Warning: No symbols defined for <I0C> (keycode 140)
Warning: No symbols defined for <I0D> (keycode 141)
Warning: No symbols defined for <I0E> (keycode 142)
Warning: No symbols defined for <I0F> (keycode 143)
Warning: No symbols defined for <I10> (keycode 144)
Warning: No symbols defined for <I11> (keycode 145)
Warning: No symbols defined for <I12> (keycode 146)
Warning: No symbols defined for <I13> (keycode 147)
Warning: No symbols defined for <I14> (keycode 148)
Warning: No symbols defined for <I15> (keycode 149)
Warning: No symbols defined for <I16> (keycode 150)
Warning: No symbols defined for <I17> (keycode 151)
Warning: No symbols defined for <I18> (keycode 152)
Warning: No symbols defined for <I19> (keycode 153)
Warning: No symbols defined for <I1A> (keycode 154)
Warning: No symbols defined for <I1B> (keycode 155)
Warning: No symbols defined for <K59> (keycode 157)
Warning: No symbols defined for <I1E> (keycode 158)
Warning: No symbols defined for <I1F> (keycode 159)
Warning: No symbols defined for <I20> (keycode 160)
Warning: No symbols defined for <I21> (keycode 161)
Warning: No symbols defined for <I22> (keycode 162)
Warning: No symbols defined for <I23> (keycode 163)
Warning: No symbols defined for <I24> (keycode 164)
Warning: No symbols defined for <I25> (keycode 165)
Warning: No symbols defined for <I26> (keycode 166)
Warning: No symbols defined for <I27> (keycode 167)
Warning: No symbols defined for <I28> (keycode 168)
Warning: No symbols defined for <I29> (keycode 169)
Warning: No symbols defined for <K5A> (keycode 170)
Warning: No symbols defined for <I2B> (keycode 171)
Warning: No symbols defined for <I2C> (keycode 172)
Warning: No symbols defined for <I2D> (keycode 173)
Warning: No symbols defined for <I2E> (keycode 174)
Warning: No symbols defined for <I2F> (keycode 175)
Warning: No symbols defined for <I30> (keycode 176)
Warning: No symbols defined for <I31> (keycode 177)
Warning: No symbols defined for <I32> (keycode 178)
Warning: No symbols defined for <I33> (keycode 179)
Warning: No symbols defined for <I34> (keycode 180)
Warning: No symbols defined for <K5B> (keycode 181)
Warning: No symbols defined for <K5D> (keycode 182)
Warning: No symbols defined for <K5E> (keycode 183)
Warning: No symbols defined for <K5F> (keycode 184)
Warning: No symbols defined for <I39> (keycode 185)
Warning: No symbols defined for <I3A> (keycode 186)
Warning: No symbols defined for <I3B> (keycode 187)
Warning: No symbols defined for <I3C> (keycode 188)
Warning: No symbols defined for <K62> (keycode 189)
Warning: No symbols defined for <K63> (keycode 190)
Warning: No symbols defined for <K64> (keycode 191)
Warning: No symbols defined for <K65> (keycode 192)
Warning: No symbols defined for <K66> (keycode 193)
Warning: No symbols defined for <I42> (keycode 194)
Warning: No symbols defined for <I43> (keycode 195)
Warning: No symbols defined for <I44> (keycode 196)
Warning: No symbols defined for <I45> (keycode 197)
Warning: No symbols defined for <K67> (keycode 198)
Warning: No symbols defined for <K68> (keycode 199)
Warning: No symbols defined for <K69> (keycode 200)
Warning: No symbols defined for <K6A> (keycode 201)
Warning: No symbols defined for <I4A> (keycode 202)
Warning: No symbols defined for <K6B> (keycode 203)
Warning: No symbols defined for <K6C> (keycode 204)
Warning: No symbols defined for <K6D> (keycode 205)
Warning: No symbols defined for <K6E> (keycode 206)
Warning: No symbols defined for <K6F> (keycode 207)
Warning: No symbols defined for <HKTG> (keycode 208)
Warning: No symbols defined for <KANA> (keycode 209)
Warning: No symbols defined for <EISU> (keycode 210)
Warning: No symbols defined for <AB11> (keycode 211)
Warning: No symbols defined for <I54> (keycode 212)
Warning: No symbols defined for <I55> (keycode 213)
Warning: No symbols defined for <I5A> (keycode 218)
Warning: No symbols defined for <K74> (keycode 219)
Warning: No symbols defined for <K75> (keycode 220)
Warning: No symbols defined for <K76> (keycode 221)
Warning: No symbols defined for <I5E> (keycode 222)
Warning: No symbols defined for <I5F> (keycode 223)
Warning: No symbols defined for <I60> (keycode 224)
Warning: No symbols defined for <I61> (keycode 225)
Warning: No symbols defined for <I62> (keycode 226)
Warning: No symbols defined for <I63> (keycode 227)
Warning: No symbols defined for <I64> (keycode 228)
Warning: No symbols defined for <I65> (keycode 229)
Warning: No symbols defined for <I66> (keycode 230)
Warning: No symbols defined for <I67> (keycode 231)
Warning: No symbols defined for <I68> (keycode 232)
Warning: No symbols defined for <I69> (keycode 233)
Warning: No symbols defined for <I6A> (keycode 234)
Warning: No symbols defined for <I6B> (keycode 235)
Warning: No symbols defined for <I6C> (keycode 236)
Warning: No symbols defined for <I6D> (keycode 237)
Warning: No symbols defined for <I6E> (keycode 238)
Warning: No symbols defined for <I6F> (keycode 239)
Warning: No symbols defined for <I70> (keycode 240)
Warning: No symbols defined for <I71> (keycode 241)
Warning: No symbols defined for <I72> (keycode 242)
Warning: No symbols defined for <I73> (keycode 243)
Warning: No symbols defined for <I74> (keycode 244)
Warning: No symbols defined for <I75> (keycode 245)
Warning: No symbols defined for <I76> (keycode 246)
Warning: No symbols defined for <I77> (keycode 247)
Warning: No symbols defined for <I78> (keycode 248)
Warning: No symbols defined for <I79> (keycode 249)
Warning: No symbols defined for <I7A> (keycode 250)
Warning: No symbols defined for <I7B> (keycode 251)
Warning: No symbols defined for <I7C> (keycode 252)
Warning: No symbols defined for <I7D> (keycode 253)
Warning: No symbols defined for <I7E> (keycode 254)
Warning: No symbols defined for <I7F> (keycode 255)
Let me know if you see something strange in these log files. I really miss btnx!
THANKS MUCH
milliman
February 19th, 2008, 01:52 AM
I just noticed something strange in the xorg.conf file that contradict each other.
Option "Emulate3Buttons" "no"
Option "Buttons" "3"
Could this have any affect on btnx?
blazoner
February 19th, 2008, 11:13 AM
They are totally separate, and don't interfere with each other.Option "Emulate3Buttons"With "yes" selected, this allows you to make the mouse have a "middle click" by clicking both the L+R buttons at the same time. A "no" just turns that functionality off.
Option "Buttons" "3"Is actually telling your computer that the mouse you are using has only three buttons. In my xorg.conf, I have removed it without any negative consequences. If memory serves me, it was giving me problems as well.
Here is the current relevent section of my xorg.conf:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/psaux"
Option "Protocol" "auto"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSectionIt may, or may not work for you. Please let us know.
daou
February 20th, 2008, 06:24 AM
They are totally separate, and don't interfere with each other.Option "Emulate3Buttons"With "yes" selected, this allows you to make the mouse have a "middle click" by clicking both the L+R buttons at the same time. A "no" just turns that functionality off.
Option "Buttons" "3"Is actually telling your computer that the mouse you are using has only three buttons. In my xorg.conf, I have removed it without any negative consequences. If memory serves me, it was giving me problems as well.
Here is the current relevent section of my xorg.conf:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/psaux"
Option "Protocol" "auto"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSectionIt may, or may not work for you. Please let us know.
Perhaps I should remove the options from the manual because they don't interfere with btnx, and might be useful for some users.
daou
February 20th, 2008, 06:26 AM
Daou:
Thanks for your response. I think most of the xorg.conf file took but this latest version has a mind of its own. The video settings are what I specified, but the mouse settings vary a bit. I placed the appropriate sections of each file below.
xorg.conf
Xorg.0.log
.xsession-errors
Let me know if you see something strange in these log files. I really miss btnx!
THANKS MUCH
The xorg.log looks fine to me. I will need to do some debugging on Hardy to get to the bottom of it. Hopefully I'll have more time in about 2-3 weeks.
milliman
February 20th, 2008, 01:01 PM
I removed the line with "Options 'Buttons' '3'" with no affect on btnx. As far as I can tell X overrides the setting with Buttons=9 anyway. As far as I can guess the Logitech MediaPlay does have 9 buttons and two keys that it emulates.
I believe that the device is actually being recognized by btnx and 1 handler is identified. It is just that something is intercepting the button presses before btnx.
Hope that you can find the time to investigate this issue. I can deal with my webcam not working, but I really enjoy having that mouse work completely.
Thanks again for such a wonderful program.
dondad
February 20th, 2008, 01:48 PM
I removed the line with "Options 'Buttons' '3'" with no affect on btnx. As far as I can tell X overrides the setting with Buttons=9 anyway. As far as I can guess the Logitech MediaPlay does have 9 buttons and two keys that it emulates.
I believe that the device is actually being recognized by btnx and 1 handler is identified. It is just that something is intercepting the button presses before btnx.
Hope that you can find the time to investigate this issue. I can deal with my webcam not working, but I really enjoy having that mouse work completely.
Thanks again for such a wonderful program.
I agree that it is a wonderful program. I am seeing the same thing in Hardy. It is as if the buttons are being intercepted and processed before they get to btnx. Since the Hardy install is on the same box as the Gutsy one, I tried copying the config file from the gutsy to the hardy install. It sorta worked, but finally went totally waco and started outputting a solid stream of characters and I had to turn the computer off to get it to stop.
Gourgi
February 20th, 2008, 03:19 PM
I agree that it is a wonderful program. I am seeing the same thing in Hardy. It is as if the buttons are being intercepted and processed before they get to btnx. Since the Hardy install is on the same box as the Gutsy one, I tried copying the config file from the gutsy to the hardy install. It sorta worked, but finally went totally waco and started outputting a solid stream of characters and I had to turn the computer off to get it to stop.
try playing with repeat delay in buttons config , that did the trick for me in hardy
milliman
February 21st, 2008, 07:13 PM
I wish I would have kept my configuration file for my MediaPlay mouse. I had the key repeat problem in Gutsy. I thought that it was just something strange with my machine.
tim71
February 23rd, 2008, 07:19 AM
I had a hope, that new version would solve this mystery with "changing configuration", but nope - still after each restart I must choose another button configuration or detect the mouse buttons again (I have 2 or 3 configurations in btnx and one of them always works - but it is different one every time, so I have to switch between them)
P.S. Already tried to change mouse protocol - no results, and changing the hotplugging setting does not change anything either ...
xorg.conf
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Device" "/dev/psaux"
Option "Protocol" "ImPS/2"
Option "Emulate3Buttons" "no"
Option "Buttons" "3"
Option "ZAxisMapping" "4 5"
EndSection
and xorg.log
X Window System Version 1.3.0
Release Date: 19 April 2007
X Protocol Version 11, Revision 0, Release 1.3
Build Operating System: Linux Ubuntu (xorg-server 2:1.3.0.0.dfsg-12ubuntu8.3)
Current Operating System: Linux U-desktop 2.6.22-14-generic #1 SMP Tue Feb 12 07:42:25 UTC 2008 i686
Build Date: 18 January 2008
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Module Loader present
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Sat Feb 23 13:05:51 2008
(==) Using config file: "/etc/X11/xorg.conf"
(==) ServerLayout "Layout0"
(**) |-->Screen "Screen0" (0)
(**) | |-->Monitor "Monitor0"
(**) | |-->Device "Videocard0"
(**) |-->Input Device "Keyboard0"
(**) |-->Input Device "Mouse0"
(**) Option "Xinerama" "0"
(**) Option "AIGLX" "off"
(WW) Including the default font path /usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType.
(**) FontPath set to:
/usr/local/share/fonts,
/usr/share/fonts/X11/misc,
/usr/share/fonts/X11/cyrillic,
/usr/share/fonts/X11/100dpi/:unscaled,
/usr/share/fonts/X11/75dpi/:unscaled,
/usr/share/fonts/X11/Type1,
/usr/share/fonts/X11/100dpi,
/usr/share/fonts/X11/75dpi,
/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType
(**) RgbPath set to "/usr/lib/X11/rgb"
(==) ModulePath set to "/usr/lib/xorg/modules"
(II) Open ACPI successful (/var/run/acpid.socket)
(II) Loader magic: 0x81e9800
(II) Module ABI versions:
X.Org ANSI C Emulation: 0.3
X.Org Video Driver: 1.2
X.Org XInput driver : 0.7
X.Org Server Extension : 0.3
X.Org Font Renderer : 0.5
(II) Loader running on linux
(II) LoadModule: "pcidata"
(II) Loading /usr/lib/xorg/modules//libpcidata.so
(II) Module pcidata: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 1.0.0
ABI class: X.Org Video Driver, version 1.2
(++) using VT number 7
(II) PCI: PCI scan (all values are in hex)
(II) PCI: 00:00:0: chip 10de,01e0 card 1043,80ac rev c1 class 06,00,00 hdr 80
(II) PCI: 00:00:1: chip 10de,01eb card 1043,80ac rev c1 class 05,00,00 hdr 80
(II) PCI: 00:00:2: chip 10de,01ee card 1043,80ac rev c1 class 05,00,00 hdr 80
(II) PCI: 00:00:3: chip 10de,01ed card 1043,80ac rev c1 class 05,00,00 hdr 80
(II) PCI: 00:00:4: chip 10de,01ec card 1043,80ac rev c1 class 05,00,00 hdr 80
(II) PCI: 00:00:5: chip 10de,01ef card 1043,80ac rev c1 class 05,00,00 hdr 80
(II) PCI: 00:01:0: chip 10de,0060 card 1043,80ad rev a4 class 06,01,00 hdr 80
(II) PCI: 00:01:1: chip 10de,0064 card 1043,0c11 rev a2 class 0c,05,00 hdr 80
(II) PCI: 00:02:0: chip 10de,0067 card 1043,0c11 rev a4 class 0c,03,10 hdr 80
(II) PCI: 00:02:1: chip 10de,0067 card 1043,0c11 rev a4 class 0c,03,10 hdr 80
(II) PCI: 00:02:2: chip 10de,0068 card 1043,0c11 rev a4 class 0c,03,20 hdr 80
(II) PCI: 00:08:0: chip 10de,006c card 0000,0000 rev a3 class 06,04,00 hdr 01
(II) PCI: 00:09:0: chip 10de,0065 card 1043,0c11 rev a2 class 01,01,8a hdr 00
(II) PCI: 00:0c:0: chip 10de,006d card 0000,0000 rev a3 class 06,04,00 hdr 01
(II) PCI: 00:1e:0: chip 10de,01e8 card 0000,0000 rev c1 class 06,04,00 hdr 01
(II) PCI: 01:07:0: chip 1095,3512 card 1095,6512 rev 01 class 01,04,00 hdr 00
(II) PCI: 01:09:0: chip 1095,3112 card 1095,6112 rev 02 class 01,04,00 hdr 00
(II) PCI: 01:0b:0: chip 1095,3112 card 1095,6112 rev 02 class 01,04,00 hdr 00
(II) PCI: 02:01:0: chip 10b7,9201 card 1043,80ab rev 40 class 02,00,00 hdr 00
(II) PCI: 03:00:0: chip 10de,02e0 card 1462,0640 rev a2 class 03,00,00 hdr 00
(II) PCI: End of PCI scan
(II) Host-to-PCI bridge:
(II) Bus 0: bridge is at (0:0:0), (0,0,3), BCTRL: 0x0008 (VGA_EN is set)
(II) Bus 0 I/O range:
[0] -1 0 0x00000000 - 0x0000ffff (0x10000) IX[B]
(II) Bus 0 non-prefetchable memory range:
[0] -1 0 0x00000000 - 0xffffffff (0x0) MX[B]
(II) Bus 0 prefetchable memory range:
[0] -1 0 0x00000000 - 0xffffffff (0x0) MX[B]
(II) PCI-to-ISA bridge:
(II) Bus -1: bridge is at (0:1:0), (0,-1,-1), BCTRL: 0x0008 (VGA_EN is set)
(II) PCI-to-PCI bridge:
(II) Bus 1: bridge is at (0:8:0), (0,1,1), BCTRL: 0x0002 (VGA_EN is cleared)
(II) Bus 1 I/O range:
[0] -1 0 0x00009000 - 0x0000cfff (0x4000) IX[B]
(II) Bus 1 non-prefetchable memory range:
[0] -1 0 0xed000000 - 0xeeffffff (0x2000000) MX[B]
(II) Bus 1 prefetchable memory range:
[0] -1 0 0x88000000 - 0x881fffff (0x200000) MX[B]
(II) PCI-to-PCI bridge:
(II) Bus 2: bridge is at (0:12:0), (0,2,2), BCTRL: 0x0002 (VGA_EN is cleared)
(II) Bus 2 I/O range:
[0] -1 0 0x0000d000 - 0x0000dfff (0x1000) IX[B]
(II) Bus 2 non-prefetchable memory range:
[0] -1 0 0xe8000000 - 0xe9ffffff (0x2000000) MX[B]
(II) Bus 2 prefetchable memory range:
[0] -1 0 0x88200000 - 0x882fffff (0x100000) MX[B]
(II) PCI-to-PCI bridge:
(II) Bus 3: bridge is at (0:30:0), (0,3,3), BCTRL: 0x000a (VGA_EN is set)
(II) Bus 3 non-prefetchable memory range:
[0] -1 0 0xea000000 - 0xecffffff (0x3000000) MX[B]
(II) Bus 3 prefetchable memory range:
[0] -1 0 0xd0000000 - 0xdfffffff (0x10000000) MX[B]
(--) PCI:*(3:0:0) nVidia Corporation unknown chipset (0x02e0) rev 162, Mem @ 0xea000000/24, 0xd0000000/28, 0xeb000000/24
(II) Addressable bus resource ranges are
[0] -1 0 0x00000000 - 0xffffffff (0x0) MX[B]
[1] -1 0 0x00000000 - 0x0000ffff (0x10000) IX[B]
(II) OS-reported resource ranges:
[0] -1 0 0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
[1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[B]
[2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[B]
[3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[B]
[4] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[B]
[5] -1 0 0x00000000 - 0x000000ff (0x100) IX[B]
(II) PCI Memory resource overlap reduced 0xe0000000 from 0xe7ffffff to 0xdfffffff
(II) Active PCI resource ranges:
[0] -1 0 0xe9000000 - 0xe900007f (0x80) MX[B]
[1] -1 0 0xee002000 - 0xee0021ff (0x200) MX[B]
[2] -1 0 0xee001000 - 0xee0011ff (0x200) MX[B]
[3] -1 0 0xee000000 - 0xee0001ff (0x200) MX[B]
[4] -1 0 0xef001000 - 0xef0010ff (0x100) MX[B]
[5] -1 0 0xef000000 - 0xef000fff (0x1000) MX[B]
[6] -1 0 0xef002000 - 0xef002fff (0x1000) MX[B]
[7] -1 0 0xe0000000 - 0xdfffffff (0x0) MX[B]O
[8] -1 0 0xeb000000 - 0xebffffff (0x1000000) MX[B](B)
[9] -1 0 0xd0000000 - 0xdfffffff (0x10000000) MX[B](B)
[10] -1 0 0xea000000 - 0xeaffffff (0x1000000) MX[B](B)
[11] -1 0 0x0000d000 - 0x0000d07f (0x80) IX[B]
[12] -1 0 0x0000c800 - 0x0000c80f (0x10) IX[B]
[13] -1 0 0x0000c400 - 0x0000c403 (0x4) IX[B]
[14] -1 0 0x0000c000 - 0x0000c007 (0x8) IX[B]
[15] -1 0 0x0000bc00 - 0x0000bc03 (0x4) IX[B]
[16] -1 0 0x0000b800 - 0x0000b807 (0x8) IX[B]
[17] -1 0 0x0000b400 - 0x0000b40f (0x10) IX[B]
[18] -1 0 0x0000b000 - 0x0000b003 (0x4) IX[B]
[19] -1 0 0x0000ac00 - 0x0000ac07 (0x8) IX[B]
[20] -1 0 0x0000a800 - 0x0000a803 (0x4) IX[B]
[21] -1 0 0x0000a400 - 0x0000a407 (0x8) IX[B]
[22] -1 0 0x0000a000 - 0x0000a00f (0x10) IX[B]
[23] -1 0 0x00009c00 - 0x00009c03 (0x4) IX[B]
[24] -1 0 0x00009800 - 0x00009807 (0x8) IX[B]
[25] -1 0 0x00009400 - 0x00009403 (0x4) IX[B]
[26] -1 0 0x00009000 - 0x00009007 (0x8) IX[B]
[27] -1 0 0x0000f000 - 0x0000f00f (0x10) IX[B]
[28] -1 0 0x0000e000 - 0x0000e01f (0x20) IX[B]
(II) Active PCI resource ranges after removing overlaps:
[0] -1 0 0xe9000000 - 0xe900007f (0x80) MX[B]
[1] -1 0 0xee002000 - 0xee0021ff (0x200) MX[B]
[2] -1 0 0xee001000 - 0xee0011ff (0x200) MX[B]
[3] -1 0 0xee000000 - 0xee0001ff (0x200) MX[B]
[4] -1 0 0xef001000 - 0xef0010ff (0x100) MX[B]
[5] -1 0 0xef000000 - 0xef000fff (0x1000) MX[B]
[6] -1 0 0xef002000 - 0xef002fff (0x1000) MX[B]
[7] -1 0 0xe0000000 - 0xdfffffff (0x0) MX[B]O
[8] -1 0 0xeb000000 - 0xebffffff (0x1000000) MX[B](B)
[9] -1 0 0xd0000000 - 0xdfffffff (0x10000000) MX[B](B)
[10] -1 0 0xea000000 - 0xeaffffff (0x1000000) MX[B](B)
[11] -1 0 0x0000d000 - 0x0000d07f (0x80) IX[B]
[12] -1 0 0x0000c800 - 0x0000c80f (0x10) IX[B]
[13] -1 0 0x0000c400 - 0x0000c403 (0x4) IX[B]
[14] -1 0 0x0000c000 - 0x0000c007 (0x8) IX[B]
[15] -1 0 0x0000bc00 - 0x0000bc03 (0x4) IX[B]
[16] -1 0 0x0000b800 - 0x0000b807 (0x8) IX[B]
[17] -1 0 0x0000b400 - 0x0000b40f (0x10) IX[B]
[18] -1 0 0x0000b000 - 0x0000b003 (0x4) IX[B]
[19] -1 0 0x0000ac00 - 0x0000ac07 (0x8) IX[B]
[20] -1 0 0x0000a800 - 0x0000a803 (0x4) IX[B]
[21] -1 0 0x0000a400 - 0x0000a407 (0x8) IX[B]
[22] -1 0 0x0000a000 - 0x0000a00f (0x10) IX[B]
[23] -1 0 0x00009c00 - 0x00009c03 (0x4) IX[B]
[24] -1 0 0x00009800 - 0x00009807 (0x8) IX[B]
[25] -1 0 0x00009400 - 0x00009403 (0x4) IX[B]
[26] -1 0 0x00009000 - 0x00009007 (0x8) IX[B]
[27] -1 0 0x0000f000 - 0x0000f00f (0x10) IX[B]
[28] -1 0 0x0000e000 - 0x0000e01f (0x20) IX[B]
(II) OS-reported resource ranges after removing overlaps with PCI:
[0] -1 0 0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
[1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[B]
[2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[B]
[3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[B]
[4] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[B]
[5] -1 0 0x00000000 - 0x000000ff (0x100) IX[B]
(II) All system resource ranges:
[0] -1 0 0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
[1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[B]
[2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[B]
[3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[B]
[4] -1 0 0xe9000000 - 0xe900007f (0x80) MX[B]
[5] -1 0 0xee002000 - 0xee0021ff (0x200) MX[B]
[6] -1 0 0xee001000 - 0xee0011ff (0x200) MX[B]
[7] -1 0 0xee000000 - 0xee0001ff (0x200) MX[B]
[8] -1 0 0xef001000 - 0xef0010ff (0x100) MX[B]
[9] -1 0 0xef000000 - 0xef000fff (0x1000) MX[B]
[10] -1 0 0xef002000 - 0xef002fff (0x1000) MX[B]
[11] -1 0 0xe0000000 - 0xdfffffff (0x0) MX[B]O
[12] -1 0 0xeb000000 - 0xebffffff (0x1000000) MX[B](B)
[13] -1 0 0xd0000000 - 0xdfffffff (0x10000000) MX[B](B)
[14] -1 0 0xea000000 - 0xeaffffff (0x1000000) MX[B](B)
[15] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[B]
[16] -1 0 0x00000000 - 0x000000ff (0x100) IX[B]
[17] -1 0 0x0000d000 - 0x0000d07f (0x80) IX[B]
[18] -1 0 0x0000c800 - 0x0000c80f (0x10) IX[B]
[19] -1 0 0x0000c400 - 0x0000c403 (0x4) IX[B]
[20] -1 0 0x0000c000 - 0x0000c007 (0x8) IX[B]
[21] -1 0 0x0000bc00 - 0x0000bc03 (0x4) IX[B]
[22] -1 0 0x0000b800 - 0x0000b807 (0x8) IX[B]
[23] -1 0 0x0000b400 - 0x0000b40f (0x10) IX[B]
[24] -1 0 0x0000b000 - 0x0000b003 (0x4) IX[B]
[25] -1 0 0x0000ac00 - 0x0000ac07 (0x8) IX[B]
[26] -1 0 0x0000a800 - 0x0000a803 (0x4) IX[B]
[27] -1 0 0x0000a400 - 0x0000a407 (0x8) IX[B]
[28] -1 0 0x0000a000 - 0x0000a00f (0x10) IX[B]
[29] -1 0 0x00009c00 - 0x00009c03 (0x4) IX[B]
[30] -1 0 0x00009800 - 0x00009807 (0x8) IX[B]
[31] -1 0 0x00009400 - 0x00009403 (0x4) IX[B]
[32] -1 0 0x00009000 - 0x00009007 (0x8) IX[B]
[33] -1 0 0x0000f000 - 0x0000f00f (0x10) IX[B]
[34] -1 0 0x0000e000 - 0x0000e01f (0x20) IX[B]
(II) LoadModule: "dbe"
(II) Loading /usr/lib/xorg/modules/extensions//libdbe.so
(II) Module dbe: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 1.0.0
Module class: X.Org Server Extension
ABI class: X.Org Server Extension, version 0.3
(II) Loading extension DOUBLE-BUFFER
(II) LoadModule: "extmod"
(II) Loading /usr/lib/xorg/modules/extensions//libextmod.so
(II) Module extmod: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 1.0.0
Module class: X.Org Server Extension
ABI class: X.Org Server Extension, version 0.3
(II) Loading extension SHAPE
(II) Loading extension MIT-SUNDRY-NONSTANDARD
(II) Loading extension BIG-REQUESTS
(II) Loading extension SYNC
(II) Loading extension MIT-SCREEN-SAVER
(II) Loading extension XC-MISC
(II) Loading extension XFree86-VidModeExtension
(II) Loading extension XFree86-Misc
(II) Loading extension XFree86-DGA
(II) Loading extension DPMS
(II) Loading extension TOG-CUP
(II) Loading extension Extended-Visual-Information
(II) Loading extension XVideo
(II) Loading extension XVideo-MotionCompensation
(II) Loading extension X-Resource
(II) LoadModule: "type1"
(WW) Warning, couldn't open module type1
(II) UnloadModule: "type1"
(EE) Failed to load module "type1" (module does not exist, 0)
(II) LoadModule: "freetype"
(II) Loading /usr/lib/xorg/modules//fonts/libfreetype.so
(II) Module freetype: vendor="X.Org Foundation & the After X-TT Project"
compiled for 1.3.0, module version = 2.1.0
Module class: X.Org Font Renderer
ABI class: X.Org Font Renderer, version 0.5
(II) Loading font FreeType
(II) LoadModule: "glx"
(II) Loading /usr/lib/xorg/modules/extensions//libglx.so
(II) Module glx: vendor="NVIDIA Corporation"
compiled for 4.0.2, module version = 1.0.0
Module class: X.Org Server Extension
ABI class: X.Org Server Extension, version 0.1
(II) NVIDIA GLX Module 169.09 Fri Jan 11 15:31:25 PST 2008
(II) Loading extension GLX
(II) LoadModule: "record"
(II) Loading /usr/lib/xorg/modules/extensions//librecord.so
(II) Module record: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 1.13.0
Module class: X.Org Server Extension
ABI class: X.Org Server Extension, version 0.3
(II) Loading extension RECORD
(II) LoadModule: "dri"
(II) Loading /usr/lib/xorg/modules/extensions//libdri.so
(II) Module dri: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 1.0.0
ABI class: X.Org Server Extension, version 0.3
(II) Loading extension XFree86-DRI
(II) LoadModule: "nvidia"
(II) Loading /usr/lib/xorg/modules/drivers//nvidia_drv.so
(II) Module nvidia: vendor="NVIDIA Corporation"
compiled for 4.0.2, module version = 1.0.0
Module class: X.Org Video Driver
(II) LoadModule: "kbd"
(II) Loading /usr/lib/xorg/modules/input//kbd_drv.so
(II) Module kbd: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 1.2.1
Module class: X.Org XInput Driver
ABI class: X.Org XInput driver, version 0.7
(II) LoadModule: "mouse"
(II) Loading /usr/lib/xorg/modules/input//mouse_drv.so
(II) Module mouse: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 1.2.1
Module class: X.Org XInput Driver
ABI class: X.Org XInput driver, version 0.7
(II) NVIDIA dlloader X Driver 169.09 Fri Jan 11 14:41:00 PST 2008
(II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
(II) Primary Device is: PCI 03:00:0
(--) Assigning device section with no busID to primary device
(--) Chipset NVIDIA GPU found
(II) Loading sub module "fb"
(II) LoadModule: "fb"
(II) Loading /usr/lib/xorg/modules//libfb.so
(II) Module fb: vendor="X.Org Foundation"
compiled for 1.3.0, module version = 1.0.0
ABI class: X.Org ANSI C Emulation, version 0.3
(II) Loading sub module "wfb"
(II) LoadModule: "wfb"
(II) Loading /usr/lib/xorg/modules//libwfb.so
(II) Module wfb: vendor="NVIDIA Corporation"
compiled for 7.1.99.2, module version = 1.0.0
(II) Loading sub module "ramdac"
(II) LoadModule: "ramdac"(II) Module already built-in
(II) resource ranges after xf86ClaimFixedResources() call:
[0] -1 0 0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
[1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[B]
[2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[B]
[3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[B]
[4] -1 0 0xe9000000 - 0xe900007f (0x80) MX[B]
[5] -1 0 0xee002000 - 0xee0021ff (0x200) MX[B]
[6] -1 0 0xee001000 - 0xee0011ff (0x200) MX[B]
[7] -1 0 0xee000000 - 0xee0001ff (0x200) MX[B]
[8] -1 0 0xef001000 - 0xef0010ff (0x100) MX[B]
[9] -1 0 0xef000000 - 0xef000fff (0x1000) MX[B]
[10] -1 0 0xef002000 - 0xef002fff (0x1000) MX[B]
[11] -1 0 0xe0000000 - 0xdfffffff (0x0) MX[B]O
[12] -1 0 0xeb000000 - 0xebffffff (0x1000000) MX[B](B)
[13] -1 0 0xd0000000 - 0xdfffffff (0x10000000) MX[B](B)
[14] -1 0 0xea000000 - 0xeaffffff (0x1000000) MX[B](B)
[15] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[B]
[16] -1 0 0x00000000 - 0x000000ff (0x100) IX[B]
[17] -1 0 0x0000d000 - 0x0000d07f (0x80) IX[B]
[18] -1 0 0x0000c800 - 0x0000c80f (0x10) IX[B]
[19] -1 0 0x0000c400 - 0x0000c403 (0x4) IX[B]
[20] -1 0 0x0000c000 - 0x0000c007 (0x8) IX[B]
[21] -1 0 0x0000bc00 - 0x0000bc03 (0x4) IX[B]
[22] -1 0 0x0000b800 - 0x0000b807 (0x8) IX[B]
[23] -1 0 0x0000b400 - 0x0000b40f (0x10) IX[B]
[24] -1 0 0x0000b000 - 0x0000b003 (0x4) IX[B]
[25] -1 0 0x0000ac00 - 0x0000ac07 (0x8) IX[B]
[26] -1 0 0x0000a800 - 0x0000a803 (0x4) IX[B]
[27] -1 0 0x0000a400 - 0x0000a407 (0x8) IX[B]
[28] -1 0 0x0000a000 - 0x0000a00f (0x10) IX[B]
[29] -1 0 0x00009c00 - 0x00009c03 (0x4) IX[B]
[30] -1 0 0x00009800 - 0x00009807 (0x8) IX[B]
[31] -1 0 0x00009400 - 0x00009403 (0x4) IX[B]
[32] -1 0 0x00009000 - 0x00009007 (0x8) IX[B]
[33] -1 0 0x0000f000 - 0x0000f00f (0x10) IX[B]
[34] -1 0 0x0000e000 - 0x0000e01f (0x20) IX[B]
(II) resource ranges after probing:
[0] -1 0 0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
[1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[B]
[2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[B]
[3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[B]
[4] -1 0 0xe9000000 - 0xe900007f (0x80) MX[B]
[5] -1 0 0xee002000 - 0xee0021ff (0x200) MX[B]
[6] -1 0 0xee001000 - 0xee0011ff (0x200) MX[B]
[7] -1 0 0xee000000 - 0xee0001ff (0x200) MX[B]
[8] -1 0 0xef001000 - 0xef0010ff (0x100) MX[B]
[9] -1 0 0xef000000 - 0xef000fff (0x1000) MX[B]
[10] -1 0 0xef002000 - 0xef002fff (0x1000) MX[B]
[11] -1 0 0xe0000000 - 0xdfffffff (0x0) MX[B]O
[12] -1 0 0xeb000000 - 0xebffffff (0x1000000) MX[B](B)
[13] -1 0 0xd0000000 - 0xdfffffff (0x10000000) MX[B](B)
[14] -1 0 0xea000000 - 0xeaffffff (0x1000000) MX[B](B)
[15] 0 0 0x000a0000 - 0x000affff (0x10000) MS[B]
[16] 0 0 0x000b0000 - 0x000b7fff (0x8000) MS[B]
[17] 0 0 0x000b8000 - 0x000bffff (0x8000) MS[B]
[18] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[B]
[19] -1 0 0x00000000 - 0x000000ff (0x100) IX[B]
[20] -1 0 0x0000d000 - 0x0000d07f (0x80) IX[B]
[21] -1 0 0x0000c800 - 0x0000c80f (0x10) IX[B]
[22] -1 0 0x0000c400 - 0x0000c403 (0x4) IX[B]
[23] -1 0 0x0000c000 - 0x0000c007 (0x8) IX[B]
[24] -1 0 0x0000bc00 - 0x0000bc03 (0x4) IX[B]
[25] -1 0 0x0000b800 - 0x0000b807 (0x8) IX[B]
[26] -1 0 0x0000b400 - 0x0000b40f (0x10) IX[B]
[27] -1 0 0x0000b000 - 0x0000b003 (0x4) IX[B]
[28] -1 0 0x0000ac00 - 0x0000ac07 (0x8) IX[B]
[29] -1 0 0x0000a800 - 0x0000a803 (0x4) IX[B]
[30] -1 0 0x0000a400 - 0x0000a407 (0x8) IX[B]
[31] -1 0 0x0000a000 - 0x0000a00f (0x10) IX[B]
[32] -1 0 0x00009c00 - 0x00009c03 (0x4) IX[B]
[33] -1 0 0x00009800 - 0x00009807 (0x8) IX[B]
[34] -1 0 0x00009400 - 0x00009403 (0x4) IX[B]
[35] -1 0 0x00009000 - 0x00009007 (0x8) IX[B]
[36] -1 0 0x0000f000 - 0x0000f00f (0x10) IX[B]
[37] -1 0 0x0000e000 - 0x0000e01f (0x20) IX[B]
[38] 0 0 0x000003b0 - 0x000003bb (0xc) IS[B]
[39] 0 0 0x000003c0 - 0x000003df (0x20) IS[B]
(II) Setting vga for screen 0.
(**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
(==) NVIDIA(0): RGB weight 888
(==) NVIDIA(0): Default visual is TrueColor
(==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
(**) NVIDIA(0): Option "TwinView" "0"
(**) NVIDIA(0): Option "MetaModes" "1600x1200 +0+0; 800x600 +0+0; 640x480 +0+0"
(**) NVIDIA(0): Option "Coolbits" "1"
(**) NVIDIA(0): Option "UseEvents" "True"
(**) NVIDIA(0): Option "AddARGBGLXVisuals" "True"
(**) NVIDIA(0): Option "UseCompositeWrapper" "true"
(**) NVIDIA(0): Enabling RENDER acceleration
(II) NVIDIA(0): Support for GLX with the Damage and Composite X extensions is
(II) NVIDIA(0): enabled.
(II) NVIDIA(0): NVIDIA GPU GeForce 7600 GT (G73) at PCI:3:0:0 (GPU-0)
(--) NVIDIA(0): Memory: 262144 kBytes
(--) NVIDIA(0): VideoBIOS: 05.73.22.51.00
(II) NVIDIA(0): Detected AGP rate: 8X
(--) NVIDIA(0): Interlaced video modes are supported on this GPU
(--) NVIDIA(0): Connected display device(s) on GeForce 7600 GT at PCI:3:0:0:
(--) NVIDIA(0): ViewSonic VP2030 SERIES (DFP-0)
(--) NVIDIA(0): ViewSonic VP2030 SERIES (DFP-0): 330.0 MHz maximum pixel
(--) NVIDIA(0): clock
(--) NVIDIA(0): ViewSonic VP2030 SERIES (DFP-0): Internal Dual Link TMDS
(II) NVIDIA(0): Assigned Display Device: DFP-0
(II) NVIDIA(0): Validated modes:
(II) NVIDIA(0): "1600x1200+0+0"
(II) NVIDIA(0): "800x600+0+0"
(II) NVIDIA(0): "640x480+0+0"
(II) NVIDIA(0): Virtual screen size determined to be 1600 x 1200
(--) NVIDIA(0): DPI set to (99, 98); computed from "UseEdidDpi" X config
(--) NVIDIA(0): option
(**) NVIDIA(0): Enabling 32-bit ARGB GLX visuals.
(--) Depth 24 pixmap format is 32 bpp
(II) do I need RAC? No, I don't.
(II) resource ranges after preInit:
[0] -1 0 0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
[1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[B]
[2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[B]
[3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[B]
[4] -1 0 0xe9000000 - 0xe900007f (0x80) MX[B]
[5] -1 0 0xee002000 - 0xee0021ff (0x200) MX[B]
[6] -1 0 0xee001000 - 0xee0011ff (0x200) MX[B]
[7] -1 0 0xee000000 - 0xee0001ff (0x200) MX[B]
[8] -1 0 0xef001000 - 0xef0010ff (0x100) MX[B]
[9] -1 0 0xef000000 - 0xef000fff (0x1000) MX[B]
[10] -1 0 0xef002000 - 0xef002fff (0x1000) MX[B]
[11] -1 0 0xe0000000 - 0xdfffffff (0x0) MX[B]O
[12] -1 0 0xeb000000 - 0xebffffff (0x1000000) MX[B](B)
[13] -1 0 0xd0000000 - 0xdfffffff (0x10000000) MX[B](B)
[14] -1 0 0xea000000 - 0xeaffffff (0x1000000) MX[B](B)
[15] 0 0 0x000a0000 - 0x000affff (0x10000) MS[B]
[16] 0 0 0x000b0000 - 0x000b7fff (0x8000) MS[B]
[17] 0 0 0x000b8000 - 0x000bffff (0x8000) MS[B]
[18] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[B]
[19] -1 0 0x00000000 - 0x000000ff (0x100) IX[B]
[20] -1 0 0x0000d000 - 0x0000d07f (0x80) IX[B]
[21] -1 0 0x0000c800 - 0x0000c80f (0x10) IX[B]
[22] -1 0 0x0000c400 - 0x0000c403 (0x4) IX[B]
[23] -1 0 0x0000c000 - 0x0000c007 (0x8) IX[B]
[24] -1 0 0x0000bc00 - 0x0000bc03 (0x4) IX[B]
[25] -1 0 0x0000b800 - 0x0000b807 (0x8) IX[B]
[26] -1 0 0x0000b400 - 0x0000b40f (0x10) IX[B]
[27] -1 0 0x0000b000 - 0x0000b003 (0x4) IX[B]
[28] -1 0 0x0000ac00 - 0x0000ac07 (0x8) IX[B]
[29] -1 0 0x0000a800 - 0x0000a803 (0x4) IX[B]
[30] -1 0 0x0000a400 - 0x0000a407 (0x8) IX[B]
[31] -1 0 0x0000a000 - 0x0000a00f (0x10) IX[B]
[32] -1 0 0x00009c00 - 0x00009c03 (0x4) IX[B]
[33] -1 0 0x00009800 - 0x00009807 (0x8) IX[B]
[34] -1 0 0x00009400 - 0x00009403 (0x4) IX[B]
[35] -1 0 0x00009000 - 0x00009007 (0x8) IX[B]
[36] -1 0 0x0000f000 - 0x0000f00f (0x10) IX[B]
[37] -1 0 0x0000e000 - 0x0000e01f (0x20) IX[B]
[38] 0 0 0x000003b0 - 0x000003bb (0xc) IS[B]
[39] 0 0 0x000003c0 - 0x000003df (0x20) IS[B]
(II) NVIDIA(0): Initialized AGP GART.
(II) NVIDIA(0): Setting mode "1600x1200+0+0"
(II) Loading extension NV-GLX
(II) NVIDIA(0): NVIDIA 3D Acceleration Architecture Initialized
(II) NVIDIA(0): Using the NVIDIA 2D acceleration architecture
(==) NVIDIA(0): Backing store disabled
(==) NVIDIA(0): Silken mouse enabled
(**) Option "dpms"
(**) NVIDIA(0): DPMS enabled
(II) Loading extension NV-CONTROL
(WW) NVIDIA(0): Option "AddARGBVisuals" is not used
(==) RandR enabled
(II) Setting vga for screen 0.
(II) Initializing built-in extension MIT-SHM
(II) Initializing built-in extension XInputExtension
(II) Initializing built-in extension XTEST
(II) Initializing built-in extension XKEYBOARD
(II) Initializing built-in extension XC-APPGROUP
(II) Initializing built-in extension XAccessControlExtension
(II) Initializing built-in extension SECURITY
(II) Initializing built-in extension XINERAMA
(II) Initializing built-in extension XFIXES
(II) Initializing built-in extension XFree86-Bigfont
(II) Initializing built-in extension RENDER
(II) Initializing built-in extension RANDR
(II) Initializing built-in extension COMPOSITE
(II) Initializing built-in extension DAMAGE
(II) Initializing built-in extension XEVIE
(II) Initializing extension GLX
(**) Option "CoreKeyboard"
(**) Keyboard0: Core Keyboard
(**) Option "Protocol" "standard"
(**) Keyboard0: Protocol: standard
(**) Option "AutoRepeat" "500 30"
(**) Option "XkbRules" "xorg"
(**) Keyboard0: XkbRules: "xorg"
(**) Option "XkbModel" "pc105"
(**) Keyboard0: XkbModel: "pc105"
(**) Option "XkbLayout" "us"
(**) Keyboard0: XkbLayout: "us"
(**) Option "CustomKeycodes" "off"
(**) Keyboard0: CustomKeycodes disabled
(**) Option "Protocol" "ImPS/2"
(**) Mouse0: Device: "/dev/psaux"
(**) Mouse0: Protocol: "ImPS/2"
(**) Option "CorePointer"
(**) Mouse0: Core Pointer
(**) Option "Device" "/dev/psaux"
(**) Option "Buttons" "3"
(**) Option "Emulate3Buttons" "no"
(**) Option "ZAxisMapping" "4 5"
(**) Mouse0: ZAxisMapping: buttons 4 and 5
(**) Mouse0: Buttons: 9
(**) Mouse0: Sensitivity: 1
(II) XINPUT: Adding extended input device "Mouse0" (type: MOUSE)
(II) XINPUT: Adding extended input device "Keyboard0" (type: KEYBOARD)
(II) Mouse0: ps2EnableDataReporting: succeeded
Could not init font path element /usr/share/fonts/X11/cyrillic, removing from list!
SetClientVersion: 0 9
SetKbdSettings - type: -1 rate: 30 delay: 500 snumlk: 0
I find somehow interesting to observe the fact, that this problem has nothing to do with restarting X server or btnx - it always occurs after shutdown or reboot.
atlas2003
February 26th, 2008, 01:39 PM
Hello everybody
I have a little question about btnx.
I'm wondering if it is possible to register a mouse button to another one. For example, on my mx revolution, i don't like the middle button click. So i would like to use the left wheel click instead.
I don't find anything in the config about that..
Thx you! Have a good day
Edit: Sorry!! I have find a "BTN_MIDDLE" in btx config, so it's ok now :)
tim71
February 27th, 2008, 05:28 AM
Now there is hope, that this mystery is solved - after complete "sudo make uninstall" and destroying all old configuration files etc. I made a fresh install of new version and created new button configuration - and for now (few days that is) it seems, that this "configuration flipping" is no more :)
Only bad thing is, that I never found the real cause of this problem...
notepad
February 27th, 2008, 06:35 AM
thanks for this program daou its a great idea.
i am having trouble with my btnx / gnome. i have configured buttons 8 and 9 to switch desktop left and right.
it wasnt working for me so i thought maybe a reboot would help. while gnome was painting the desktop i clicked buttons 8 and 9 and my desktops switched left and right. but as soon as gnome was finished starting, my buttons stopped doing anything.
any idea what is wrong with it?
tim71
February 27th, 2008, 01:48 PM
Aarrgh :) - I knew it!!!
As soon as I say, that everyting is fine - it's BACK! The problem is still there - but at least for now I can say, that this concerns only the buttons around the wheel - the front and back buttons around the wheel and wheel tilt movements.
nesl247
March 1st, 2008, 09:35 PM
I can't seem to get my MX Revolution to work properly. This is the current input section for the mouse:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
Option "Buttons" "3"
EndSection
The only thing that detects (the mouse detects fine) is left and right on the top scroll button. No other buttons detect properly. This is on a fresh Ubuntu 8.04 alpha 5 install.
blazoner
March 2nd, 2008, 05:12 AM
From a previous post:Option "Buttons" "3"Is actually telling your computer that the mouse you are using has only three buttons. In my xorg.conf, I have removed it without any negative consequences. If memory serves me, it was giving me problems as well.
Here is the current relevent section of my xorg.conf:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/psaux"
Option "Protocol" "auto"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSection
It may, or may not work for you. Please let us know.
Also, try the tips in the troubleshooting (http://www.ollisalonen.com/btnx/man/x868.html) section of the btnx manual.
unabatedshagie
March 2nd, 2008, 01:58 PM
I can't seem to get my MX Revolution to work properly. This is the current input section for the mouse:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
Option "Buttons" "3"
EndSectionThe only thing that detects (the mouse detects fine) is left and right on the top scroll button. No other buttons detect properly. This is on a fresh Ubuntu 8.04 alpha 5 install.
I'm having the same problem (been having it ever since I started using hardy (around alpha 2)) except it's only the top scroll forward and back that works. Even the left and right buttons are not detected.
From a previous post:Option "Buttons" "3"Is actually telling your computer that the mouse you are using has only three buttons. In my xorg.conf, I have removed it without any negative consequences. If memory serves me, it was giving me problems as well.
Here is the current relevent section of my xorg.conf:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/psaux"
Option "Protocol" "auto"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSection
It may, or may not work for you. Please let us know.
Also, try the tips in the troubleshooting (http://www.ollisalonen.com/btnx/man/x868.html) section of the btnx manual.
I've tried everything in the troubleshooting section of the manual but it doesn't seem to make any difference.
dondad
March 4th, 2008, 12:55 AM
I can't seem to get my MX Revolution to work properly. This is the current input section for the mouse:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
Option "Buttons" "3"
EndSection
The only thing that detects (the mouse detects fine) is left and right on the top scroll button. No other buttons detect properly. This is on a fresh Ubuntu 8.04 alpha 5 install.
Exact same here. The side to side two buttons on the main wheel are detected fine. Nothing else has any reaction at all. I am also on Hardy with all of the latest updates. It sure looks like something else is intercepting the buttons before they get to btnx. I keep hoping that each kernel update will fix it ;-( , but so far, no dice. After using btnx for awhile, it really is bad when you don't have the functionality that it offers. It really is a great program. I guess I will keep monitoring this thread to see if a fix is found.
daou
March 5th, 2008, 05:45 AM
Sorry it's been a bit quiet from my direction lately. I will try to reply to the posts here after about a week when I have more time.
It seems btnx and mouse button control is quite a popular idea at brainstorm. It has certainly got Ubuntu staff's attention. Hopefully they will integrate btnx or at least develop something so Ubuntu users will finally have easy control of their mouse buttons. If you feel that this is an important issue, don't forget to vote:
http://brainstorm.ubuntu.com/idea/120/image/1/ (http://brainstorm.ubuntu.com/idea/120/)
daou
March 6th, 2008, 09:32 AM
I installed Hardy Alpha 5, and found the problem with the button detection. The kernel input interface has changed. However, this isn't a problem. I am working on a fix. The btnx-config and btnx will need changes and backup configuration files will not work in the new version.
I'll post more info once I have something working in the SVN repo.
unabatedshagie
March 6th, 2008, 09:59 AM
I installed Hardy Alpha 5, and found the problem with the button detection. The kernel input interface has changed. However, this isn't a problem. I am working on a fix. The btnx-config and btnx will need changes and backup configuration files will not work in the new version.
I'll post more info once I have something working in the SVN repo.
Thanks, thats good to hear. it's been killing me not having btnx working with hardy.
daou
March 6th, 2008, 10:41 AM
SVN has new btnx and btnx-config in trunk.
Please test them extensively. And if someone is able to test it with a 64-bit OS, I would be very interested to hear if it worked or not. Some bit-sensitive things needed changes.
blazoner
March 6th, 2008, 03:58 PM
Dao, you mentioned previously that you might be rewriting btnx in C++. Any progress with this?
Also, how hard would it be to integrate btnx-config into a tab in Mouse Preferences? I was thinking about a basic interface similar to the one in this mock-up, with an advanced mode check box to pull up the full interface.
http://img254.imageshack.us/img254/3476/pantallazo1te7.png
This would allow a lot of people to find btnx and btnx-config who wouldn't have even known about them otherwise.
Also, for previously detected buttons, how about auto-highlighting the detected button in the list?
I know that some of this would necessitate some radical changes, but total adoption of btnx and btnx-config won't be accomplished until people can find and use them intuitively.
BTW, thanks again for all your vision and hard work!
blazoner
March 6th, 2008, 04:30 PM
Also, can something be done to allow btnx and btnx-config to interact with the Bluetooth stack, so that people can configure Bluetooth mice the same way?
I know that that's way outside of the project's scope at the moment, but consistency across multiple varieties of hardware is important for a truly intuitive user experience.
I think it's time to move btnx and btnx-config from a fix to a feature.
milliman
March 6th, 2008, 04:44 PM
This is great news on btnx with hardy!!! I can't wait to compile the new version but I don't really know how to use SVN. I recall using CVS in the past, but SVN is different. Could someone please post the commands to pull down the latest trunk?
THANKS!
Guinness70
March 6th, 2008, 05:06 PM
If you find this tool useful, please help others use it by translating it into another language: btnx-config @ Launchpad (http://launchpad.net/btnx-config).
this worked for me!
thanks
ran into a spot of bother when i forgot to save the Default one
so it errored when trying to run the GUI
luckly i had had made a new config already
so copied and renamed it
btnx_config_Default
bob's yer uncle
milliman
March 6th, 2008, 10:10 PM
So I figured out how to use SVN to retrieve the latest trunk of btnx. Both programs compiled and installed without incident. So far, so good. The next step was to recognize all of my mouse buttons and btnx-config found them all! This is a major improvement over the released build.
I have a Logitech MediaPlay mouse that has volume up/down, song forward/back, pause/play, and browser forward/back buttons. I was able to get the browser forward and back buttons set without any problem and now I can browse with them in FF. The problem is with the rest of the buttons. The volume up and down buttons work but they only have three levels: mute, 45%, and 90%. I have them mapped to KEY_VOLUMEUP and KEY_VOLUMEDOWN, respectively. I have played with the delay rate to no avail. Under Gutsy I had a bit more granularity in my volume, but not as much as in Windows. Force immediate release doesn't do much either. Any suggestions?
I have the media button programmed to launch "/usr/bin/banshee" as UID1002. Banshee launches with a Dbus error. I changed the command line to "dbus-launch /usr/bin/banshee" but Banshee never started. Are you fully exporting the environment when running these commands? This may be the problem.
The Next Song and Previous Song buttons do not work at all.
This is my configuration file:
# This is a btnx configuration file generated by btnx-config
Mouse
vendor_name = Logitech
product_name = MediaPlay
vendor_id = 0x046d
product_id = 0xc50e
revoco_mode = 0
revoco_btn = 3
revoco_up_scroll = 5
revoco_down_scroll = 5
EndMouse
Button
name = Left Button
rawcode = 0x01000110
enabled = 0
type = 0
delay = 0
force_release = 0
keycode = BTN_LEFT
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Middle Button
rawcode = 0x01000112
enabled = 0
type = 0
delay = 0
force_release = 0
keycode = BTN_MIDDLE
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Right Button
rawcode = 0x01000111
enabled = 0
type = 0
delay = 0
force_release = 0
keycode = BTN_RIGHT
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Scroll Up
rawcode = 0x02010008
enabled = 0
type = 1
delay = 0
force_release = 0
keycode = NONE
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Scroll Down
rawcode = 0x02ff0008
enabled = 0
type = 1
delay = 0
force_release = 0
keycode = NONE
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Forward
rawcode = 0x01000114
enabled = 1
type = 0
delay = 0
force_release = 0
keycode = KEY_BACKSPACE
mod1 = KEY_LEFTSHIFT
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Back
rawcode = 0x01000113
enabled = 1
type = 0
delay = 0
force_release = 0
keycode = KEY_BACKSPACE
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Media
rawcode = 0x01000115
enabled = 1
type = 0
delay = 0
force_release = 0
command = /usr/bin/banshee --hide
uid = 1002
EndButton
Button
name = Play/Pause
rawcode = 0x0100011c
enabled = 1
type = 0
delay = 0
force_release = 0
keycode = KEY_PLAYPAUSE
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Skip Forward
rawcode = 0x0100011a
enabled = 1
type = 0
delay = 0
force_release = 0
keycode = KEY_NEXTSONG
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Skip Backward
rawcode = 0x0100011b
enabled = 1
type = 0
delay = 0
force_release = 0
keycode = KEY_PREVIOUSSONG
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Volume Up
rawcode = 0x01000118
enabled = 1
type = 0
delay = 100
force_release = 1
keycode = KEY_VOLUMEUP
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
Button
name = Volume Down
rawcode = 0x01000119
enabled = 1
type = 0
delay = 0
force_release = 1
keycode = KEY_VOLUMEDOWN
mod1 = NONE
mod2 = NONE
mod3 = NONE
EndButton
You are making headway on Hardy. I can use a few featues of the mouse, but it will not remotely control the media players on the machine like it did so easily with Gutsy. Let me know when I should try a new trunk.
dondad
March 6th, 2008, 11:34 PM
So I figured out how to use SVN to retrieve the latest trunk of btnx. Both programs compiled and installed without incident. So far, so good. The next step was to recognize all of my mouse buttons and btnx-config found them all! This is a major improvement over the released build.
I have a Logitech MediaPlay mouse that has volume up/down, song forward/back, pause/play, and browser forward/back buttons. I was able to get the browser forward and back buttons set without any problem and now I can browse with them in FF. The problem is with the rest of the buttons. The volume up and down buttons work but they only have three levels: mute, 45%, and 90%. I have them mapped to KEY_VOLUMEUP and KEY_VOLUMEDOWN, respectively. I have played with the delay rate to no avail. Under Gutsy I had a bit more granularity in my volume, but not as much as in Windows. Force immediate release doesn't do much either. Any suggestions?
I have the media button programmed to launch "/usr/bin/banshee" as UID1002. Banshee launches with a Dbus error. I changed the command line to "dbus-launch /usr/bin/banshee" but Banshee never started. Are you fully exporting the environment when running these commands? This may be the problem.
The Next Song and Previous Song buttons do not work at all.
This is my configuration file:
You are making headway on Hardy. I can use a few featues of the mouse, but it will not remotely control the media players on the machine like it did so easily with Gutsy. Let me know when I should try a new trunk.
Could you explain how you did the svn install? I have been doing some reading on it, but still haven't figured it out.
ticktricktrack
March 6th, 2008, 11:42 PM
First time Btnx user. I compiled from source. btnx rev 124, config rev 112.
System: Hardy 6 + updates, AMD64, 64bit, Logitech G5
Total success, everything went fine.
Suggestion: change "no valid pipes from pid" to "please run as root"
ticktricktrack
March 6th, 2008, 11:44 PM
@dondad
I found all I needed for SVN install in the manual.
http://ollisalonen.com/btnx/man/btnx-manual.html#installing-source
milliman
March 6th, 2008, 11:45 PM
First:
mkdir btnx
cd btnx
svn export btnx: http://svn.ollisalonen.com/btnx/trunk
Next:
cd ..
mkdir btnx-config-trunk
cd btnx-config-trunk
svn export http://svn.ollisalonen.com/btnx-config/trunk
Then you can compile the programs per the instructions.
ticktricktrack
March 6th, 2008, 11:48 PM
dont forget the buttload of requirements
sudo apt-get install build-essential libgtk2.0-0 libgtk2.0-dev libglade2-0 libglade2-dev pkg-config
maybe libc6-dev too
dondad
March 7th, 2008, 12:31 AM
First:
Next:
Then you can compile the programs per the instructions.
Thank you. Worked for me. I have it running. I sure did miss it ;-)
dondad
March 7th, 2008, 12:38 AM
SVN has new btnx and btnx-config in trunk.
Please test them extensively. And if someone is able to test it with a 64-bit OS, I would be very interested to hear if it worked or not. Some bit-sensitive things needed changes.
Thanks. This program is at the very top of my list for "must haves" The time and effort that you put into this is much appreciated.
daou
March 7th, 2008, 08:32 AM
Dao, you mentioned previously that you might be rewriting btnx in C++. Any progress with this?
Also, how hard would it be to integrate btnx-config into a tab in Mouse Preferences? I was thinking about a basic interface similar to the one in this mock-up, with an advanced mode check box to pull up the full interface.
This would allow a lot of people to find btnx and btnx-config who wouldn't have even known about them otherwise.
Also, for previously detected buttons, how about auto-highlighting the detected button in the list?
I know that some of this would necessitate some radical changes, but total adoption of btnx and btnx-config won't be accomplished until people can find and use them intuitively.
BTW, thanks again for all your vision and hard work!
The C++ version has been frozen. I simply don't have time to do it right now. Hopefully I will be able to continue it because it would allow some nice additions to btnx (or at least make it easier to include them).
About integrating btnx-config to the mouse tab: it can be done with enough work. But there are a few problems which are mostly related to user permissions. First, the program would not be able to read the mouse input handlers because they require root permissions. This is one reason why you need to run btnx-config as root. It's a smart layer of security, because for example key loggers could easily read your keyboard as well. So this means the button detection would have to be run as root.
If those preferences use btnx to send the events, then some changes need to be made so each user can have their own btnx configuration in their home directory. This leads to another problem. btnx requires root permissions to run, so it would have to be started as a daemon during boot (like it is now). But btnx has no way of knowing when a user logs in and when a user configuration needs to be loaded.
This would need something like dbus (or unix domain socket). So when a user logs in, they can launch an applet or other startup program to make btnx load the user's configuration through interprocess communication.
One thing. The button detection in btnx-config is not absolutely necessary. The mouse detection is, but USB mice report what buttons they have. The button detection makes the buttons much more easy to manage (for the user and the program).
From the user's point of view, they are able to name the buttons so they know exactly what buttons they are editing. For 3 button mice, it's not a problem because all mice are similar (left, right, middle). But as you start getting 5 or more, just a number does not help because the buttons might be anywhere and look like anything. Even if you detect and highlight the button, you will forget after one hour or a day what button 10 or 11 did.
Also, it makes it easier when troubleshooting is necessary. One problem is mice with cruise control or smart scroll, because they send 2 different button codes at once.
As for bluetooth, I'm not too familiar how Linux handles them. If the input handlers are similar to the normal ones btnx uses, then it shouldn't be a problem at all.
daou
March 7th, 2008, 08:47 AM
So I figured out how to use SVN to retrieve the latest trunk of btnx. Both programs compiled and installed without incident. So far, so good. The next step was to recognize all of my mouse buttons and btnx-config found them all! This is a major improvement over the released build.
I have a Logitech MediaPlay mouse that has volume up/down, song forward/back, pause/play, and browser forward/back buttons. I was able to get the browser forward and back buttons set without any problem and now I can browse with them in FF. The problem is with the rest of the buttons. The volume up and down buttons work but they only have three levels: mute, 45%, and 90%. I have them mapped to KEY_VOLUMEUP and KEY_VOLUMEDOWN, respectively. I have played with the delay rate to no avail. Under Gutsy I had a bit more granularity in my volume, but not as much as in Windows. Force immediate release doesn't do much either. Any suggestions?
I have the media button programmed to launch "/usr/bin/banshee" as UID1002. Banshee launches with a Dbus error. I changed the command line to "dbus-launch /usr/bin/banshee" but Banshee never started. Are you fully exporting the environment when running these commands? This may be the problem.
The Next Song and Previous Song buttons do not work at all.
This is my configuration file:
You are making headway on Hardy. I can use a few featues of the mouse, but it will not remotely control the media players on the machine like it did so easily with Gutsy. Let me know when I should try a new trunk.
I found a bug today related to the Hardy fix in btnx. The updated version is in SVN (btnx-config has not changed). For me, it attempted to press a button 20 times before stopping. I didn't catch it at first because it didn't do a separate button release between the presses.
For the program launch, it doesn't really set the environment correctly. This is one thing I'm working on. Instead of requiring a UID for the process, a user name will be supplied. Then btnx launches the process with su, changing to the user with the user name. This should fix most problems with command execution. You can already try the current workaround:
Make a script in your home directory containing the su command to launch your program.Ex (replace user_name with your user name):#!/bin/bash
su -c "/usr/bin/firefox -new-tab http://www.google.com/" user_name
Make the script executable with chmod and test it from command line as root.
In btnx-config, set UID to zero, and execute command to the full path of the script (ie /home/user/btnx_exec_script)What is the problem with the next and prev song buttons? Not detected, or btnx doesn't do anything with them?
By the way, if you want to easily update btnx sources as I commit new changes, you should use the checkout command instead of export:
svn checkout http://svn.ollisalonen.com/btnx/trunk
Then you can simply use "svn update" in the trunk directory to update your sources.
daou
March 7th, 2008, 08:50 AM
First time Btnx user. I compiled from source. btnx rev 124, config rev 112.
System: Hardy 6 + updates, AMD64, 64bit, Logitech G5
Total success, everything went fine.
Suggestion: change "no valid pipes from pid" to "please run as root"
Good to hear things are working in 64-bit. The warning message is not directly related to not running as root. It is a side-effect, but can happen as a result of other problems as well. But I will look at it and think about the change.
daou
March 7th, 2008, 08:53 AM
Thanks. This program is at the very top of my list for "must haves" The time and effort that you put into this is much appreciated.
Thanks for testing the changes as well. It's good to have btnx ready early before the Hardy release in April. Thanks to everyone bringing the problem to my attention, and for your patience waiting for the fix.
daou
March 7th, 2008, 08:55 AM
I already posted this above, but it was embedded in a long message:
btnx SVN has a fix for a bug related to the earlier Hardy fix. Update even if you don't have problems (it will cause problems during command execution at least).
milliman
March 7th, 2008, 01:53 PM
Daou:
Thanks for the quick fix for the volume control. It works great. I can at least control my volume properly. I thought that I saw multiple clicks being sent.
As for the shell command to start banshee, it really doesn't work because banshee uses dbus. The problem with using the "su" command is that the DBUS_SESSION_BUS_ADDRESS environment variable is not passed along since the btnx daemon is running as root. If my shell script contains:
su -c "/usr/bin/banshee" user_name
and I run it from a terminal, then banshee starts up properly with dbus. If I invoke it through btnx where it is run as root so I don't have to enter a password, then banshee starts with a dbus error because the DBUS_SESSION_BUS_ADDRESS variable is not passed from my current session.
The other option is to change the command to
su -c "dbus-launch /usr/bin/banshee" user_name
Banshee excutes properly, but leaves around processes when I kill the program. Of course, I could get the PID of the two processes and kill them when banshee terminates, but that is not very clean.
Ideally I would like banshee to start with KEY_MEDIA, but that does not work for some reason. The next best solution is to run it as a command under my current user environment. As you discussed in the note on conversion to C++, that would require a significant rewrite to have the btnx daemon recognize the current user it runs under and provide the same environment. The problem was that just using the banshee command worked under Gutsy. Either something changed in Hardy or Banshee.
What are your thoughts? Perhaps you have better insight into a solution. My *NIX programming experience is over a decade old, and concepts like dbus are new to me.
The pause/play, next song, and previous song buttons don't work when I have them assigned to KEY_PLAYPAUSE, KEY_NEXTSONG, KEY_PREVIOUSSONG, repectively. I assume that you have those keycodes mapped to the XF86Free keys. Perhaps it is really an X issue more than a btnx. Once again it worked under Gutsy. Under Keyboard Shortcuts they are defined as the keycodes and not the XF86Free shortcuts. I tried disabling them, but it didn't work. Maybe there is a file I could modify to replace the hexcode with the proper shortcut.
Keep those trunks coming, and thanks for the shorter way to get those trunks.
Mark
milliman
March 7th, 2008, 02:31 PM
I remapped the keybindings in Gnome using XF86AudioPlay, XF86AudioMedia, XF86AudioNext, XF86AudioPrev for the play/pause, Media, >>, and << buttons, respectively. Didn't work.
Just thought I would let you know.
milliman
March 7th, 2008, 05:36 PM
All of my buttons now work with Banshee. I am not sure if a single one of these things fixed the problem or all of them, but the Media, Play/Pause, Song Forward, and Song Back buttons now work. To get it to work I did the following:
Deactivated and activated the Multimedia Keys plugin in Banshee
Mapped the XF86 actions to the keys in Keyboard Shortcuts
Used xmodmap to map the keycodes to the XF86 actions
After restarting X and logging in, I could start Banshee with the Media key, play/pause selections, skip forward and back songs. I'm not sure why this works. Then again I don't understand how the key mappings and bindings work in Linux and X11. It seems convoluted and layered to me. In any case, I now have full use of my MediaPlay mouse.
:guitar:
milliman
March 9th, 2008, 06:05 PM
Daou:
There still may be some strangeness in the btnx trunk with Hardy and Banshee. I have to restart the btnx daemon, deactivate, and reactivate the multimedia extensions before they work. I cannot tell you whether it is definitely a btnx or Banshee problem. Sorry. :(
Mark
Tristan Schmelcher
March 10th, 2008, 01:03 AM
FYI,
I was unable to get btnx to work for me. I have a Logitech MX Revolution on a Dell XPS M1710 laptop (which of course also has a touchpad, plus an old wired USB mouse). btnx only recognized four of the buttons: wheel up/down and tilt left/right. All other buttons were unrecognized (although it did detect the second handler when I pressed the Search button, which is odd ...), and I'm sure I didn't have any conflicting xorg.conf settings or anything.
In the meantime I'm using the old-fashioned evdev approach (e.g., http://ubuntuforums.org/showthread.php?t=277388), which works with all of the buttons (although xmodmap didn't fix the reversed horizontal scroll for me--instead I had to specify HWHEELRelativeAxisButtons in the xorg.conf).
grischa
March 10th, 2008, 09:03 PM
Hello. Installed btnx (0.4.6) lately on Ubuntu 7.10. Very nice piece of work!
At the moment I have only one problem: The wheel of my Logitech MX Revolution is loosing its configured state (configured in the revoco tab).
I think this is happening after screensaving the pc. Perhaps my laptop is falling to some suspend mode and the wheel is not reinitialized correctly after this? Is this a known bug or is there some solution for it?
If I restart btnx from btnx-config, the wheel is reconfigured again. Oh: And it's only the wheel, that is loosing its configuration.
Many thanks for btnx. It's even better then the SetPoint Software I used on Windows before, I think.
blazoner
March 11th, 2008, 02:17 AM
grischa, I think your answer lies with something Daou said in a previous post (http://ubuntuforums.org/showpost.php?p=4222502&postcount=763) on a related subject:
It's strange that some parts work and others don't. However, the revoco issue might be solved by making the mode permanent (I chose to use temporary revoco changes in btnx). I will probably change this in a later version.It's probably a minor change in the code, so he might just take a few seconds and make those changes. Of course I can't speak for Daou, and I can't code, so I may be way off base here....
Guinness70
March 11th, 2008, 09:01 AM
new issue:
everything works fine for the mouse
MS Intellimouse Explorer Wireless
i can program the buttons and that also works fine.
but when in FireFox when i click the small thumbutton (programmed to F5 refresh)
it also gives the menu as when you rightclick
i didnt program that tho and would like it to NOT do that. :)
any idea?
Andeh
March 11th, 2008, 11:38 AM
I Haven't been able to find a fix for this but i've managed to get btnx installed ok and I've checked the installs to make sure they're ok. the problem I'm having is that the btnx-config doesn't recognize my mouse at all :( I'm using a Logitech G5 my aim for using btnx was to get the left/right scroll working as well as my thumb button.
any idea's?
lateralchaos
March 11th, 2008, 12:21 PM
I have a logitech VX Revolution, and am having problems getting the side buttons work. I can assign the zoom slider, but not the side buttons, The back one goes to Button 1 (left click) and the forward one goes to button 3 (right click) I cant figure out how to make xmodmap switch these to different button, as xev ouputs almost identical events. I don't think anybody that has posted in this thread has a VX...so I may be stuck with those few buttons.
Andeh
March 11th, 2008, 10:19 PM
ok, I've finally managed to get btnx to recognize that I've got a mouse installed hehe. had to undo the changes i made to the /etc/xll/xorg.conf and reinstall my graphics drivers for some reason.
So now I've got the thing in the btnx-conf window only none of the bindings i apply seem to work. I've tested this by setting my 4th 5th and 6th mouse buttons to perform standard key strokes i used 'q' 'w' and 'e'. only they do nothing at all when in any program :(
i'm pulling my hair out now i just don't know where to look anymore.
dondad
March 11th, 2008, 10:35 PM
ok, I've finally managed to get btnx to recognize that I've got a mouse installed hehe. had to undo the changes i made to the /etc/xll/xorg.conf and reinstall my graphics drivers for some reason.
So now I've got the thing in the btnx-conf window only none of the bindings i apply seem to work. I've tested this by setting my 4th 5th and 6th mouse buttons to perform standard key strokes i used 'q' 'w' and 'e'. only they do nothing at all when in any program :(
i'm pulling my hair out now i just don't know where to look anymore.
You said you used q w, and e. Are these used singularly, or in combination with alt or ctrl keys? If the secondary keys are used did you choose them also. Did you make sure that the buttons are enabled? I just typed this "q" that you see by pressing a button that I programmed as a q. (both of them).
Andeh
March 11th, 2008, 11:00 PM
You said you used q w, and e. Are these used singularly, or in combination with alt or ctrl keys? If the secondary keys are used did you choose them also. Did you make sure that the buttons are enabled? I just typed this "q" that you see by pressing a button that I programmed as a q. (both of them).
Thanks for the quick reply there dondad. Yea i did have them set as single keystrokes. you will however be pleased to know that i've sorted it out. i decided to use the console to check the installs again and low behold btnx wasn't initializing properly.
i done a complete uninstall of both the btnx and btnx-config re booted my machine and then reinstalled them both. and huzzah! i know have a fully functional mouse :D
I gotta tell you guys, this Ubuntu install is the first time I've used Linux in about 8 years since i had Caldera for about a week before i uninstalled it lol. I'm really enjoying the troubleshooting side of things. I've just got to get my G15 keyboard working up to scratch now. :D :D there's got to be more functionality than a simple clock ;)
blazoner
March 12th, 2008, 02:35 AM
From the OP: NOTE: If some of your mouse buttons send multiple events (like extra middle, right, or left clicks) then refer to the
manual's troubleshooting section on editing you xorg.conf InputSection. Follow it closely!I have a logitech VX Revolution, and am having problems getting the side buttons work. I can assign the zoom slider, but not the side buttons, The back one goes to Button 1 (left click) and the forward one goes to button 3 (right click) I cant figure out how to make xmodmap switch these to different button, as xev ouputs almost identical events. I don't think anybody that has posted in this thread has a VX...so I may be stuck with those few buttons.
I'd be willing to bet that either you are trying to use btnx on top of some previous method you used to get your mouse working, or more likely, your xorg.conf still hasOption "Buttons" "3"in it. This option tells X that your mouse only has 3 buttons, so the X-server tries to fit all of the button presses into the 3 default buttons, while btnx works, the X-server gets in the way.
Please try removing that line from your xorg.conf, and following the troubleshooting section closely.
Then, if that doesn't work out, please let us know so that we can help you further.
milliman
March 12th, 2008, 11:06 PM
I have been occasionally compiling the trunk versions of btnx for the past couple of weeks to test with hardy. I still have to restart the daemon to get Banshee to recognize the multimedia keys. I am hoping that this is a Banshee problem.
Tonight I updated to 133 and ran "make distclean" and I received an error that libdaemon was not found. So I installed libdaemon-dev and I was able to configure, compile, and install the program. Is this a new dependency? I already had libdaemon0 installed.
dr.koljan
March 13th, 2008, 10:17 AM
An annoying bug - if you type something wrong in the Keycode box, you start getting endless error messages and you have to force quit btnx :(
An another one: revoco stops working from time to time, and I have to open btnx and restart it. Is it fixable?
fillintheblanks
March 13th, 2008, 11:59 AM
hello, does this program have a input filter setting to deal with 'sticky keys'
I have a problem right now with the two side buttons, when I press the key sticks and the input doubles or triples sometimes. I end up going back 2 pages instead of 1 its kind of annoying
if there is a solution to this besides opening up the mouse and cleaning it every other week I would love to try it, thanks
ZYV
March 16th, 2008, 05:34 AM
Hello, guys!
I'm a CentOS / RHEL man, but still I think it's preferred to post this thread, instead of contacting the author directly :)
I am trying to get Microsoft Wireless Notebook Presenter Mouse 8000 to work. I am currently messing with btnx-0.4.6. First off, I have succesfully compiled and installed btnx from source since there is no ready to use RPM package, but I run into problems with btnx-config deps. We have older versions of GTK available, and this is not going to change within the RHEL 5 lifespan. So I tried to lower the requirements but autoconf complained about the need to regenerate the whole system, because the versions differ. In vain I tried:
[zyv@pride btnx-config-0.4.6]$ aclocal
/usr/share/aclocal/dynamite.m4:4: warning: underquoted definition of AM_PATH_LIBDYNAMITE
run info '(automake)Extending aclocal'
or see http://sources.redhat.com/automake/automake.html#Extending-aclocal
configure.ac:5: error: Autoconf version 2.61 or higher is required
configure.ac:5: the top level
autom4te: /usr/bin/m4 failed with exit status: 63
aclocal: autom4te failed with exit status: 63
And settled with a dirty ./configure patch =)
[zyv@pride btnx-config-0.4.6]$ diff -u configure configure.old
--- configure 2008-03-10 19:06:06.000000000 +0300
+++ configure.old 2008-01-06 20:17:13.000000000 +0300
@@ -3952,12 +3952,12 @@
pkg_cv_GTK_CFLAGS="$GTK_CFLAGS"
else
if test -n "$PKG_CONFIG" && \
- { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.10.4\"") >&5
- ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.10.4") 2>&5
+ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.10.11\"") >&5
+ ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.10.11") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; then
- pkg_cv_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 >= 2.10.4" 2>/dev/null`
+ pkg_cv_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 >= 2.10.11" 2>/dev/null`
else
pkg_failed=yes
fi
@@ -3970,12 +3970,12 @@
pkg_cv_GTK_LIBS="$GTK_LIBS"
else
if test -n "$PKG_CONFIG" && \
- { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.10.4\"") >&5
- ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.10.4") 2>&5
+ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.10.11\"") >&5
+ ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.10.11") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; then
- pkg_cv_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0 >= 2.10.4" 2>/dev/null`
+ pkg_cv_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0 >= 2.10.11" 2>/dev/null`
else
pkg_failed=yes
fi
@@ -3994,14 +3994,14 @@
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
- GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gtk+-2.0 >= 2.10.4"`
+ GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gtk+-2.0 >= 2.10.11"`
else
- GTK_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gtk+-2.0 >= 2.10.4"`
+ GTK_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gtk+-2.0 >= 2.10.11"`
fi
# Put the nasty error message in config.log where it belongs
echo "$GTK_PKG_ERRORS" >&5
- { { echo "$as_me:$LINENO: error: Package requirements (gtk+-2.0 >= 2.10.4) were not met:
+ { { echo "$as_me:$LINENO: error: Package requirements (gtk+-2.0 >= 2.10.11) were not met:
$GTK_PKG_ERRORS
@@ -4012,7 +4012,7 @@
and GTK_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
" >&5
-echo "$as_me: error: Package requirements (gtk+-2.0 >= 2.10.4) were not met:
+echo "$as_me: error: Package requirements (gtk+-2.0 >= 2.10.11) were not met:
$GTK_PKG_ERRORS
@@ -4063,12 +4063,12 @@
pkg_cv_GLIB_CFLAGS="$GLIB_CFLAGS"
else
if test -n "$PKG_CONFIG" && \
- { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.12.3\"") >&5
- ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.12.3") 2>&5
+ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.12.11\"") >&5
+ ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.12.11") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; then
- pkg_cv_GLIB_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.12.3" 2>/dev/null`
+ pkg_cv_GLIB_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.12.11" 2>/dev/null`
else
pkg_failed=yes
fi
@@ -4081,12 +4081,12 @@
pkg_cv_GLIB_LIBS="$GLIB_LIBS"
else
if test -n "$PKG_CONFIG" && \
- { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.12.3\"") >&5
- ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.12.3") 2>&5
+ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.12.11\"") >&5
+ ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.12.11") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; then
- pkg_cv_GLIB_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.12.3" 2>/dev/null`
+ pkg_cv_GLIB_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.12.11" 2>/dev/null`
else
pkg_failed=yes
fi
@@ -4105,14 +4105,14 @@
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
- GLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "glib-2.0 >= 2.12.3"`
+ GLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "glib-2.0 >= 2.12.11"`
else
- GLIB_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "glib-2.0 >= 2.12.3"`
+ GLIB_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "glib-2.0 >= 2.12.11"`
fi
# Put the nasty error message in config.log where it belongs
echo "$GLIB_PKG_ERRORS" >&5
- { { echo "$as_me:$LINENO: error: Package requirements (glib-2.0 >= 2.12.3) were not met:
+ { { echo "$as_me:$LINENO: error: Package requirements (glib-2.0 >= 2.12.11) were not met:
$GLIB_PKG_ERRORS
@@ -4123,7 +4123,7 @@
and GLIB_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
" >&5
-echo "$as_me: error: Package requirements (glib-2.0 >= 2.12.3) were not met:
+echo "$as_me: error: Package requirements (glib-2.0 >= 2.12.11) were not met:
$GLIB_PKG_ERRORS
Then it compiled without any problem. I think it would be reasonable to lower the requirements to allow it to build at least on RHEL 5 which is now mainstream RH distro.
Then, I run btnx_config and it worked fine. The problem is that not all of the mouse buttons do generate an event. The mouse description is as follows:
I: Bus=0003 Vendor=045e Product=0713 Version=0100
N: Name="Microsoft Microsoft� Wireless Notebook Presenter Mouse 8000"
P: Phys=usb-0000:00:02.0-3.3/input0
S: Sysfs=/class/input/input3
H: Handlers=kbd mouse1 event3
B: EV=f
B: KEY=c0002 400 0 0 1f0001 f80 78400 6639fa d87157ad 8e0000 0 0 0
B: REL=3c3
B: ABS=1 0
Everything works apart from two presentation and one play/pause buttons on the bottom of the mouse. That would be a catastrophe, but luckily their neighbor volume up/down buttons work and I mapped them as LEFT and RIGHT to use with KPDF and friends.
I tried listening to sudo cat /dev/input/event3 | hexdump and in fact it does not produce anything at all when those buttons are pressed. Is there anything I can do to somehow try make it work???
blazoner
March 17th, 2008, 01:40 AM
Try running xev, and see what you get from those buttons.
Remember to check out the Troubleshooting section (http://www.ollisalonen.com/btnx/man/x868.html#troubleshoot-id-conflict) of the btnx manual.
ZYV
March 17th, 2008, 04:33 AM
Yep, I checked both of them before posting. xev does not show anything at all when those buttons are pressed and I didn't install anything like evdev etc.
effenberg0x0
March 17th, 2008, 06:11 PM
Hi, I am trying to make a Microsoft Comfort Optical Mouse 3000 work with Ubuntu Hardy Heron. The mouse works for basic functions using just about any xorg.conf setting (ImPS/2, ExplorerPS/2, AUto, etc). What bothers me is that I have never managed to make the tilt wheel work. It's weird: When I press it right or left, X restarts. I can't find a single error message on dmesg or /var/log/Xorg.0.log.
I gave up using other recommended xorg settings for this mouse and adopted the basic ones recommended at bntx manual troubleshooting section. Please see the attached xorg.conf so you see all I have tried: It is all there commented out. I have also attached the output of cat /proc/bus/input/devices.
However, even using this basic settings, X restarts as I move the tilt wheel right or left.
When I try to make btnx-config autodetect my mouse, no matter how much time I move the mouse and press buttons it doesn't detect it. And if I move the tilt wheel X restarts.
effenberg@effenberg-mobile:~$ cat /proc/bus/input/devices
I: Bus=0003 Vendor=045e Product=00d1 Version=0111
N: Name="Microsoft Microsoft Optical Mouse with Tilt Wheel"
P: Phys=usb-0000:00:10.0-1/input0
S: Sysfs=/devices/pci0000:00/0000:00:10.0/usb1/1-1/1-1:1.0/input/input2
U: Uniq=
H: Handlers=mouse1 event2
B: EV=17
B: KEY=170000 0 0 0 0 0 0 0 0
B: REL=1c3
B: MSC=10
effenberg@effenberg-mobile:~$ lsmod | grep uinput
uinput 10240 0
effenberg@effenberg-mobile:~$ uname -a
Linux effenberg-mobile 2.6.24-12-generic #1 SMP Wed Mar 12 23:01:54 UTC 2008 i686 GNU/Linux
Anyone has any idea what I could try?
Thanks,
Effenberg
nesl247
March 19th, 2008, 10:27 PM
I still can't get this to work. I'm using alpha 6 with all updates, and btnx 0.4.7. I'm using the example xorg.conf from the trouble shooting section.
And how come you don't try and get this to work with evdev? Everything I've read is that it is the future style of mouse drivers..
Edit: Just realized, I don't think mx revolution is going to ever work with btnx anymore. The only way to get the buttons to start being seen is to use evdev.
dondad
March 19th, 2008, 11:54 PM
I still can't get this to work. I'm using alpha 6 with all updates, and btnx 0.4.7. I'm using the example xorg.conf from the trouble shooting section.
And how come you don't try and get this to work with evdev? Everything I've read is that it is the future style of mouse drivers..
Edit: Just realized, I don't think mx revolution is going to ever work with btnx anymore. The only way to get the buttons to start being seen is to use evdev.
What type of system are you running it on? I am using an mx revolution and it is working fine on both Gutsy and Hardy with all of the updates. I am on a Dell XPS 410
ZYV
March 20th, 2008, 02:52 AM
Hmm... maybe evdev is also the way to go for me with my Wireless Presenter? But I am to sure it's going to work for USB mouse which is not always present.
TekNullOG
March 20th, 2008, 03:58 PM
I too got this message: "Media change: please insert the disc labeled (...)"
But thanks to this post, it's working now:
You could delete CD-ROM from Synaptics, so it wouldn't try to use CD-ROM anymore as repository holder.
Thanks! I look forward to playing with this!
I spent the night setting up my friend's mouse. Now, it is my turn to have fun!
LtPitt
March 20th, 2008, 08:44 PM
It's just... GREAT!
And my only chance to use logitech revolution in linux!
BRAVO!
How can I mmmh...
Bind correctly every button?
I mean I got the button recognized but I'd like to assign lateral buttons for "forward" and "back" in browser or (much more important) to "turn" the compiz cube...
But I don't know what are the buttons name...
In compiz configuration page I tried to write "button5" or 6 or 7 and so on but I had no look...
Forgive my noob question =_=
LavaWarrior
March 21st, 2008, 04:02 AM
I need some help, i have an MX Revolution, When i go to scroll with the scroll wheel in firefox, it doesn't scroll, instead, it will go back a page, or forward a page. This happened even before i tried btnx, and i don't quite understand how to get btnx to work properly. I really would like to get the full functionality of my mouse. Or at least get the scrolling back.
Edit: I think for some reason, instead of the scroll wheel moving it up and down, it only moves it side to side. Anybody know how to fix this?
blazoner
March 21st, 2008, 10:42 PM
I still can't get this to work. I'm using alpha 6 with all updates, and btnx 0.4.7. I'm using the example xorg.conf from the trouble shooting section.
And how come you don't try and get this to work with evdev? Everything I've read is that it is the future style of mouse drivers..
Edit: Just realized, I don't think mx revolution is going to ever work with btnx anymore. The only way to get the buttons to start being seen is to use evdev.
It seems to me that you likely have some old configuration settings that are interfering with btnx. i.e. evdev settings, etc.
Also, make sure you didn't change the "identifier" value in your xorg.conf, because that'll really screw things up for you.
I got the button recognized but I'd like to assign lateral buttons for "forward" and "back" in browser or (much more important) to "turn" the compiz cube...
But I don't know what are the buttons name...
In compiz configuration page I tried to write "button5" or 6 or 7 and so on but I had no look...
It seems that you are looking at the situation backwards. Instead of making the applications bind to the buttons, make the buttons bind to the application.
For example, instead of jumping into "about:config" and trying to re-define what makes your browser go forward and backward by setting forward to "button 6" or "button 7", use the shortcuts that are already there, and bind your buttons with btnx-config, so that pressing "scroll-wheel right" is bound to KEY_RIGHT with KEY_LEFTALT as it's modifier. This is the shortcut for going forward in history that FireFox already uses.
In compiz-config, you use the same principle. Either set the correct keycodes in btnx-config, or, if that causes conflicts with other programs, etc, set the key-binding in compiz-config to something that doesn't conflict, such as BTN_MIDDLE with the modifiers KEY_LEFTALT, KEY_LEFTCTRL, and KEY_LEFTMETA (Windows Key), and set the button in btnx-config to match.
I avoid using KEY_RIGHTCTRL because it might conflict with VirtualBox.
I need some help, i have an MX Revolution, When i go to scroll with the scroll wheel in firefox, it doesn't scroll, instead, it will go back a page, or forward a page. This happened even before i tried btnx, and i don't quite understand how to get btnx to work properly. I really would like to get the full functionality of my mouse. Or at least get the scrolling back.
Edit: I think for some reason, instead of the scroll wheel moving it up and down, it only moves it side to side. Anybody know how to fix this?
several things come to mind:
1.) Conflicts from a previous setup (Specifically sending an ALT+RIGHT and an ALT+LEFT) Please see the troubleshooting section of the btnx manual (http://www.ollisalonen.com/btnx/man/x868.html#troubleshoot-id-conflict) for advice on how to proceed.
2.) Is it possible that you changed from the default bindings in firefox?
3.) If it only happens with your MX Revolution, then it may be defective, but this is not very probable.
Hmm... maybe evdev is also the way to go for me with my Wireless Presenter? But I am to sure it's going to work for USB mouse which is not always present.
evdev is probably not going to solve the problem you have described. It can only deal with what it sees, just like btnx.
I'm sure there is a solution for using btnx-config to detect those stubborn buttons, but I'm also sure I don't know what it is.
Unfortunately, it looks as if we'll have to wait for Daou to chime in on that one.
blazoner
March 22nd, 2008, 12:24 AM
I figured it's time for an updated listing for button assignments and key combinations. The new version should be a bit clearer than the old.
The references to button origins have been updated to where the placement should have been based upon the ergonomics of the MX Revolution. (Left and Right now correspond to the physical realities, and Left to Right document flow.)
Here is the update:
==================================================
Left Click.
Do NOT enable!
You don't want to send extra events when pressing this button!
keycode = BTN_LEFT
Right Click.
Do NOT enable!
You don't want to send extra events when pressing this button!
keycode = BTN_RIGHT
Wheel Scroll Up.
Do NOT enable!
You don't want to send extra events when pressing this button!
keycode = KEY_SCROLLUP
Wheel Scroll Down.
Do NOT enable!
You don't want to send extra events when pressing this button!
keycode = KEY_SCROLLDOWN
==================================================
Mouse Wheel Click. Default behavior.
No need to enable unless mapped to a different button.
(Originally Search Key on MX Revolution)
keycode = BTN_MIDDLE
Alt+Right. i.e. Firefox forward
(Originally Mouse Wheel Right on MX Revolution)
keycode = KEY_RIGHT
mod1 = KEY_LEFTALT
Alt+Left. i.e. Firefox backward
(Originally Mouse Wheel Left on MX Revolution)
keycode = KEY_LEFT
mod1 = KEY_LEFTALT
Ctrl+Alt+Left. For switching workspaces to the Left.
(Originally Thumb Wheel Backward on MX Revolution)
keycode = KEY_LEFT
mod1 = KEY_LEFTCTRL
mod2 = KEY_LEFTALT
Ctrl+Alt+Right. For switching workspaces to the Right.
(Originally Thumb Wheel Forward on MX Revolution)
keycode = KEY_RIGHT
mod1 = KEY_LEFTCTRL
mod2 = KEY_LEFTALT
Alt+LeftMouseButton. For dragging windows.
(Originally Thumb Wheel Press on MX Revolution)
keycode = BTN_LEFT
mod1 = KEY_LEFTALT
Ctrl+PageDown. For moving Right through tabs (Firefox, gnome-terminal, etc.)
(Originally Thumb Button Forward on MX Revolution)
keycode = KEY_PAGEDOWN
mod1 = KEY_LEFTCTRL
Ctrl+PageUp. For moving Left through tabs (Firefox, gnome-terminal, etc.)
(Originally Thumb Button Backward on MX Revolution)
keycode = KEY_PAGEUP
mod1 = KEY_LEFTCTRL
Play/Pause. Sends a play/pause key event
keycode = KEY_PLAYPAUSE
Volume Up. Sends a volume up key event
keycode = KEY_VOLUMEUP
Volume Down. Sends a volume down key event
keycode = KEY_VOLUMEDOWN
Volume Mute. Sends a volume mute key event
keycode = KEY_MUTE
Search. Sends a search command?
(I haven't verified this shortcut)
keycode = KEY_F5
Email. Sends a keyboard mail command
keycode = KEY_MAIL
XF86Forward. i.e. Konqueror forward
keycode = KEY_FORWARD
XF86Back. i.e. Konqueror back
keycode = KEY_BACK
Next Song.
keycode = KEY_NEXTSONG
Previous Song.
keycode = KEY_PREVIOUSSONG
==================================================
blazoner
March 22nd, 2008, 04:39 AM
About integrating btnx-config to the mouse tab: it can be done with enough work. But there are a few problems which are mostly related to user permissions. First, the program would not be able to read the mouse input handlers because they require root permissions. This is one reason why you need to run btnx-config as root. It's a smart layer of security, because for example key loggers could easily read your keyboard as well. So this means the button detection would have to be run as root.
Why not run mouse/button detection as root, with a gksudo-style login prompt. Detect the mouse, and list the buttons as reported by the mouse. Upon "button detection", automatically highlight the button name for replacement with a user supplied name.
If those preferences use btnx to send the events, then some changes need to be made so each user can have their own btnx configuration in their home directory. This leads to another problem. btnx requires root permissions to run, so it would have to be started as a daemon during boot (like it is now). But btnx has no way of knowing when a user logs in and when a user configuration needs to be loaded.
Maybe an added layer of security where the base btnx daemon reads the mouse input handlers with root privileges, and forwards only the ones for the detected buttons. Then add a user-level interface allowing for simple juggling of key combinations, revoco, and end-user configuration switching, while in depth functions such as command execution can only be accomplished as root. Divorcing the daemon from direct user contact seems to me to be a good idea, while allowing for increased flexibility.
EDIT: I think command execution should only be allowed based upon the UID of the user.
This would need something like dbus (or unix domain socket). So when a user logs in, they can launch an applet or other startup program to make btnx load the user's configuration through interprocess communication.
Also, please consider creating a default UID that would be permanently inactive/null. This would require the user to consciously choose a good UID, not just blindly click through letting commands be executed as root.
milliman
March 22nd, 2008, 01:21 PM
I am totally at a loss. Btnx no longer works with Banshee and Rhythmbox. I built my profile as root, the daemon is running with the events set, xmodmap maps the keys, and the events are set in Keyboard Shortcuts. I have verified that the events are correct through xev, but they don't do anything when I press the buttons on the mouse with the media player.
All of the other buttons work well. I can raise and lower the volume and go backwards and forwards in Firefox and Nautilus. It is just that the multimedia keys are not being recognized by the media players. Daou, any idea what could be going on? I have the latest trunk running. Btnx worked for a while then Ubuntu bumped Banshee to 0.13.2.
Thanks
blazoner
March 22nd, 2008, 01:50 PM
milliman, could you try disabling those specific buttons? Previously, someone reported that some media buttons were being picked up directly by some apps. This might be the case here, and if so, having the keys enabled might conflict.
I hope this helps.
milliman
March 22nd, 2008, 07:10 PM
blazoner:
Thanks for the replay. Disable the keys how? In the Keyboard Shortcuts or with xmodmap. I set them with xmodmap because they weren't originally being seen by any apps. Please inform as to which application.
Thanks
EDIT: I stopped remapping the keys with xmodmap and reset the shortcuts in Keyboard Shortcuts then my Play/Pause, Skip Forward, and Skip Backward buttons worked. Now if I can just get the Media button to work. xev says that pressing it is the same as button 2 which Compiz maps. I turned off the mapping and Compiz but it did not work. I am wondering if Nautilus starts the default media player when seeing the XF86AudioMedia key. I tried running a command as root and my UID but DBus does not start so I can't use my other buttons. Closer, but stumped.
EDIT: I remapped the Media button in btnx-config to RightAlt-F12 and set the Keyboard Shortcut for Launch Media Player to Meta5-F12. Still did not work. I changed the default media player to Rhythmbox but nothing happened. I am beginning to wonder if the Keyboard Shortcuts have a bug.
blazoner
March 23rd, 2008, 02:10 AM
Thanks for the replay. Disable the keys how? In the Keyboard Shortcuts or with xmodmap. I set them with xmodmap because they weren't originally being seen by any apps. Please inform as to which application.
ThanksI meant buttons, not keys. Go into btnx-config and uncheck the "Enabled" check-box in the General section of Button properties. This will keep btnx from sending events of it's own when you press the buttons, allowing you to see what the player(s) will do with just the raw info from the mouse. This is easy to reverse by re-checking the option in btnx-config.
EDIT: I stopped remapping the keys with xmodmap and reset the shortcuts in Keyboard Shortcuts then my Play/Pause, Skip Forward, and Skip Backward buttons worked. Now if I can just get the Media button to work. xev says that pressing it is the same as button 2 which Compiz maps. I turned off the mapping and Compiz but it did not work. I am wondering if Nautilus starts the default media player when seeing the XF86AudioMedia key. I tried running a command as root and my UID but DBus does not start so I can't use my other buttons. Closer, but stumped.Button 2 is a right-click. If your media button is producing this, generally the first steps would be to either remap your buttons with xmodmap, which in your case seemed to be disastrous, or to do something about the number of buttons that your xorg.conf is reporting to your WM.
In the xorg.conf file is a line that says
Option "Buttons" "3"
this is stating that your mouse only has 3 buttons to work with, and causes your WM to try to translate all button presses into the first 3 buttons.
In my xorg.conf section, I have removed the entire line with no adverse effects. I have also seen others report some success with changing this number to the actual number of buttons on their particular mouse.
EDIT: I remapped the Media button in btnx-config to RightAlt-F12 and set the Keyboard Shortcut for Launch Media Player to Meta5-F12. Still did not work. I changed the default media player to Rhythmbox but nothing happened. I am beginning to wonder if the Keyboard Shortcuts have a bug.How about remapping the media button directly as a command execution event? Just by typing the full path to your rhythmbox install.
Hope all this helped! :)
milliman
March 23rd, 2008, 10:03 AM
If I try to run a command like /usr/bin/banshee the command executes but the program does not work properly. If I run it as root, then it does not use my settings and music database. If I run it under my UID, then I receive a dbus error and the buttons don't work. I tried a shell script executing it with su but that did not work either. Any suggestions would be helpful.
blazoner
March 23rd, 2008, 03:31 PM
Sounds like a Banshee problem. Unfortunately, that's beyond my experience.
milliman
March 23rd, 2008, 07:00 PM
Blazoner:
The button recognition with multimedia keys is most likely a Hardy problem. The command launching issue is really a cross between Banshee and btnx. Since the btnx daemon does not spawn a subprocess under the user's ID, it executes as root or from root without inheriting any of the user's session parameters. This causes programs that use dbus and other user spawned processes to fail. btnx should seriously consider launching the programs in the user's current session. This would fix mine and other people's problems.
I still love the program. It is the only thing that makes my Logitech MediaPlay mouse work with Linux.
blazoner
March 24th, 2008, 12:52 AM
milliman,
Actually, it sounds like a part of the problem I was attempting to address in this thread (http://ubuntuforums.org/showpost.php?p=4563053&postcount=861). I really think that divorcing the processes of button detection and reading input handlers from the other functions of btnx is an important step, especially in network environments where mass roll-outs of hardware and maintenance of security protocols are already in a precarious balance.
Having all workstations with a specialty mouse setup running all of btnx at a root level of security seems like a nightmare ready to happen.
Being able to drop in the btnx daemon as a root process that the user never has to deal with directly, but instead has an interface that said user can customize to do anything he/she wants to and has authorization for, seems a valid layer of security.
Of course, this is all conjecture, and I'm no expert at any level, but it seems logical to me.
milliman
March 24th, 2008, 01:03 AM
blazoner:
We are pretty much in agreement. It is one thing to install btnx on this box where it is my toy and I am the administrator, but this program will never fly in a corporate environment. I work with some pretty anal retentive IT people in the telecom industry where they do not give anyone admin access unless there are all sorts of approvals. They have good reasons most of the time for their behavior.
btnx would never be installed in these enviornments unless under a generic profile that fits only one type of mouse. The architecture and security model should be reviewed with these situations in mind before it is included in any Linux distro.
Having said that, btnx is one of the most vital applications on this machine. If someone comes in my office or the phone rings, I just hit the pause button or adjust the volume. I love it!
JayBee808
March 25th, 2008, 02:53 AM
Hello,
I just installed Hardy and the latest version of btnx. I have two other Gutsy installations on the same computer, and I am using a Logitech mx-500 mouse.
In the Gutsy installations I was able to get the previous versions of btnx to work perfectly. I have not upgraded them to the latest yet.
In Hardy, I am getting two actions from the "Cruise Up" button. It is scrolling and it does a page back in Firefox. I had this problem in Gutsy for a while, but it seems like an xorg.conf change fixed it. I have the same settings for Gutsy and Hardy:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/psaux"
Option "Protocol" "auto"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "no"
Option "Buttons" "10"
EndSection
=========================================
I would appreciate any suggestions or advice to get this working again. Thanks!
jb
blazoner
March 25th, 2008, 04:07 AM
Hello,
I just installed Hardy and the latest version of btnx. I have two other Gutsy installations on the same computer, and I am using a Logitech mx-500 mouse.
In the Gutsy installations I was able to get the previous versions of btnx to work perfectly. I have not upgraded them to the latest yet.
In Hardy, I am getting two actions from the "Cruise Up" button. It is scrolling and it does a page back in Firefox. I had this problem in Gutsy for a while, but it seems like an xorg.conf change fixed it. I have the same settings for Gutsy and Hardy:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/psaux"
Option "Protocol" "auto"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "no"
Option "Buttons" "10"
EndSection
=========================================
I would appreciate any suggestions or advice to get this working again. Thanks!
jbThere were apparently some changes to how Hardy handles event handlers. I'd suggest upgrading to the newest SVN.
As for the dual events from the smartscroll buttons, the most likely answer is lomoco. Searching the forums to "show post" for posts with "lomoco btnx" should get you started.
I hope this helps.
blazoner
blazoner
March 25th, 2008, 04:47 AM
Daou,
I've done a little digging into BlueTooth mouses, and it seems that the problem I was previously referring to can be summed up this way:
BlueTooth mouses don't show up as USB devices. The BlueTooth dongles do, but with both dongles and on-board receivers, devices are referenced only by their MAC addresses. I'm certain the input handlers would be the same, but detection would likely be problematic.
Just thought I'd share.... :)
blazoner
March 27th, 2008, 02:00 AM
I was thinking, (I know, that's dangerous..... ;) )
Since USB mouses report their buttons, I don't see a reason for making button naming a root process. Rather, why not have a btnx-detect process that is run once as root, then have a user-level btnx-config that btnx reports the button presses to. This would avoid duplication of work for the process, and the end-user. And again, the end-user can do absolutely anything their access would allow.
In summary:
btnx-detect = a one time root process for initial detection of the mouse
btnx-root-daemon = a root process that listens to event handlers, and publishes them directly to the end-user application
btnx = much the same as now, but listening to btnx-root-daemon instead of the event handlers, thereby not needing to be a root process
btnx-config = much the same as now, but not a root process. Integrated into mouse properties, with command execution based upon UID
I know all this would require massive changes, but it would probably make the whole process more secure.
Feel free to pick the idea apart....
Jorenko
March 28th, 2008, 08:04 AM
I've upgraded to hardy, and to the 0.4.7-1.deb packages of btnx and btnx-config, and I'm having the problem where X still seems to be intercepting my buttons;I use my thumb buttons for tab switching, but firefox is grabbing back/forward from them as well, which means I can't go right one tab without going back on the original tab. Very annoying.
The only suggestion I've seen so far is to go to 0.4.7, but as I said I've done that. Any other ideas?
scotthep
April 2nd, 2008, 11:08 AM
And here's what I did.....
For anyone reading through here and getting a bit confused I thought I'd attempt to write down what I did to make btnx work for me. I have a Logitech MX Revolution that I want Back/FW side buttons to work on. Don't really care about the others but most work from what I can tell. After reading through this post I decided to try the SVN version because I was on Hardy.
First my setup:
- Ubuntu 8.04 "Hardy Heron" Beta 1 (not alpha) x86_64 (64bit)
- AMD 3800+ X2
- Nvidia 7800GT x 2 (SLI) - not sure if this matters I'm using the Nvidia drivers
- X.Org X Server 1.4.0.90
- Kernel 2.6.24-12-generic (default)
- Logitech MX Revolution
- Compiz Desktop effects enabled (just in case it matters)
- All updates run as of 04/02 (morning)
- btnx svn sources (v0.4.8) (svn revision 133)
- btnx-config svn sources (v0.4.7) (svn revision 113)
Input section of my xorg.conf:
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "CorePointer"
Option "Protocol" "ExplorerPS/2"
Option "Device" "/dev/input/mice"
Option "Emulate3Buttons" "yes"
Option "ZAxisMapping" "4 5"
EndSection
Steps:
1) created a source code directory for source code within my home directory. Despite how nice Ubuntu handles packages via apt-get I seem to keep needing/wanting things installed from source
mkdir ~/source-code
2) Install subversion
sudo apt-get install subversion subversion-tools
3) change to the newly created directory and create the directories for the btnx source code. And "checkout" the SVN source code. (Using checkout allows for future updates, from what i read here in these posts)
cd ~/source-code
mkdir btnx
cd btnx
svn checkout http://svn.ollisalonen.com/btnx/trunk
cd ..
mkdir btnx-config-trunk
cd btnx-config-trunk
svn checkout http://svn.ollisalonen.com/btnx-config/trunk
cd ..
4) Lets grab a few dependencies before we compile. I had most of these from doing other builds, but we'll need all of these in order to continue. I use checkinstall, whenever possible, for building from source for easy removal and making sure Synaptic is updated with what I have installed. (libdaemon-dev was required for this version of SVN source see CHANGELOG for details)
sudo apt-get install build-essential libgtk2.0-0 libgtk2.0-dev libglade2-0 libglade2-dev pkg-config libdaemon-dev checkinstall
5) Time to compile the code for btnx. (NOTE: creation of the /etc/btnx was required before checkinstall)
cd ~/source-code/btnx/trunk
sudo modprobe uinput
sudo ./configure
sudo make
sudo mkdir /etc/btnx
sudo checkinstall
Checkinstall asks for a version number or rather seems to complain about a non-compliant debian version number. I just manually entered 0.4.8.
Check install comes back asks tells you the details of the package your about to make. You'll want to change the "summary" and the "name" to something descriptive. Option 1 changes the summary. I used "Button Extension Program". Option 2 changes the name of the package itself. I used "btnx". if You've changed everything correctly you should see something like below.
This package will be built according to these values:
0 - Maintainer: [ root@YOURMACHINENAME ]
1 - Summary: [ Button Extension Program ]
2 - Name: [ btnx ]
3 - Version: [ 0.4.8 ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ checkinstall ]
7 - Architecture: [ amd64 ]
8 - Source location: [ trunk ]
9 - Alternate source location: [ ]
10 - Requires: [ ]
Enter a number to change any of them or press ENTER to continue:
Hit Enter and hope for the best.
You'll want to see something like below:
Copying files to the temporary directory...OK
Stripping ELF binaries and libraries...OK
Compressing man pages...OK
Building file list...OK
Building Debian package...OK
Installing Debian package...OK
Erasing temporary files...OK
Writing backup package...OK
Deleting temp dir...OK
************************************************** ********************
Done. The new package has been installed and saved to
/home/scott/source_code/btnx/trunk/btnx_0.4.8-1_amd64.deb
You can remove it from your system anytime using:
dpkg -r btnx
************************************************** ********************
6) Now we need to compile the code for the btnx-config program
cd ~/source-code/btnx-config-trunk/trunk
sudo ./configure
sudo make
sudo checkinstall
Check your names again:
This package will be built according to these values:
0 - Maintainer: [ root@YOURMACHINENAME ]
1 - Summary: [ Button Extension Config Program ]
2 - Name: [ btnx-config ]
3 - Version: [ 0.4.7 ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ checkinstall ]
7 - Architecture: [ amd64 ]
8 - Source location: [ trunk ]
9 - Alternate source location: [ ]
10 - Requires: [ ]
Enter a number to change any of them or press ENTER to continue:
Hit Enter and you should get something similar:
Copying files to the temporary directory...OK
Stripping ELF binaries and libraries...OK
Compressing man pages...OK
Building file list...OK
Building Debian package...OK
Installing Debian package...OK
Erasing temporary files...OK
Writing backup package...OK
Deleting temp dir...OK
************************************************** ********************
Done. The new package has been installed and saved to
/home/scott/source_code/btnx-config-trunk/trunk/btnx-config_0.4.7-1_amd64.deb
You can remove it from your system anytime using:
dpkg -r btnx-config
************************************************** ********************
7) Now all that should be left if everything went as planned is to go to your Applications/System Tools and click on the btnx program to configure your mouse. I turned on revoco in order for the fast scrolling of the Revolution to be utilized. All buttons were recognized with two exceptions.
Also you may want to copy the created *.deb files to a different location. these can be used again without having to go through the whole recompile
Exceptions/Problems:
1) The top button (behind the scroll wheel) is mapped by default to the Tracker Search tool in Gnome. So during the button detection it kept coming up. BTNX detected the button fine I just had to keep closing the search window that popped up. I haven't went back and remapped that button within Gnome.
2) The middle click from the top scroll wheel didn't get recognized during the button detection, but it seems to wrok fine afterwards.
End result:
I was able to get the main functions I wanted working without much more effort than above. I haven't went into configuring all the extra buttons yet. But the Back/FW side buttons worked great in Firefox immediately after the above steps were taken. I hope this helps someone get their mouse working properly. I wanted to detail everything out step by step so someone could hopefully complete the whole task without having to search this rather lengthy thread.
If you have questions feel free to ask, and I'll do my best although I don't claim to know all that much about what I did above so if someone has something to add feel free.
jamesford
April 2nd, 2008, 11:43 AM
would u consider including pre-made configs for various types of mice ? i think that would be a huge help for new users. i was trying to help a friend set up her mouse (online) but that was rather complicated. maybe users could contribute their configs for whatever mouse they have and these could be included and the most common one or something applied by default, and then the user could choose from other configs, alternatively mod one of them.
or perhaps different configs could be downloaded from a website and loaded into btnx or something like that
just a thought
blazoner
April 2nd, 2008, 01:46 PM
would u consider including pre-made configs for various types of mice ? i think that would be a huge help for new users. i was trying to help a friend set up her mouse (online) but that was rather complicated. maybe users could contribute their configs for whatever mouse they have and these could be included and the most common one or something applied by default, and then the user could choose from other configs, alternatively mod one of them.
or perhaps different configs could be downloaded from a website and loaded into btnx or something like that
just a thoughtThat's how btnx started in the first place, but the amount of effort involved in maintenance and development was horrendous. If you would like to create and host a config list, I'm sure it would be appreciated, but it would also be both rigid and redundant. A better choice for me was to list the individual key-bindings that people have been using successfully.
In fact, please feel free to add to my list if there are any that you are using which I haven't including.
Thanks,
blazoner
daponz
April 2nd, 2008, 03:20 PM
Hi,
Just compiled btnx 0.4.7 and btnx config 0.4.7 on ubuntu hardy 64 bits.
When I try to launch btnx-config from terminal i get a segfault :/
Strace output of btnx-config ends like this:
open("/usr/share/pixmaps/btnx.png/btnx.png", O_RDONLY) = -1 ENOTDIR (Not a directory)
open("/usr/share/pixmaps/btnx.png/btnx.png", O_RDONLY) = -1 ENOTDIR (Not a directory)--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV (core dumped) +++
Process 24231 detached
open("/usr/share/pixmaps/btnx.png/btnx.png", O_RDONLY) = -1 ENOTDIR (Not a directory)
mmap(NULL, 135168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3ebfd74000
mremap(0x7f3ebfd74000, 135168, 266240, MREMAP_MAYMOVE) = 0x7f3eb8ba7000
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV (core dumped) +++
Process 24231 detached
any clue ?
thx
daou
April 3rd, 2008, 07:06 AM
Thanks again blazoner for responding to posts while I've been away.
A quick update: I released btnx v.0.4.8. It is pretty much the same one that has been sitting in the SVN repository for the past two weeks. It includes a libdaemon dependency, which handles a lot of the PID file, signals, and logging much better.
Installation instructions on the first post have been updated for btnx-0.4.8.
daou
April 3rd, 2008, 07:15 AM
Hi,
Just compiled btnx 0.4.7 and btnx config 0.4.7 on ubuntu hardy 64 bits.
When I try to launch btnx-config from terminal i get a segfault :/
Strace output of btnx-config ends like this:
open("/usr/share/pixmaps/btnx.png/btnx.png", O_RDONLY) = -1 ENOTDIR (Not a directory)
open("/usr/share/pixmaps/btnx.png/btnx.png", O_RDONLY) = -1 ENOTDIR (Not a directory)--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV (core dumped) +++
Process 24231 detached
open("/usr/share/pixmaps/btnx.png/btnx.png", O_RDONLY) = -1 ENOTDIR (Not a directory)
mmap(NULL, 135168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3ebfd74000
mremap(0x7f3ebfd74000, 135168, 266240, MREMAP_MAYMOVE) = 0x7f3eb8ba7000
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV (core dumped) +++
Process 24231 detached
any clue ?
thx
It seems that there is an error opening the btnx logo. Note the path "/usr/share/pixmaps/btnx.png/btnx.png". This is incorrect. You have just stumbled upon an at least 6 month old bug ;).
Interesting that no one else has had problems with it earlier. I found the bug and fixed it. It will be released with btnx-config v.0.4.8, which I will release as soon as I get the finished Russian translations from Launchpad. Alternatively, you can get the fix from the SVN repository.
Thanks for bringing this up.
daou
April 3rd, 2008, 07:25 AM
That's how btnx started in the first place, but the amount of effort involved in maintenance and development was horrendous. If you would like to create and host a config list, I'm sure it would be appreciated, but it would also be both rigid and redundant. A better choice for me was to list the individual key-bindings that people have been using successfully.
In fact, please feel free to add to my list if there are any that you are using which I haven't including.
Thanks,
blazoner
I updated the link on the first post to the new list you posted a few weeks ago.
And continuing your answer concerning jamesford's question:
It was very nice before with the ready config files. Two commands and the mouse was working. However, as blazoner mentioned, it ended up being a lot of (mistake prone) work for me to add the mice and their button codes.
Also, as I added more mice, I noticed that it was impossible to keep it fully automatic. Many mice use the same vendor and product IDs which is how btnx detects the mouse. So the user would still have to choose their mouse from a list (in which case they had to know the exact model of their mouse). Other problems also creeped in. For example, the MX Revolution mouse has at least two different revisions with different product IDs. It would end up being confusing to the user to choose from two different MX Revolution configurations.
But I'm considering bringing back the functionality in some form if I have enough time. I will talk about this in a later post that is a reply to blazoner's earlier comment (root button detection, user specific config files).
daou
April 3rd, 2008, 07:30 AM
...
Exceptions/Probelms:
1) The top button (behind the scroll wheel) is mapped by default to the Tracker Search tool in Gnome. So during the button detection it kept coming up. BTNX detected the button fine I just had to keep closing the search window that popped up. I haven't went back and remapped that button within Gnome.
2) The middle click from the top scroll wheel didn't get recognized during the button detection, but it seems to wrok fine afterwards...
Remapping the search button in Gnome should help with the Search tool popup. Also, the middle click probably started working after you used revoco: before revoco, the middle click only switches the mode. When changing to mode with revoco, you can get the middle click to act like a button click again and detect it with btnx (this is done in the mouse firmware).
daou
April 3rd, 2008, 07:31 AM
I've upgraded to hardy, and to the 0.4.7-1.deb packages of btnx and btnx-config, and I'm having the problem where X still seems to be intercepting my buttons;I use my thumb buttons for tab switching, but firefox is grabbing back/forward from them as well, which means I can't go right one tab without going back on the original tab. Very annoying.
The only suggestion I've seen so far is to go to 0.4.7, but as I said I've done that. Any other ideas?
Have you tried editing your xorg.conf file as suggested in the btnx manual troubleshooting section?
daou
April 3rd, 2008, 07:41 AM
I was thinking, (I know, that's dangerous..... ;) )
Since USB mouses report their buttons, I don't see a reason for making button naming a root process. Rather, why not have a btnx-detect process that is run once as root, then have a user-level btnx-config that btnx reports the button presses to. This would avoid duplication of work for the process, and the end-user. And again, the end-user can do absolutely anything their access would allow.
In summary:
btnx-detect = a one time root process for initial detection of the mouse
btnx-root-daemon = a root process that listens to event handlers, and publishes them directly to the end-user application
btnx = much the same as now, but listening to btnx-root-daemon instead of the event handlers, thereby not needing to be a root process
btnx-config = much the same as now, but not a root process. Integrated into mouse properties, with command execution based upon UID
I know all this would require massive changes, but it would probably make the whole process more secure.
Feel free to pick the idea apart....
You've pretty much hit the nail on the head considering what I've been thinking about for later additions to btnx.
btnx-config would be a user application. The "Detect mouse + buttons" would launch what you call btnx-detect, a root process. This detects the mouse and buttons, and writes a configuration file to ie. /etc/btnx/mouse1_config. When a user opens btnx-config, it uses the root owned mouse config file as a skeleton, which the user fills in and saves to his home directory ie. /home/johndoe/.btnx/config1. These skeleton files can also be downloaded from elsewhere for mice that other people have detected. This does bring about its own problems, but it's an idea.
Your suggestion regarding btnx and the btnx-root-daemon is something I haven't thought of before, and I find it quite interesting. It would add a necessary layer of security to things like command execution as spoofed users (ie root). One thing it doesn't prevent, however, is keyloggers. I'll have to think about this more.
Thanks for the suggestions, and keep thinking (no matter how dangerous it might be ;) ).
EDIT: There is a way around the keylogging problem, so perhaps that won't be an obstacle. But these are good ideas. I'm thinking about setting up an idea collaboration environment where we could discuss these things in a more organized way. I have a bad habit of forgetting what has been talked about in this thread because of its size. Maybe a wiki, or if Google has something useful... perhaps Launchpad blueprints. Let me know if you have ideas. As of now I keep everything in a text file in my btnx source directory. Current contents:
btnx:
multiple mice configs
try different configs, do not die immediately if the default mouse is not detected
required for roaming users
integrate btnx & btnx-config into a single packagebtnx-config:
test button for command execution to quickly test a command
change UID to user name, make the command use su to change users
allow multiuser, personal configurations
white logo background
refactor/rewrite in C++ (postponed):
implementing new features is becoming difficult and error-prone, no clear structure
rewrite in C++ will allow easy implementation of handling multiple input devices and a function button.As crazy as it sounds, I will probably have more time to develop btnx in 1.5 months when I'll have a 9-5 job developing for Symbian :) .
daou
April 3rd, 2008, 08:07 AM
Daou,
I've done a little digging into BlueTooth mouses, and it seems that the problem I was previously referring to can be summed up this way:
BlueTooth mouses don't show up as USB devices. The BlueTooth dongles do, but with both dongles and on-board receivers, devices are referenced only by their MAC addresses. I'm certain the input handlers would be the same, but detection would likely be problematic.
Just thought I'd share.... :)
In that case, it would require quite a lot of changes to get bluetooth mice working. Something to keep in mind, but a low priority for now.
daou
April 3rd, 2008, 08:13 AM
blazoner:
We are pretty much in agreement. It is one thing to install btnx on this box where it is my toy and I am the administrator, but this program will never fly in a corporate environment. I work with some pretty anal retentive IT people in the telecom industry where they do not give anyone admin access unless there are all sorts of approvals. They have good reasons most of the time for their behavior.
btnx would never be installed in these enviornments unless under a generic profile that fits only one type of mouse. The architecture and security model should be reviewed with these situations in mind before it is included in any Linux distro.
Having said that, btnx is one of the most vital applications on this machine. If someone comes in my office or the phone rings, I just hit the pause button or adjust the volume. I love it!
I agree here as well. One of the strengths of Linux (and Unix) is the way it is able to handle a multiuser environment, and one where the user and administrator are two different people. btnx does not fit into this picture and it is one thing I have been wanting to fix for some time. Fixing it is definitely a high priority task, but one which needs a lot of time and planning.
daou
April 3rd, 2008, 08:19 AM
EDIT: I think command execution should only be allowed based upon the UID of the user.
Also, please consider creating a default UID that would be permanently inactive/null. This would require the user to consciously choose a good UID, not just blindly click through letting commands be executed as root.
The default null UID is a good idea, but one which will result in a lot of support questions from users. However, I believe in security before usability so this should be implemented.
Can you elaborate on why you think cmd exec should only be allowed based on UID and not user names with su?
daou
April 3rd, 2008, 08:26 AM
The rest of the posts seem to be quite old and I don't know if anyone is waiting for answers to them anymore. If you are still experiencing a problem and posted earlier, please repost with a link to the old post. I will try to help and hopefully solve any remaining issues.
daou
April 3rd, 2008, 11:09 AM
It seems that there is an error opening the btnx logo. Note the path "/usr/share/pixmaps/btnx.png/btnx.png". This is incorrect. You have just stumbled upon an at least 6 month old bug ;).
Interesting that no one else has had problems with it earlier. I found the bug and fixed it. It will be released with btnx-config v.0.4.8, which I will release as soon as I get the finished Russian translations from Launchpad. Alternatively, you can get the fix from the SVN repository.
Thanks for bringing this up.
btnx-config v.0.4.8 released which includes this fix.
btnx v.0.4.9 is in the SVN repo which includes:
fix for key combo release order (affects some systems, not all)
configuration looping: if you have multiple configurations for different mice, btnx will try to open configuration files until it finds a configured mouse plugged in. Previously it only tried one and quit if the first mouse was not plugged in.
Tiftof
April 3rd, 2008, 12:12 PM
I'm trying to get it to work for my MX1000 in Hardy. I can assign the horizontal scroll buttons to a keyboard combination. But when I reboot the key combinations don't work anymore. Restart the btnx daemon doesn't help. When I reconfigure the settings in btnx, everything works again.
I thought I might try assigning my MX1000 to constant input handler '/dev/input/event*' but that's not helping either. The event handler is made on reboot, but when I check '/proc/bus/input/devices' I see that my MX1000 is still using a random event input handler.
How can I make btnx work after a reboot?
Thanks!
daou
April 3rd, 2008, 12:32 PM
I'm trying to get it to work for my MX1000 in Hardy. I can assign the horizontal scroll buttons to a keyboard combination. But when I reboot the key combinations don't work anymore. Restart the btnx daemon doesn't help. When I reconfigure the settings in btnx, everything works again.
I thought I might try assigning my MX1000 to constant input handler '/dev/input/event*' but that's not helping either. The event handler is made on reboot, but when I check '/proc/bus/input/devices' I see that my MX1000 is still using a random event input handler.
How can I make btnx work after a reboot?
Thanks!
It doesn't matter if the event# changes between reboots. What matters is if the button codes or Vendor/Product IDs change between reboots.
Sounds exactly like the problem tim71 has been having with his MX1000. I believe this is an issue with the mouse itself. He made a few configuration files, 3 I think, one of which worked after a reboot. But then btnx needs to be manually started with the correct configuration after each reboot.
There might be a workaround using the new feature I coded today for btnx (in SVN repository trunk). You can make multiple configurations (make one each time you reboot and a previous config file does not work). Then, when btnx starts during boot, it loops through all the configuration files until it finds one for the plugged in mouse.
However, this will not work if the Vendor and Product IDs do not change between reboots (and button codes change- you can check this by looking at the RC value of the button, visible in the button list of btnx-config).
Tiftof
April 3rd, 2008, 12:40 PM
I just noticed I was still using 0.4.6. So I installed 0.4.8 and problem solved allready. Don't know why, but now my config works after reboot (rebooted 3 times to make sure).
Sorry to waste your time and keep up the good work! Amazing utility and you give a lot of support in this thread.
Thanks
ZYV
April 3rd, 2008, 01:03 PM
daou, well, actually I am still watching thins topic in the hope you'll comment on the glib/gtk dependency and most importantly on my MS Wireless Presenter 8000. What are my next steps to find how does those Prev/Next buttons generate events out? Or is it completely hopeless (for what reason)?
daou
April 3rd, 2008, 01:28 PM
daou, well, actually I am still watching thins topic in the hope you'll comment on the glib/gtk dependency and most importantly on my MS Wireless Presenter 8000. What are my next steps to find how does those Prev/Next buttons generate events out? Or is it completely hopeless (for what reason)?
The gtk/glib requirement is the same one I have developed with, so the requirement is probably not borderline. I do remember that some problems arise from Ubuntu Dapper's version of gtk (not sure if Edgy's gtk was fresh enough).
Looking at the diff, you would want gtk v.2.10.4 and glib v.2.12.3. If they work correctly, I can relax the configure.ac requirements to these. I already made the commit, so you can get the relaxed requirements from btnx-config SVN trunk: http://svn.ollisalonen.com/btnx-config/trunk
If the event file does not output anything when you press some buttons, then there is nothing really that btnx (or Linux) can do. It's possibly some proprietary protocol for those few extra buttons. You can try hexdumping each /dev/input/event handler to make sure the buttons aren't using those. For example, the Logitech MX Revolution mouse has two input event handlers.
dasbooter
April 3rd, 2008, 05:31 PM
Much thanks for this little gem. First time I seem to have all buttons working in linux with mx 1000(using linux since Suse 8 ).
Excuse my ignorance in terms of path and permissions but trying to add amarok as a command results in alot of errors that appear to be the result of amarok trying to access roots home not my own. I have it set in btnx-config to run with my own userid. Can somebody throw me a bone here.
oh and clicking thanks button for the author ....now
using gutsy
daou
April 3rd, 2008, 05:46 PM
Much thanks for this little gem. First time I seem to have all buttons working in linux with mx 1000(using linux since Suse 8 ).
Excuse my ignorance in terms of path and permissions but trying to add amarok as a command results in alot of errors that appear to be the result of amarok trying to access roots home not my own. I have it set in btnx-config to run with my own userid. Can somebody throw me a bone here.
oh and clicking thanks button for the author ....now
using gutsy
You can try using "su" as I described in this launchpad bug report: https://bugs.launchpad.net/btnx-config/+bug/198339
blazoner
April 4th, 2008, 05:34 AM
Daou,
Thanks for your replies.
As far as utilizing the UID over the user name, I really have no preference. If I remember correctly, I was just meaning that they shouldn't be run as root, but instead be tied to the user. I do, however, want to avoid excessive pop-up dialogs for passwords, etc....
I would like to see passwords stored on a user-level account within their configurations to avoid this, but we'd be better served by making configurations unable to store a root password, thereby popping up a password dialog.
As far as things you might have missed from the thread, the only one I can recall was a few different users were having trouble with their revoco settings getting screwed up during hibernation, etc. The most likely reason, from my point of view, is that you chose to make revoco settings temporary, rather than making each change permanent.
Thanks,
blazoner
Tiftof
April 4th, 2008, 05:36 AM
It doesn't matter if the event# changes between reboots. What matters is if the button codes or Vendor/Product IDs change between reboots.
Sounds exactly like the problem tim71 has been having with his MX1000. I believe this is an issue with the mouse itself. He made a few configuration files, 3 I think, one of which worked after a reboot. But then btnx needs to be manually started with the correct configuration after each reboot.
There might be a workaround using the new feature I coded today for btnx (in SVN repository trunk). You can make multiple configurations (make one each time you reboot and a previous config file does not work). Then, when btnx starts during boot, it loops through all the configuration files until it finds one for the plugged in mouse.
However, this will not work if the Vendor and Product IDs do not change between reboots (and button codes change- you can check this by looking at the RC value of the button, visible in the button list of btnx-config).
Seems like the problem is back now: my MX1000 settings don't work anymore after a reboot. Maybe in my previous reboots I was just lucky that it kept working or it has something to do with the upgrades I installed for hardy this morning.
And I checked what the problem is: ProductID and VendorID don't change but the rawcode for the buttons is wat changes on reboot. Any solution for that?
thanks
EDIT: seems like the rawcode just changed after the upgrade. I changed my config for btnx and works again now
daou
April 4th, 2008, 08:51 AM
Seems like the problem is back now: my MX1000 settings don't work anymore after a reboot. Maybe in my previous reboots I was just lucky that it kept working or it has something to do with the upgrades I installed for hardy this morning.
And I checked what the problem is: ProductID and VendorID don't change but the rawcode for the buttons is wat changes on reboot. Any solution for that?
thanks
EDIT: seems like the rawcode just changed after the upgrade. I changed my config for btnx and works again now
If the problem reappears, try this:
Do not remove the configuration, delete buttons, or make a new configuration. Use the same configuration, but press the "Detect mouse and buttons" button again. It will take you directly to the button detection. Then redetect the buttons, naming them for example Left1, Right1, etc (if existing ones are called Left, Right, etc). Assign the same functionality to them as you used for the previously working buttons.
Now when you start btnx, it will try to use all those buttons in the configuration file, but only a subset of them will be working at a time. Hopefully this helps.
Note: some buttons probably won't change their rawcodes (like the left, right, and wheel). btnx-config will tell you the button has been detected, but that's no problem.
dasbooter
April 4th, 2008, 10:52 AM
You can try using "su" as I described in this launchpad bug report: https://bugs.launchpad.net/btnx-config/+bug/198339
Awww Smack #-o I forgot to reset the userid back to roots. I had tried the script trick previously after perusing this thread but I guess I was tired.
Anyways thanks, solvedmy problem
or maybe not...hmmm oh well time will tell replaygain script gain crashed with xorg errors cant access screen :0 etc
This is just icing anyways...
scotthep
April 4th, 2008, 11:50 AM
Thanks, I'll double check the revoco setup and see what happens. And the remapping works fine, not sure what I even need that button for, but now it works!
Remapping the search button in Gnome should help with the Search tool popup. Also, the middle click probably started working after you used revoco: before revoco, the middle click only switches the mode. When changing to mode with revoco, you can get the middle click to act like a button click again and detect it with btnx (this is done in the mouse firmware).
JoePerkins
April 5th, 2008, 06:05 AM
Hi,
I'm new to Ubuntu, two questions about btnx:
- I have a Logitech G5 mouse, any chance to use the increase/decrease sensibility buttons in btnx (obviously not to increase and decrease sensibility :P)? It doesn't seem to detect this two buttons (and it works fine with the other ones).
- What about configuring button behavior for different programs? I mean, I want the "back" button to go back in firefox, but I would like it to Undo in OpenOffice. Just like SetPoint in Windows.
daou
April 5th, 2008, 06:20 AM
Hi,
I'm new to Ubuntu, two questions about btnx:
- I have a Logitech G5 mouse, any chance to use the increase/decrease sensibility buttons in btnx (obviously not to increase and decrease sensibility :P)? It doesn't seem to detect this two buttons (and it works fine with the other ones).
- What about configuring button behavior for different programs? I mean, I want the "back" button to go back in firefox, but I would like it to Undo in OpenOffice. Just like SetPoint in Windows.
It's possible that evdev is interfering with those buttons. Run this command to check if it's in use:
cat /etc/X11/xorg.conf | grep evdevPaste the output to this thread. You can also attach the output of another file, which will help to debug the issue:
cat /proc/bus/input/devicesAs for the application specific settings, it's not possible. btnx works at a much lower level than X and the visible applications. It has no idea where your mouse is on the screen and what is on the screen. In fact, you could be running just a command line and btnx would still work as usual.
JoePerkins
April 5th, 2008, 07:06 AM
Nothing happens with cat /etc/X11/xorg.conf | grep evdev
With cat /proc/bus/input/devices I get this:
I: Bus=0017 Vendor=0001 Product=0001 Version=0100
N: Name="Macintosh mouse button emulation"
P: Phys=
S: Sysfs=/class/input/input0
U: Uniq=
H: Handlers=mouse0 event0
B: EV=7
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=3
I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/class/input/input1
U: Uniq=
H: Handlers=kbd event1
B: EV=120013
B: KEY=4 2000000 3802078 f840d001 feffffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=7
I: Bus=0010 Vendor=001f Product=0001 Version=0100
N: Name="PC Speaker"
P: Phys=isa0061/input0
S: Sysfs=/class/input/input2
U: Uniq=
H: Handlers=kbd event2
B: EV=40001
B: SND=6
I: Bus=0003 Vendor=0f03 Product=0001 Version=0100
N: Name="Ver 1.0 USB To RS232 Interface (V1.0) BaudRate 2400bps"
P: Phys=usb-0000:00:13.1-1/input0
S: Sysfs=/class/input/input3
U: Uniq=
H: Handlers=event3
B: EV=20003
B: KEY=ffff ffffffff ffff0000 0 0 0 0 0 0 0 0 0
B: LED=2bf
I: Bus=0003 Vendor=046d Product=c041 Version=0111
N: Name="Logitech USB Gaming Mouse"
P: Phys=usb-0000:00:13.1-2/input0
S: Sysfs=/class/input/input4
U: Uniq=
H: Handlers=mouse1 event4
B: EV=7
B: KEY=ffff0000 0 0 0 0 0 0 0 0
B: REL=143
I: Bus=0000 Vendor=b216 Product=0002 Version=0000
N: Name="btnx keyboard"
P: Phys=
S: Sysfs=/class/input/input5
U: Uniq=
H: Handlers=kbd event5
B: EV=100003
B: KEY=7fffffff ffffffff ffffffff ffffffff ffffffff 0 0 0 ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
I: Bus=0000 Vendor=b216 Product=0001 Version=0000
N: Name="btnx mouse"
P: Phys=
S: Sysfs=/class/input/input6
U: Uniq=
H: Handlers=mouse2 event6
B: EV=7
B: KEY=ffffffff ffffffff ffffffff 0 0 0 0 0 0 0 0
B: REL=103
I: Bus=0019 Vendor=0000 Product=0002 Version=0000
N: Name="Power Button (FF)"
P: Phys=button_power/button/input0
S: Sysfs=/class/input/input11
U: Uniq=
H: Handlers=kbd event9
B: EV=3
B: KEY=100000 0 0 0
I: Bus=0019 Vendor=0000 Product=0001 Version=0000
N: Name="Power Button (CM)"
P: Phys=PNP0C0C/button/input0
S: Sysfs=/class/input/input12
U: Uniq=
H: Handlers=kbd event10
B: EV=3
B: KEY=100000 0 0 0
When you say "it's not possible", are you saying "right now" or "never"?
daou
April 5th, 2008, 07:15 AM
Nothing happens with cat /etc/X11/xorg.conf | grep evdevWith cat /proc/bus/input/devices I get this:
Ok, it looks like you won't be able to get those buttons working. Linux itself probably isn't recognizing those buttons.
One more thing you can do is this: run the command
sudo hexdump /dev/input/event4
Then look at the output. If nothing happens when you press the buttons, then btnx cannot do anything with them. If you get output when you press the buttons (be careful not to move the mouse) then paste the output here.
JoePerkins
April 5th, 2008, 07:24 AM
You are right, nothing happens when I press that buttons :(
Thanks anyway!
JayBee808
April 5th, 2008, 04:43 PM
Hi,
First off, thank you so much for btnx. It is installed on all my Ubu machines, and it is working wonderfully. It is great for graphics software and just browsing the web. Thank you very much.
I am using a Logitech mx500. I managed to get it working in Gutsy with earlier versions of btnx. All buttons, wheel, and cruise controls work as they should. Problem is I don't remember what all I did to make it work.
I am now running Hardy, and the latest version of btnx. I am getting a page back command when I press the "Cruise Up" button. I installed lomoco, and ran the no-sms command, but I am still getting the page back.
I also seem to have lost the ability to navigate in Nautilus with the thumb buttons. In gutsy, they worked with the same commands as Firefox. I tried pressing ALT-Arrow manually, and that does work .
I would appreciate any advice to get this working 100% again. I am really happy with Hardy so far, my only problem is I lost some of my mouse buttons, which had been working great. I still have Gutsy installed on this machine, so I can check for settings there, I just don't know what to look for.
Thank you all so much. This community rocks!
malungu
April 6th, 2008, 03:02 PM
Hi,
I am quite a newbie and I am very sorry if this question is either too simple or has been asked before. But I really cannot find any reference. I have detected my mouse with left + right button and a mouse wheel in btnx 0.4.8. I would like to assign the "left button doubleclick" to one click on the mouse wheel, but I cannot find out how. Is the event that I have to choose the left click + the parameter "type=1"? I read something about this "type=1" parameter, but where do I have to set it?
TIA,
malungu
daou
April 7th, 2008, 06:02 AM
Hi,
I am quite a newbie and I am very sorry if this question is either too simple or has been asked before. But I really cannot find any reference. I have detected my mouse with left + right button and a mouse wheel in btnx 0.4.8. I would like to assign the "left button doubleclick" to one click on the mouse wheel, but I cannot find out how. Is the event that I have to choose the left click + the parameter "type=1"? I read something about this "type=1" parameter, but where do I have to set it?
TIA,
malungu
It is an unsupported feature but should work. You set the keycode to BTN_LEFT and save the configuration (by quitting btnx-config). Then open the configuration file in a text editor. If the config name is Default, you can find it in /etc/btnx/btnx_config_Default
Find the button in that file, and change its type field to "type = 1". Save and restart btnx.
daou
April 7th, 2008, 07:47 AM
Hi,
First off, thank you so much for btnx. It is installed on all my Ubu machines, and it is working wonderfully. It is great for graphics software and just browsing the web. Thank you very much.
I am using a Logitech mx500. I managed to get it working in Gutsy with earlier versions of btnx. All buttons, wheel, and cruise controls work as they should. Problem is I don't remember what all I did to make it work.
I am now running Hardy, and the latest version of btnx. I am getting a page back command when I press the "Cruise Up" button. I installed lomoco, and ran the no-sms command, but I am still getting the page back.
I also seem to have lost the ability to navigate in Nautilus with the thumb buttons. In gutsy, they worked with the same commands as Firefox. I tried pressing ALT-Arrow manually, and that does work .
I would appreciate any advice to get this working 100% again. I am really happy with Hardy so far, my only problem is I lost some of my mouse buttons, which had been working great. I still have Gutsy installed on this machine, so I can check for settings there, I just don't know what to look for.
Thank you all so much. This community rocks!
Have you tried editing your xorg.conf file as described in the btnx manual's troubleshooting section 12.2.2?
malungu
April 7th, 2008, 02:15 PM
Yippee, this works! Thanks a lot!
malungu =D>
JayBee808
April 8th, 2008, 12:58 AM
Have you tried editing your xorg.conf file as described in the btnx manual's troubleshooting section 12.2.2?
I copied the xorg.conf section directly from one of the Gutsy installs where the mouse works perfectly. Here is what I have there:
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/psaux"
Option "Protocol" "auto"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "no"
Option "Buttons" "10"
EndSection
I adjusted the xmodmap settings to TRY to solve the double keystroke from the "up" cruise control. Here is what I did:
xmodmap -e "pointer = 1 2 3 4 5 6 7 10 8 9"
I am still getting a double event from the cruise up. When I release that button, it sends the same button as the large thumb. Also the top button is sending button 2 on release. I checked in Gutsy, and I do not have a xmodmap file, and xmodmap -pp shows no changes.
this is for a Logitech mx500
I still can't figure out why Nautilus isn't responding to btnx's keystrokes either.
daou
April 8th, 2008, 03:57 AM
I copied the xorg.conf section directly from one of the Gutsy installs where the mouse works perfectly. Here is what I have there:
I adjusted the xmodmap settings to TRY to solve the double keystroke from the "up" cruise control. Here is what I did:
xmodmap -e "pointer = 1 2 3 4 5 6 7 10 8 9"
I am still getting a double event from the cruise up. When I release that button, it sends the same button as the large thumb. Also the top button is sending button 2 on release. I checked in Gutsy, and I do not have a xmodmap file, and xmodmap -pp shows no changes.
this is for a Logitech mx500
I still can't figure out why Nautilus isn't responding to btnx's keystrokes either.
Did you restart X or the computer after the xmodmap command? xmodmap changes are cleared after a reboot, you have to manually put in in you home directory .Xmodmap file.
As for Nautilus, what function do you need and what combo are you using?
Gigamo
April 8th, 2008, 06:28 AM
Hi daou. First of all, thank you again for this great utility.
I'm wondering though, is btnx made to work exclusively in Ubuntu?
I have recently switched to Arch, and there is a PKGBUILD for btnx (http://aur.archlinux.org/packages.php?ID=13477) and btnx-config (http://aur.archlinux.org/packages.php?ID=13476) available in the AUR.
In Ubuntu, btnx detected all mouse buttons on my MX Revolution and those custom key bindings were a dream.
However, in Arch, btnx itself works fine, but it only detects three out of 10 (or 12 depending how you look at it) buttons, and thus I can only bind special combinations to three of them. I don't know if it's intended to work on Arch at all, it's just something I've been bugged with. So in fact I am currently just using btnx for the revoco function :)
Thank you :)
JayBee808
April 8th, 2008, 06:41 AM
Thanks for getting back to me so quickly!
I did not restart X. I just remapped the buttons, and the cruise up is still sending two different button signals.
here is a bit of XEV output for the problem buttons, first is the thumb a few times, then the cruise up:
ButtonRelease event, serial 31, synthetic NO, window 0x3000001,
root 0x13b, subw 0x0, time 5608760, (13,169), root:(1726,230),
state 0x10, button 8, same_screen YES
ButtonPress event, serial 31, synthetic NO, window 0x3000001,
root 0x13b, subw 0x0, time 5612808, (13,169), root:(1726,230),
state 0x10, button 8, same_screen YES
ButtonRelease event, serial 31, synthetic NO, window 0x3000001,
root 0x13b, subw 0x0, time 5612992, (13,169), root:(1726,230),
state 0x10, button 8, same_screen YES
ButtonPress event, serial 31, synthetic NO, window 0x3000001,
root 0x13b, subw 0x0, time 5620665, (13,169), root:(1726,230),
state 0x10, button 4, same_screen YES
ButtonPress event, serial 31, synthetic NO, window 0x3000001,
root 0x13b, subw 0x0, time 5620665, (13,169), root:(1726,230),
state 0x810, button 8, same_screen YES
ButtonRelease event, serial 31, synthetic NO, window 0x3000001,
root 0x13b, subw 0x0, time 5620665, (13,169), root:(1726,230),
state 0x810, button 4, same_screen YES
ButtonRelease event, serial 31, synthetic NO, window 0x3000001,
root 0x13b, subw 0x0, time 5620833, (13,169), root:(1726,230),
state 0x10, button 8, same_screen YES
MotionNotify event, serial 31, synthetic NO, window 0x3000001,
root 0x13b, subw 0x0, time 5624985, (12,169), root:(1725,230),
state 0x10, is_hint 0, same_screen YES
I mapped the buttons to some letter keys to test in gedit. No matter what I remap to with xmodmap, the "cruise up" button always sends the same signal as the "large thumb" button. It sends that when cruise up is released. The button on top of the mouse does the same thing, but with the "Scroll Click" button signal.
I also tried an older version of btnx, but no difference. In Gutsy everything works. I don't have the cruise buttons mapped to anything, they just send the scroll signal by default. I don't have lomoco, or any ~/.Xmodmap installed there either. I am currently on Hardy 64bit.
JayBee808
April 8th, 2008, 08:01 AM
OK. If I run this from the terminal:
sudo xmodmap -e "pointer = 1 2 3 4 5 8 9 6 7"
...all the buttons seem to work as they should. Xev is still picking up the extra commands though. I will try and set up a new profile with btnx now.
Saved to /etc/X11/Xmodmap and it is now working on startup.
I was having a problem with the Xmodmap file, but I think it was a syntax problem on my part.
Jorenko
April 8th, 2008, 10:34 PM
Have you tried editing your xorg.conf file as suggested in the btnx manual troubleshooting section?
Yup. No luck.
dondad
April 8th, 2008, 11:39 PM
I was checking the versions in svn and I am currently running version 0.4.7 from trunk. I was going to upgrade to 0.4.9, but is says I need libdaemon installed. Where can I find that? I have libdaemon0, but no libdaemon and haven't been able to find it.
Found it. Installed libdaemon-dev and it worked.
fR33b1Rd
April 9th, 2008, 01:31 PM
Hi. First I'd like to thank you for this great Tool.
Unfortunately, I've got problems since I installed version 0.4.9. After reboot there are two btnx processes running, and I've no clue why. Any idea?
warthogism
April 13th, 2008, 10:20 AM
is anyone else seeing that btnx is using an inordinate amount of resources?
I installed it and got it working just a couple of days ago with absolutely no problems. Just recently, however, I've noticed that it is chewing up 60 and sometimes 80% of the cpu!! This is according to the system monitor applet in avant windows manager (awm). The applet shows a constant 100% cpu usage. any ideas?
Sika
April 14th, 2008, 06:33 AM
Hi. First I'd like to thank you for this great Tool.
Unfortunately, I've got problems since I installed version 0.4.9. After reboot there are two btnx processes running, and I've no clue why. Any idea?
I've got the same problem. I updated to hardy a few days ago then I upgraded from btnx 0.4.7 to 0.4.9.
anyway this is for sure a great tool!
thanks
mortelrdv
April 16th, 2008, 10:54 AM
Hello
i use btnx 0.4.9 with btnx-config 0.4.8, i have a "logitech mouseman dual optical" (4 buttons + wheel).
With compiz-fusion (default config), i use <ctrl>+<alt>+<left mouse bouton> to rotate the cube.
in general, i use <ctrl>+<alt>+<"left or middle or right or wheel" mouse>.
i don't use the fourth mouse button.
how can i do <ctrl>+<alt> = <4th mouse button> ? => simple manipulation of the cube with the single hand.
<4th mouse button>+<left mouse button> = rotate cube
<4th mouse button>+<other mouse button> = ...
thank
SnappyU
April 16th, 2008, 12:05 PM
I installed btnx 0.4.9 and btnx-config 0.4.7 on Ubuntu 7.10 and got my logitech v150 mouse working.
Specifically the tilt wheel button, left and right, are working, ie allowing back (alt-left) and right (alt-right) in firefox and nautilus.
Installation
As per page one installation.
Configuration
I only enabled the settings for the tilt wheel buttons left and right. All the settings for the other buttons, including scroll wheel forward, back and down are disabled. This prevents the duplicate keys issue.
Auto Startup
I made btnx start up automatically by including it in the session manager System->Preferences->Sessions
In Sessions->Startup Programs, I click Add, and configured as follows:
Name: btnx
Command: sudo btnx
Comment: Enable support for Logitech Tilt Wheel!
Click OK.
Logged off and on again. Voila, everything is working.
SnappyU
April 17th, 2008, 10:19 AM
Hello
i use btnx 0.4.9 with btnx-config 0.4.8, i have a "logitech mouseman dual optical" (4 buttons + wheel).
With compiz-fusion (default config), i use <ctrl>+<alt>+<left mouse bouton> to rotate the cube.
in general, i use <ctrl>+<alt>+<"left or middle or right or wheel" mouse>.
i don't use the fourth mouse button.
how can i do <ctrl>+<alt> = <4th mouse button> ? => simple manipulation of the cube with the single hand.
thank
Are you asking how you can bind the 4th mouse btn to <left mouse btn> + <ctrl> + <alt> ?
If so, you enable the button (4th btn) in btnx-config and assign "left mouse btn" with modifier <ctrl> and <alt>.
Should work. You may need to restart btnx or restart x. Let us know. :)
bongo
April 17th, 2008, 09:58 PM
Just wanted to drop in and say that in my humble opinion btnx is the best thing that has happened to ubuntu in a long while, so genuine thanks go out to you! =D>
mortelrdv
April 18th, 2008, 08:31 AM
Are you asking how you can bind the 4th mouse btn to <left mouse btn> + <ctrl> + <alt> ?
If so, you enable the button (4th btn) in btnx-config and assign "left mouse btn" with modifier <ctrl> and <alt>.
Should work. You may need to restart btnx or restart x. Let us know. :)
No
I ask how i can bind the 4th mouse btn to <ctrl> + <alt> ?
i do it http://cjoint.com/?esomnu1Dc7 , but it don't work, when i press 4th mouse btn + 1st mouse btn (left button) i can't rotate the cube. if i use keyboard <ctrl-left>+<alt-left>+<1st mouse btn (left button)> i can rotate the cube.
thank
blazoner
April 18th, 2008, 10:38 AM
Currently, that's not possible, as btnx can only handle one button press at a time.
I think that Daou has it on his to do list, though.
mortelrdv
April 18th, 2008, 02:47 PM
Currently, that's not possible, as btnx can only handle one button press at a time.
I think that Daou has it on his to do list, though.
I do not think that it is the probleme.
i can change the default config of compiz-fusion ( http://cjoint.com/?esuNxztLdp) by a combination of one or several keys (ctrl,alt,shift,super).
i change the default config of compiz-fusion <ctrl>+<alt> to <alt> only or <ctrl> only or ....and change config btnx
but i can't rotate the cube with 4th mouse btn + 1st mouse btn (left button) while i can use keyboard+mouse
blazoner
April 19th, 2008, 12:48 AM
This is exactly the problem. Btnx reads only one button at a time, not one button + another button.
My suggestion is to assign your fourth button to BTN_LEFT + KEY_LEFTCTRL + KEY_LEFTALT
One button assigned to the key + modifiers.
Using another button as a modifier is currently not supported.
mortelrdv
April 19th, 2008, 01:19 AM
Ah! OK
what a shame! :sad:
i don't want to assign the fourth button to BTN_LEFT + KEY_LEFTCTRL + KEY_LEFTALT.
Because i would like to use some effect of compiz with 1 hand, examples :
4th mouse btn + left mouse btn = rotate the cube
4th mouse btn + middle mouse btn = ...
4th mouse btn + right mouse btn = ...
4th mouse btn + wheel mouse btn = ...
and may be if i change the mouse with another mouse having much more buttons => much more possibility
belda
April 21st, 2008, 03:12 PM
i have similar problem
I would like to use my 2 side buttons as modifiers alt and ctrl.
I have btnx 0.4.8. The strange thing is, that it works in nautilus eg:
I hold side button and button 1 and when draggind I dont move, but copy the file, but I cannot use the otherone as alt when resizing a window or moving a window. I do have compiz enabled.
Toufik
April 24th, 2008, 07:55 AM
Hi,
It's a wonderful tool you've done! However, I get a segfault during boot process:
Btnx crash during boot process and it doesn't work. But once I'm logged in the X session, I can restart the program manually (sudo /etc/init.d/btnx restart) and everything works fine after that. But this is not a usable solution to restart manually btnx after each boot.
Here is a short part of dmesg (full syslog attached):
$ dmesg | grep btnx
[ 21.089775] input: btnx keyboard as /devices/virtual/input/input13
[ 21.117860] input: btnx mouse as /devices/virtual/input/input14
[ 24.089824] btnx[3981]: segfault at df9fd89c eip 08049c61 esp bf9fd810 error 5
[ 52.421137] input: btnx keyboard as /devices/virtual/input/input15
[ 52.448681] input: btnx mouse as /devices/virtual/input/input16
$ sudo /etc/init.d/btnx restart
Restarting btnx : Button Extension - mouse button rerouter daemon
btnx: Failed to kill previous btnx processes
btnx successfully stopped
btnx: uinput modprobed successfully.
btnx: Opening config file: /etc/btnx/btnx_config_Default
btnx: Opened handler: /dev/input/event0
btnx: Opened handler: /dev/input/event1
btnx: Opened handler: /dev/input/event2
btnx: Opened handler: /dev/input/event0
btnx: Opened handler: /dev/input/event1
btnx: Opened handler: /dev/input/event2
btnx: Opened handler: /dev/input/event3
btnx: Opened handler: /dev/input/event4
btnx: Opened handler: /dev/input/event5
btnx: Opened handler: /dev/input/event6
btnx: Opened handler: /dev/input/event7
btnx: Opened handler: /dev/input/event8
btnx: Opened handler: /dev/input/event9
btnx: Opened handler: /dev/input/event10
btnx: Opened handler: /dev/input/event11
btnx: Opened handler: /dev/input/event12
btnx: Opened handler: /dev/input/uinput
btnx: Opened handler: /dev/input/uinput
btnx: revoco not started. Disabled in configuration.
btnx: No startup errors.
btnx: Parent done.
btnx successfully started
jamesford
April 25th, 2008, 03:59 PM
im having trouble on hardy killing the mx revo search button, it keeps popping up the gnome search tool and i wanna use it as a middle button only
Curlydave
April 25th, 2008, 10:42 PM
I just installed Ubuntu again, and btnx was the first program I installed. Automatic scroll mode through Revoco mode isn't working properly. It appears to work, and the freespin threshhold adjusts properly, but when you actually let the wheel fly it doesn't fly through the document/web page it like it should, it just movies through it at a steady medium pace, and keeps scrolling when you let go.
Additionally, I'm having the same problem as jamesford: I can get the search button to be set to function as a middle button, but it still pops up a search window.
camoto
April 26th, 2008, 12:14 AM
I have btnx installed on Ubuntu Hardy AMD64 with a 9-button Dell Bluetooth Laser Mouse. It works completely as advertised, except I cannot get it to load on start-up. I need to manually execute sudo /etc/init.d/btnx start, or open btnxconfig and click the restart button. I have tried to add the start command to my sessions configuration but that does not seem to work and there is no active btnx process when I first log in.
Is there a workaround for this so I can have btnx load with the OS? I don't hotplug my mouse, it is always connected.
Thanks
camoto
April 26th, 2008, 09:19 AM
I have btnx installed on Ubuntu Hardy AMD64 with a 9-button Dell Bluetooth Laser Mouse. It works completely as advertised, except I cannot get it to load on start-up. I need to manually execute sudo /etc/init.d/btnx start, or open btnxconfig and click the restart button. I have tried to add the start command to my sessions configuration but that does not seem to work and there is no active btnx process when I first log in.
Is there a workaround for this so I can have btnx load with the OS? I don't hotplug my mouse, it is always connected.
Thanks
I take that back. After leaving the machine over night, I returned to the btnx process using over 50 percent of my CPU. The process cannot be killed via the system monitor or a kill command in the console. Using the "Restart BTNX" button in btnx-config releases the process, however.
camoto
April 26th, 2008, 09:46 AM
I take that back. After leaving the machine over night, I returned to the btnx process using over 50 percent of my CPU. The process cannot be killed via the system monitor or a kill command in the console. Using the "Restart BTNX" button in btnx-config releases the process, however.
I can duplicate the behavior simply by shutting off the power to the mouse. After about 20 seconds the CPU utilization spikes and btnx is using 40-60% of it. If I then turn the mouse back on, it comes back online just fine, however the process does not release its utilization unless I use btnx-config restart.
I hope this helps. I want to, but can't use this utility until this is resolved.
hanlect
April 26th, 2008, 09:49 AM
im having trouble on hardy killing the mx revo search button, it keeps popping up the gnome search tool and i wanna use it as a middle button only
I have this problem, too. Seems Hardy's fault, I have just updated.
All the other buttons work perfectly, I don't know how to investigate the problem further.
Curlydave
April 26th, 2008, 11:14 AM
I have this problem, too. Seems Hardy's fault, I have just updated.
All the other buttons work perfectly, I don't know how to investigate the problem further.
To be fair, this is mostly the fault of the mouse for having the middle button do a search function by no default, but Hardy does seem to break it entirely by enabling the search functionality. Windows works like this by default too, but when you bind it to Mouse 3 the search is disabled. Hopefully there will be a fix for this soon. I tried uninstalling tracker, but it just reverts to the search for files window instead. Maybe there's a way to uninstall that?
MX Rev users in Hardy: Are you having the freescroll issue I was describing?
hanlect
April 26th, 2008, 12:07 PM
To be fair, this is mostly the fault of the mouse for having the middle button do a search function by no default, but Hardy does seem to break it entirely by enabling the search functionality. Windows works like this by default too, but when you bind it to Mouse 3 the search is disabled. Hopefully there will be a fix for this soon. I tried uninstalling tracker, but it just reverts to the search for files window instead. Maybe there's a way to uninstall that?
What i meant was that hardy modified something, since in gutsy it worked.
Anyway try rebinding the Search function using gnome-keybinding-properties, it won't solve the middle_click problem but at least you won't see the search interface every time you press the middle button.
tim71
April 26th, 2008, 02:22 PM
Everything seems to work normally after yesterday's Hardy-upgrade - with one small exception.
It seems like lomoco is not doing it's magic any more - actually it's... like not doing anything any more. No output to any commands besides version information.
Also tried logitech_applet, but seems like this is also not working.
P.S. It MAY be related to the thing, that Logitech properties tab has gone missing from kcontrol.
Curlydave
April 26th, 2008, 02:42 PM
Anyway try rebinding the Search function using gnome-keybinding-properties, it won't solve the middle_click problem but at least you won't see the search interface every time you press the middle button.
How do you do this?
jamesford
April 26th, 2008, 03:10 PM
hey seems that worked, brilliant!
just put gnome-keybinding-properties in a terminal and changed the 'search' binding to something other random
Curlydave
April 26th, 2008, 05:34 PM
Thanks, that worked!
camoto
April 26th, 2008, 07:30 PM
Ignore my posts about the processor. I just used it as a good excuse to go buy a Logitech G5. What a nice mouse.
I still need to test that it starts up on boot however. I will report back.
camoto
April 26th, 2008, 07:35 PM
Works like a champ with a non-bluetooth mouse. Sweet!
steveneddy
April 27th, 2008, 08:03 AM
I take that back. After leaving the machine over night, I returned to the btnx process using over 50 percent of my CPU. The process cannot be killed via the system monitor or a kill command in the console. Using the "Restart BTNX" button in btnx-config releases the process, however.
I have just started using btnx and I notice that btnx uses 100% of my cpu if my laptop sits idle for about an hour or more.
This concerns me.
I use a Logitech V470 bluetooth mouse.
camoto
April 27th, 2008, 09:31 AM
I have just started using btnx and I notice that btnx uses 100% of my cpu if my laptop sits idle for about an hour or more.
This concerns me.
I use a Logitech V470 bluetooth mouse.
This was exactly my problem. It happens when the BT mouse goes to sleep. You can test it by shutting the mouse off. About 20 seconds later you will see the btnx process take off.
See my earlier posts.
I replaced my BT mouse with a better, wired mouse and have no problems now.
steveneddy
April 27th, 2008, 11:32 AM
This was exactly my problem. It happens when the BT mouse goes to sleep. You can test it by shutting the mouse off. About 20 seconds later you will see the btnx process take off.
See my earlier posts.
I replaced my BT mouse with a better, wired mouse and have no problems now.
Ah, bluetooth sleeping - never thought of that. Thanks. I'll go down that path.
blazoner
April 28th, 2008, 03:26 AM
I use a Logitech V470 bluetooth mouse.
Other than the sleeping issue, how'd it go? (Detection, etc?)
Was it only while using a dedicated USB dongle just for the mouse, or was it through an onboard bluetooth chip, or a generic dongle?
steveneddy
April 28th, 2008, 06:55 AM
Other than the sleeping issue, how'd it go? (Detection, etc?)
Was it only while using a dedicated USB dongle just for the mouse, or was it through an onboard bluetooth chip, or a generic dongle?
Bluetooth has always worked well for me on Linux. I use an onboard Bluetooth chip, no dongle.
The mouse is detected and connected before the GDM login screen, and it is reliable enough for everyday use at home and the office. I can also browse by RAZR phone and send/receive files to/from my laptop.
This little annoyance and the fact that I can't use the scroll wheel left/right buttons for forward/back in Firefox or Nautilus and I'll be one happy camper.
Everything else seems to work well after the upgrade, not a clean install.
jamesford
April 28th, 2008, 11:21 AM
ive constantly got 2 copies of btnx running in the system manager on hardy 64 bit using btnx 0.4.10, same happened with 0.4.9
its not a problem, i dont notice any problems caused by it, for all i know there are supposed to be 2 copies running. just thought id mention it
Shazaam
April 28th, 2008, 02:32 PM
Great how-to! btnx installed in Gutsy with zero problems, Logitech MX-1000 laser now has ALL buttons configurable. Setup compiz cube-rotate to the side buttons and now I can rotate the cube with windows maximised. Thank you.
maxxum
April 28th, 2008, 09:16 PM
I believe btnx does not work for 64-bit Hardy. Any plans to make a version that will support 64 bit systems? However I must say Hardy does do a good job of identifying mouse forward and back buttons and applying it to Firefox 3 beta. The same buttons don't work in Nautilus, however. I would like to use btnx but I will have to reinstall 32 bit for it (which I don't want to do because it is limited to 3GB RAM).
Currently I am using an IOGEAR mouse which is a part of their wireless keyboard/mouse combo. I will probably switch to a Logitech MX Revolution or MX620 soon.
Currently I am running Ubuntu 8.04 AMD64 with 4GB RAM, Intel Core2Quad Q6600 processor.
jamesford
April 29th, 2008, 04:03 AM
maxxum, it works on 64 bit hardy, , and perfectly too. no xmodmap or xorg.conf edit needed either. thats with an mx revolution. cant speak for your mouse but btnx certainly works in 64 bit hardy as it did in 64 bit gutsy
daou
April 29th, 2008, 05:55 AM
ive constantly got 2 copies of btnx running in the system manager on hardy 64 bit using btnx 0.4.10, same happened with 0.4.9
its not a problem, i dont notice any problems caused by it, for all i know there are supposed to be 2 copies running. just thought id mention it
Did you upgrade btnx-config to 0.4.9 and run it at least once? This is required with btnx 0.4.10 to regenerate the udev rule that is probably causing the problems.
daou
April 29th, 2008, 05:57 AM
To everyone with the 100% CPU bug: upgrade to btnx-0.4.10 and btnx-config-0.4.9, and run btnx-config at least once like I described in the post above. Let me know if the problem persists.
camoto
April 29th, 2008, 09:57 AM
To everyone with the 100% CPU bug: upgrade to btnx-0.4.10 and btnx-config-0.4.9, and run btnx-config at least once like I described in the post above. Let me know if the problem persists.
Too late, I replaced my mouse!! But I will run the upgrade tonight anyways, thanks!
Another user here running AMD65 Hardy (Logitech G5 mouse) with btnx with no issues (other than that cpu issue I had with my old BT Mouse which looks like it may have the fix above)
jamesford
April 29th, 2008, 10:28 AM
Did you upgrade btnx-config to 0.4.9 and run it at least once? This is required with btnx 0.4.10 to regenerate the udev rule that is probably causing the problems.
no i did a fresh install after a fresh hardy install. just ran btnx-config to test - still 2 copies, did a reboot and still 2 copies
NobeyamaGP
April 29th, 2008, 05:16 PM
I just upgraded to Kubuntu Hardy today and the first thing I noticed was the lack of evdev support on my MX1000. I managed to get it working again by using the default mouse driver and was trying to get all the keys working again. I discovered btnx today while trying to get it working. The only problem I have is, when I set my extra buttons, to of my buttons are somehow mapped to the same button according to xev. The two keys are my back button and the cruise control up button which I have mapped to the "Home" key. For some reason, both are claiming to be button 8. For this reason I can't remap button 8 to something else because then I lose the use of by browser back button. I'm at a loss of what to do. Any ideas? Thanks.
steveneddy
April 29th, 2008, 07:30 PM
To everyone with the 100% CPU bug: upgrade to btnx-0.4.10 and btnx-config-0.4.9, and run btnx-config at least once like I described in the post above. Let me know if the problem persists.
The 100% cpu bug is squashed.
Maybe a new feature that would compliment this.
Sometimes I walk away from my PC and if it will be a significant amount of time, I will turn off the mouse to save batteries. I must restart btnx after this.
Any way we could make btnx stay running so I don't have to restart all of the time without the 100% cpu issues cropping back up?
Jorenko
April 29th, 2008, 09:54 PM
I'm still having X catch my keys on Hardy. Here's my xorg.conf. Both of the Device options give the same result. I'm on 0.4.10 / config-0.4.9.
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
# Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5"
EndSection
Section "Device"
Identifier "Configured Video Device"
Driver "nvidia"
Option "NoLogo" "True"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
EndSection
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
Defaultdepth 24
EndSection
Section "ServerLayout"
Identifier "Default Layout"
screen "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Module"
Load "glx"
EndSection
airjer
April 30th, 2008, 01:21 AM
btnx worked on my 8.04 RC1 install, but now on the actual release no matter what I've tried (including compiling myself and installing) whenever I try to restart btnx from the config I get this...
http://img528.imageshack.us/img528/9623/screenshotbtnxconfigms2.png
install:
sudo apt-get install btnx
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
python-mutagen python-pyvorbis python-pyogg
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
btnx-config
The following NEW packages will be installed:
btnx btnx-config
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 0B/131kB of archives.
After this operation, 680kB of additional disk space will be used.
Do you want to continue [Y/n]? y
WARNING: The following packages cannot be authenticated!
btnx-config btnx
Install these packages without verification [y/N]? y
Selecting previously deselected package btnx-config.
(Reading database ... 116816 files and directories currently installed.)
Unpacking btnx-config (from .../btnx-config_0.4.9-hardy1~ppa2_amd64.deb) ...
Selecting previously deselected package btnx.
Unpacking btnx (from .../btnx_0.4.10-hardy1~ppa6_amd64.deb) ...
Setting up btnx-config (0.4.9-hardy1~ppa2) ...
Setting up btnx (0.4.10-hardy1~ppa6) ...
Starting btnx : Button Extension - mouse button rerouter daemon
btnx: uinput modprobed successfully.
btnx: Opening config file: /etc/btnx/btnx_config_Logitech MX Revolution
btnx: No startup errors.
btnx: Parent done.
btnx successfully started
daou
April 30th, 2008, 03:40 AM
no i did a fresh install after a fresh hardy install. just ran btnx-config to test - still 2 copies, did a reboot and still 2 copies
What happens if you disable hotplugging from the advanced options in btnx-config and restart btnx or reboot?
EDIT: I found the bug in btnx that was causing the other process. I'll release a fix later.
EDIT: Fix released as btnx 0.4.11
daou
April 30th, 2008, 03:44 AM
btnx worked on my 8.04 RC1 install, but now on the actual release no matter what I've tried (including compiling myself and installing) whenever I try to restart btnx from the config I get this...
Did you try with the new deb packages first? I just made them yesterday and only tested the Feisty version, but that worked.
If you run
$ sudo /etc/init.d/btnx restart
do you get an error?
If you run
$ dpkg -s btnx
do you see this in the output?
Conffiles:
/etc/init.d/btnx 3ed4871581b5881541a2c795114641bf
/etc/btnx/events 8fae5cc25dd25de132da8b4da727e11a
And do you see a file called btnx with the command
$ ls /etc/init.d
MoridinBG
April 30th, 2008, 04:17 AM
I installed latest version (Gentoo ebuild) on my laptop, but it only recognises the touchpad. xorg.conf part for external mouse is absolutely minimalistic. Both mouse and touchpad used /dev/psaux, so I moved the mouse to /dev/input/mice which made no difference. This happens with both a4Tech X6 Mouse and Logitech RX300.
daou
April 30th, 2008, 04:59 AM
I installed latest version (Gentoo ebuild) on my laptop, but it only recognises the touchpad. xorg.conf part for external mouse is absolutely minimalistic. Both mouse and touchpad used /dev/psaux, so I moved the mouse to /dev/input/mice which made no difference. This happens with both a4Tech X6 Mouse and Logitech RX300.
Is the problem with the daemon or btnx-config's detection? Could you post the output of "cat /proc/bus/input/devices".
daou
April 30th, 2008, 05:01 AM
The 100% cpu bug is squashed.
Maybe a new feature that would compliment this.
Sometimes I walk away from my PC and if it will be a significant amount of time, I will turn off the mouse to save batteries. I must restart btnx after this.
Any way we could make btnx stay running so I don't have to restart all of the time without the 100% cpu issues cropping back up?
If you have hot-plugging enabled in btnx-config, btnx should autostart when your mouse is detected by the system. And in the last sentence you wrote, does this mean the 100% CPU bug still lives (does it appear after you turn off the mouse)?
MoridinBG
April 30th, 2008, 05:20 AM
Is the problem with the daemon or btnx-config's detection? Could you post the output of "cat /proc/bus/input/devices".
Detect Mouse from btnx-xonfig reacts only to the Touchpad, not to the external Mouse.
Here is the output for the mouse:
I: Bus=0003 Vendor=09da Product=000a Version=0110
N: Name="A4Tech PS/2+USB Mouse"
P: Phys=usb-0000:00:1d.1-1/input0
S: Sysfs=/class/input/input18
U: Uniq=
H: Handlers=mouse3 event11
B: EV=17
B: KEY=ff0000 0 0 0 0 0 0 0 0
B: REL=303
B: MSC=10
Here is the touchpad:
I: Bus=0011 Vendor=0002 Product=0007 Version=25b1
N: Name="SynPS/2 Synaptics TouchPad"
P: Phys=isa0060/serio4/input0
S: Sysfs=/class/input/input5
U: Uniq=
H: Handlers=mouse1 event5
B: EV=b
B: KEY=6420 0 70000 0 0 0 0 0 0 0 0
B: ABS=11000003
It's strange that there is a PS/2 Mouse section, while I don't have a PS/2 port on the machine:
I: Bus=0011 Vendor=0002 Product=0001 Version=0000
N: Name="PS/2 Generic Mouse"
P: Phys=synaptics-pt/serio0/input0
S: Sysfs=/class/input/input6
U: Uniq=
H: Handlers=mouse2 event6
B: EV=7
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=3
Jorenko
April 30th, 2008, 07:21 AM
What happens if you disable hotplugging from the advanced options in btnx-config and restart btnx or reboot?
EDIT: I found the bug in btnx that was causing the other process. I'll release a fix later.
EDIT: Fix released as btnx 0.4.11
Hey hey! 0.4.11 fixes my multiple events problem as well! Cheers!
Edit: Nevermind, apparently that was an illusion. :(
jamesford
April 30th, 2008, 09:24 AM
the new version fixed the duplicate process bug :)
camoto
April 30th, 2008, 10:21 AM
I am still baffled as to why this is not included with the distro of Ubuntu. Does anyone even have a mouse with only 2 buttons and a wheel anymore??
airjer
April 30th, 2008, 01:58 PM
Did you try with the new deb packages first? I just made them yesterday and only tested the Feisty version, but that worked.
Yea, I get the same result.
If you run
$ sudo /etc/init.d/btnx restart
do you get an error?
I get this:
Restarting btnx : Button Extension - mouse button rerouter daemon
btnx: Failed to kill previous btnx processes
btnx successfully stopped
btnx: uinput modprobed successfully.
btnx: Opening config file: /etc/btnx/btnx_config_Logitech MX Revolution
btnx: No startup errors.
btnx: Parent done.
btnx successfully started
If you run
$ dpkg -s btnx
do you see this in the output?
Conffiles:
/etc/init.d/btnx 3ed4871581b5881541a2c795114641bf
/etc/btnx/events 8fae5cc25dd25de132da8b4da727e11a
Yea:
Conffiles:
/etc/btnx/events 8fae5cc25dd25de132da8b4da727e11a
/etc/init.d/btnx 3ed4871581b5881541a2c795114641bf
And do you see a file called btnx with the command
$ ls /etc/init.d
Yea I made sure to check this as soon as I was getting this error. Any ideas?
steveneddy
April 30th, 2008, 07:38 PM
If you have hot-plugging enabled in btnx-config, btnx should autostart when your mouse is detected by the system. And in the last sentence you wrote, does this mean the 100% CPU bug still lives (does it appear after you turn off the mouse)?
I will try the hot-plugging fix to see if this works for me.
No, the 100%cpu bug has not returned, I just didn't want to get a variation of that bug back while trying to add another feature.
:D - Thank you, Olli, for a wonderful piece of software. This really works great, just the way you said it would.
steveneddy
April 30th, 2008, 07:42 PM
I will try the hot-plugging fix to see if this works for me.
Sorry to say that hot-plugging was already checked. I turned off the mouse anyway and when I turned it back on, I had to manually start btnx to get my mouse button features back.
Adam Jones
April 30th, 2008, 09:29 PM
Anyway try rebinding the Search function using gnome-keybinding-properties, it won't solve the middle_click problem but at least you won't see the search interface every time you press the middle button.
Has anyone found a solution for this yet ? According to xev my middle button is being detected as a KeyPress instead of a Button Press. This used to work in Gutsy.
KeyPress event, serial 30, synthetic NO, window 0x4400001,
root 0x253, subw 0x0, time 2961965, (124,136), root:(129,185),
state 0x10, keycode 229 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 30, synthetic NO, window 0x4400001,
root 0x253, subw 0x0, time 2961965, (124,136), root:(129,185),
state 0x10, keycode 229 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
odierick
May 1st, 2008, 12:41 AM
Hello,
I'm experiencing a strange issue with btnx 0.4.11 & btnx-config 0.4.9 and command execution.
I was looking for a way to implement a left double-clic function to my mouse middle button. Reading around I found many ways to do this. I choose a combination of btnx/btnx-config + xte.
I had no problem setting up btnx/btnx-config and mapping buttons to keys works great :).
The xte command line requires quotation so I had to setup a script for btnx to execute. The content of the script file (DoubleClic.sh) is :
#!/bin/sh
xte 'mouseclick 1' 'mouseclick 1'
it's launched with middle-button command :
/usr/bin/sudo -u odierick /home/odierick/bin/DoubleClic.sh
UID is 0.
I restarted btnx with the restart btnx button in btnx-config but there was no double-click :(. Then I restarted btnx manually with
sudo /etc/init.d/btnx restart
After that it worked, I thought btnx-config couldn't restart btnx as I read other people were unable to do it. Unfortunately, after reboot(I did not want to restart manually) the mouse had lost its double-click function :confused:. Restarting with btnx-config did not help but restarting manually restored the function.
I found it unpractical to restart each time so I investigated further. I added some logging facility to my script
echo 'whatever'>> /home/odierick/file.log
to check wether it was executed or not. After reboot I tried to middle-click on a file in nautilus and nothing happened. I checked file.log and it contained 'whatever'. I played around with this replacing xte with xwininfo, xprop and gedit and redirected output of these commands to file.log. Neither of these commands echoed or did anything though 'whatever' got written. Eventualy I deduced that the script gets properly executed but for some reason could not call any of the X apps. After a manual restart it does work however.
So my problem lies in executing X apps from a script file doesn't work unless btnx is (re)started manually.
Can you give me some insight? Has someone got this to work ?
maxxum
May 1st, 2008, 01:14 AM
maxxum, it works on 64 bit hardy, , and perfectly too. no xmodmap or xorg.conf edit needed either. thats with an mx revolution. cant speak for your mouse but btnx certainly works in 64 bit hardy as it did in 64 bit gutsy
Thats good to know! Well I have the MX Revolution mouse now and I am trying to install in 8.04 32 bit as of now. I tried using the binary (4.0.9) and then by compiling the source of 4.0.11 as described in the first page. In both cases btnx does not start.
max@Ubu804:~/btnx-0.4.11/btnx-config-0.4.9$ btnx
bash: /usr/sbin/btnx: No such file or directory
max@Ubu804:~/btnx-0.4.11/btnx-config-0.4.9$ sudo btnx
btnx: uinput modprobed successfully.
btnx: Opening config file: /etc/btnx/btnx_config_Default
btnx: Could not read the config file: No such file or directory
btnx: Configuration file error.
max@Ubu804:~/btnx-0.4.11/btnx-config-0.4.9$ btnx-config
/usr/share/btnx-config/btnx-config.glade
(btnx-config:22040): Gtk-WARNING **: Unable to locate theme engine in module_path: "cleanice",
(btnx-config:22040): Gtk-WARNING **: Unable to locate theme engine in module_path: "cleanice",
Warning: configuration file for configuration "Default" does not exist. Deleting configuration.
Aborted
max@Ubu804:~/btnx-0.4.11/btnx-config-0.4.9$ sudo btnx-config
/usr/share/btnx-config/btnx-config.glade
Warning: configuration file for configuration "Default" does not exist. Deleting configuration.
Aborted
Does it have anything to do with the theme I am using? I am currently using Mac4Lin compiz/emerald theme with customized icon theme etc.
shimoda
May 1st, 2008, 01:14 PM
Fantastic improvements since last version I used... Congratulations!!
Alrik
May 1st, 2008, 04:56 PM
Hi there,
I just installed Hardy instead of Gutsy and now ran into an problem with btnx:
sudo btnx-config
/usr/share/btnx-config/btnx-config.glade
(btnx-config:32741): Gtk-WARNING **: Failed to set text from markup due to error parsing markup: Fehler in Zeile 1, Zeichen 15: Ungültiger UTF-8-kodierter Text - »<b>Ger?teerkennung</b>« ist nicht gültig
(btnx-config:32741): Gtk-WARNING **: Failed to set text from markup due to error parsing markup: Fehler in Zeile 1, Zeichen 23: Ungültiger UTF-8-kodierter Text - »<b>Befehlsausf?hrung</b>« ist nicht gültig
(btnx-config:32741): Gtk-WARNING **: Failed to set text from markup due to error parsing markup: Fehler in Zeile 1, Zeichen 15: Ungültiger UTF-8-kodierter Text - »<b>Ger?teerkennung</b>« ist nicht gültig
(btnx-config:32741): Gtk-WARNING **: Failed to set text from markup due to error parsing markup: Fehler in Zeile 1, Zeichen 23: Ungültiger UTF-8-kodierter Text - »<b>Befehlsausf?hrung</b>« ist nicht gültig
(btnx-config:32741): Gtk-WARNING **: Failed to set text from markup due to error parsing markup: Fehler in Zeile 1, Zeichen 15: Ungültiger UTF-8-kodierter Text - »<b>Ger?teerkennung</b>« ist nicht gültig
(btnx-config:32741): Gtk-WARNING **: Failed to set text from markup due to error parsing markup: Fehler in Zeile 1, Zeichen 23: Ungültiger UTF-8-kodierter Text - »<b>Befehlsausf?hrung</b>« ist nicht gültig
(btnx-config:32741): Gtk-WARNING **: Invalid input string
(btnx-config:32741): Gtk-WARNING **: Invalid input string
Segmentation fault
I've just set the locale to de_DE@euro (global) and cant imagine, why there is a UTF-8 Problem...
Could anybody help me please?
Thanks a lot
Alex
olmari
May 1st, 2008, 05:03 PM
I have similar problem like this http://ubuntuforums.org/showpost.php?p=3568716&postcount=444 with 64-bit Ubuntu 8.04...
Otherwise btnx is working as should, but "restart btnx" buttons gives this error:
"Failed to execute command:
/etc/init.d/btnx restart". Make sure btnx is installed correctly."
but the btnx is exactly there where error says not working... Yet manually executing /etc/init.d/btnx restart does the trick...
airjer
May 2nd, 2008, 12:53 AM
I have similar problem like this http://ubuntuforums.org/showpost.php?p=3568716&postcount=444 with 64-bit Ubuntu 8.04...
Otherwise btnx is working as should, but "restart btnx" buttons gives this error:
"Failed to execute command:
/etc/init.d/btnx restart". Make sure btnx is installed correctly."
but the btnx is exactly there where error says not working... Yet manually executing /etc/init.d/btnx restart does the trick...
I've fixed this error on my end. Where your configuration name is... do not input a name with spaces! I renamed it plain ol' Logitech (from Logitech MX Revolution) and now everything loads and restarts correctly. :O
daou
May 2nd, 2008, 09:30 AM
Sorry to say that hot-plugging was already checked. I turned off the mouse anyway and when I turned it back on, I had to manually start btnx to get my mouse button features back.
Happy to hear btnx has been useful. The problem might be with udev, or something else in the system that isn't causing udev to fire up btnx when your mouse is plugged in. It's something that is very difficult to pinpoint.
daou
May 2nd, 2008, 09:33 AM
Hello,
I'm experiencing a strange issue with btnx 0.4.11 & btnx-config 0.4.9 and command execution.
I was looking for a way to implement a left double-clic function to my mouse middle button. Reading around I found many ways to do this. I choose a combination of btnx/btnx-config + xte.
You can use an undocumented feature in btnx to make this work. Bind a button to BTN_LEFT and exit btnx-config. Then open up the configuration file (/etc/btnx/btnx_config_something) and edit the type value of that button. Set "type=1". This should make a double click.
daou
May 2nd, 2008, 09:35 AM
Thats good to know! Well I have the MX Revolution mouse now and I am trying to install in 8.04 32 bit as of now. I tried using the binary (4.0.9) and then by compiling the source of 4.0.11 as described in the first page. In both cases btnx does not start.
max@Ubu804:~/btnx-0.4.11/btnx-config-0.4.9$ btnx
bash: /usr/sbin/btnx: No such file or directory
max@Ubu804:~/btnx-0.4.11/btnx-config-0.4.9$ sudo btnx
btnx: uinput modprobed successfully.
btnx: Opening config file: /etc/btnx/btnx_config_Default
btnx: Could not read the config file: No such file or directory
btnx: Configuration file error.
max@Ubu804:~/btnx-0.4.11/btnx-config-0.4.9$ btnx-config
/usr/share/btnx-config/btnx-config.glade
(btnx-config:22040): Gtk-WARNING **: Unable to locate theme engine in module_path: "cleanice",
(btnx-config:22040): Gtk-WARNING **: Unable to locate theme engine in module_path: "cleanice",
Warning: configuration file for configuration "Default" does not exist. Deleting configuration.
Aborted
max@Ubu804:~/btnx-0.4.11/btnx-config-0.4.9$ sudo btnx-config
/usr/share/btnx-config/btnx-config.glade
Warning: configuration file for configuration "Default" does not exist. Deleting configuration.
Aborted
Does it have anything to do with the theme I am using? I am currently using Mac4Lin compiz/emerald theme with customized icon theme etc.
The theme shouldn't matter, but always remember to start btnx-config with sudo. Try deleting the file /etc/btnx/btnx_manager and if a file called /etc/btnx/btnx_config_Default exists, delete that as well. Then start btnx-config again.
daou
May 2nd, 2008, 10:02 AM
Fantastic improvements since last version I used... Congratulations!!
I hope so. It has been almost a year (btnx turns one in May 26) since version 0.1.0. A lot has changed, and there are many changes and improvements planned for later. In fact, I put together a Wiki page for btnx development and discussion. It contains information about the upcoming 0.5.x version which I will be working on during the summer, and allows others to make suggestions, ask for features, etc. Or get involved in the development if they wish to do so.
I'm holding back the link for now, because I haven't made any concrete decisions regarding all this. I wouldn't want people wasting their time contributing if I won't be able to do anything with it.
daou
May 2nd, 2008, 10:07 AM
Hi there,
I just installed Hardy instead of Gutsy and now ran into an problem with btnx:
I've just set the locale to de_DE@euro (global) and cant imagine, why there is a UTF-8 Problem...
Could anybody help me please?
Thanks a lot
Alex
It could be a problem with your locale settings. The German translations work fine on my Feisty. This is what I do to test the German translations:
$ export LANGUAGE=de_DE
$ sudo btnx-config
odierick
May 2nd, 2008, 08:39 PM
You can use an undocumented feature in btnx to make this work. Bind a button to BTN_LEFT and exit btnx-config. Then open up the configuration file (/etc/btnx/btnx_config_something) and edit the type value of that button. Set "type=1". This should make a double click.
Thank you for reminding me about that solution to double-click with a mouse button. I'm most grateful.
However, the issue about X apps not executing from a script unless btnx is manually restarted remains. Can you reproduce this behavior?
airjer
May 3rd, 2008, 03:14 AM
I've got a new problem now. I have my MX Revolution's side front and back keys set for alt+left and alt+right respectively. The alt key tends to get stuck as being pressed randomly and I have to press the actual keyboard to get it to release. Sometimes that does not even work and is quite annoying. What could be causing this?
daou
May 3rd, 2008, 03:41 AM
I've got a new problem now. I have my MX Revolution's side front and back keys set for alt+left and alt+right respectively. The alt key tends to get stuck as being pressed randomly and I have to press the actual keyboard to get it to release. Sometimes that does not even work and is quite annoying. What could be causing this?
Set the "Force immediate button release" property for each button that has this problem in btnx-config. It releases the key combination right after you press the mouse button (it doesn't wait for you to release the mouse button).
It's a strange problem I never found a good explanation for. Usually it appears for keycombos that make the OS do a lot of work (switch workspace with lots of windows, browser back and forward in big webpages, etc). It seems as if signals get lost.
daou
May 3rd, 2008, 03:53 AM
Thank you for reminding me about that solution to double-click with a mouse button. I'm most grateful.
However, the issue about X apps not executing from a script unless btnx is manually restarted remains. Can you reproduce this behavior?
Try using su instead of sudo:
/bin/su odierick -C /home/odierick/bin/DoubleClic.shOr place the su command in the script, and only give the script name to btnx-config like I described here: https://bugs.launchpad.net/btnx-config/+bug/198339
daou
May 3rd, 2008, 04:36 AM
And a little news about btnx 0.4.12:
It changes the default revoco option to permanent for MX Revolution users. This means the wheel behavior doesn't change when the mouse goes to sleep. I will release it at a later date, but it's already available in the SVN trunk.
Alrik
May 3rd, 2008, 08:28 AM
It could be a problem with your locale settings. The German translations work fine on my Feisty. This is what I do to test the German translations:
$ export LANGUAGE=de_DE
$ sudo btnx-config
Thanks for your quick reply!
Is there a possibility to prevent btnx-config from using the german translation? Probably the english version works for me...
daou
May 3rd, 2008, 09:55 AM
Thanks for your quick reply!
Is there a possibility to prevent btnx-config from using the german translation? Probably the english version works for me...
Try
$ export LANGUAGE=en_US:en
$ sudo btnx-configBut for the German, you could have also tried
$ export LANG=de_DE.UTF-8
$ export LANGUAGE=de_DE:de
$ sudo btnx-config
airjer
May 3rd, 2008, 02:31 PM
Set the "Force immediate button release" property for each button that has this problem in btnx-config. It releases the key combination right after you press the mouse button (it doesn't wait for you to release the mouse button).
It's a strange problem I never found a good explanation for. Usually it appears for keycombos that make the OS do a lot of work (switch workspace with lots of windows, browser back and forward in big webpages, etc). It seems as if signals get lost.
I had that set to begin with, but still get the same result. It happens during simple back and forward tasks in Nautilus.
Alrik
May 3rd, 2008, 03:48 PM
Try
$ export LANGUAGE=en_US:en
$ sudo btnx-configBut for the German, you could have also tried
$ export LANG=de_DE.UTF-8
$ export LANGUAGE=de_DE:de
$ sudo btnx-config
Thanks a lot, the export ... UTF-8 worked fine!
Jorenko
May 3rd, 2008, 05:12 PM
Daou,
Thanks a lot for all your work on btnx. It's working great for me on Hardy, except that I can't X to stop grabbing the button events from my MX Revolution. I am using your suggested xorg.conf configuration, and I've pasted my xorg.conf below. Can you suggest anything else to try?
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "ZAxisMapping" "4 5"
EndSection
Section "Device"
Identifier "Configured Video Device"
Driver "nvidia"
Option "NoLogo" "True"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
EndSection
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
Defaultdepth 24
EndSection
Section "ServerLayout"
Identifier "Default Layout"
screen "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Module"
Load "glx"
EndSection
odierick
May 4th, 2008, 12:13 AM
Try using su instead of sudo:
/bin/su odierick -C /home/odierick/bin/DoubleClic.shOr place the su command in the script, and only give the script name to btnx-config like I described here: https://bugs.launchpad.net/btnx-config/+bug/198339
Replacing sudo by su -c didn't make X app start, but it made the X app output some error (there was no output before) :
Cannot open display:
It made me think that maybe the environment was not correctly set by btnx so I examined the environment with 'export' from my script and found out that it was lacking X window variables.
Then all became clear : when btnx starts the first time from init.d there is no X window so when it executes commands it spawns shells without X window support.
When manually restarted, btnx receives current xterm environment so X apps can run.
Anyway, my solution is to setup DISPLAY and XAUTHORITY at the begining of my script like this :
#!/bin/sh
# /root/bin/btnx-su.sh
umask 022 # To read/write files.
export DISPLAY=':0.0'
export XAUTHORITY=`ls /tmp/.gdm*`
su -c "$1" odierick
The above script is a wrapper. Here is the actual function of the button :
#!/bin/sh
# /home/odierick/bin/DoubleClic.sh
xte 'mouseclick 1' 'mouseclick 1' 2>&1 >/home/odierick/btnx.log
And in btnx-config the button is associated with the command :
/root/bin/btnx-su.sh /home/odierick/bin/DoubleClic.sh
And finally I can execute X apps with a mouse button without restarting btnx!
What is not clear is why restarting with btnx-config doesn't provide a full environment to btnx.
Should you investigate this further here is some information :
Initially btnx environment has no DISPLAY nor XAUTHORITY variable so at first commands have no X window support.
When restarted in btnx-config those variables become :
export DISPLAY=':0.0'
export XAUTHORITY='/tmp/libgksu-cvFQDg/.Xauthority'
It seems that X apps cannot open display with this environment.
When btnx is manually restarted it finally is :
export DISPLAY=':0.0'
export XAUTHORITY='/tmp/.gdmZQ3GAU'
and X apps can open display.
Anyway, my issue is resolved, thanks Daou!
oni5115
May 4th, 2008, 12:25 AM
Sorry if I missed it, but is there a list of mouses that are known to work with this? I'd like to know if it works with Logitech MX 1000, since I'd like to be able to configure my extra buttons so I can set them to other keyboard buttons (like ctrl, shift, pgUp, etc.)
It would be so nice to be able to do that for setting hotkeys for games like WoW, and Vent... the one thing I truly miss from Windows.
vBulletin® v3.8.4, Copyright ©2000-2012, Jelsoft Enterprises Ltd.