Ключевые слова:mouse, driver, gentoo, linux, usb, speed, (найти похожие документы)
From: Gamer <gamer@bestfilez.net.>
Newsgroups: email
Date: Mon, 14 Mar 2005 14:31:37 +0000 (UTC)
Subject: Разгон USB мыши под ОС Gentoo Linux
Всем известно, что опрос мышки по USB идет не быстрее 133Hz, с ps/2
проще есть очень много способов как ее подразогнать, но сегодня мы будем
разгонять USB мышь, да еще и по ОС Gentoo Linux.
Началом для этой статьи послужил топик на форуме
http://forums.gentoo.org/viewtopic.php?t=164679 Gentoo Linux, кое что
новое для себя вы можете узнать прочитав его.
И так начнем, все нижеизложенное было протестировано на моей мышке
Logitech MX500, дистрибутиве Gentoo Linux 2004.3 (emerge --update
system) и ядре linux-2.6.11-gentoo. Также я не несу никакой
отвечтвенности, если в результате "разгона" мышки она
каким-либо образом пострадала.
1) Качаем и устанавливаем патч для ядра.
Взять патч можно вот здесь
(http://omfg.linux.dk/pub/configurable-hid-mouse-polling/archive/chmp-r5-FULL.patch).
Копируем его в директорию с исходниками ядра, обычно это /usr/src/linux
и выполняем команду
patch -p1 < chmp-r5-FULL.patch
После успешного патча ядра переходим ко 2-у пункту.
2) Конфигурация ядра и его установка.
Набираем в консоли
make menuconfig
Затем заходим в Device Drivers ---> USB Support и выбираем
<*> Support for Host-side USB
--- USB Host Controller Drivers ****Выбираем в зависимости от чипсета****
<*>EHCI HCD (USB 2.0) support
<*>OHCI HCD support
<*>UHCI HCD (most Intel and Via) support
--- USB Input Devices
<*> USB Human Interface Device (full HID support)
(2) USB HID Mouse Interrupt Polling Interval *****Уменьшаем время опроса мышки до 2ms***
[*] HID input layer support
Вот список мышей, которые без проблем работают на 2ms:
* Logitech's MX-family
* Logitech Mouse Man Dual Optical
* Logitech iFeel
* Microsoft Intellimouse Explorer
* Microsoft Intellimouse Optical 1.1
Дальше как обычно:
make && make modules_install
В обязательном порядке сделайте для этого ядра отдельный пункт в вашем
загрузчике.
3) Проверка работы патча.
После загрузки выполните команду:
cat /proc/bus/usb/devices
Если все прошло гладко, то вы увидите примерно следующее:
T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=1.5 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=046d ProdID=c025 Rev=98.02
S: Manufacturer=B16_b_02
S: Product=USB-PS/2 Optical Mouse
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 98mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid
E: Ad=81(I) Atr=03(Int.) MxPS= 5 Ivl=2ms
Это означает, что теперь опрос нашей мыши проводится каждые 2ms.
Но это еще не все, для гордых владельцев мышек серии logitech, коим я
тоже являюсь есть возможность поднять скорость опроса поверхности с 400
cpi до 800 cpi. Делается это очень просто, качаем вот отсюда
http://freshmeat.net/projects/logitech_applet/ программу logitech applet.
1) Распаковываем ее куда-нибудь, читаем в обязательном порядке файл
README, затем просто:
./configure --prefix=/usr
make
make install
(Вам потребуется libusb для компиляции программы, взять ее можно вот
тут: http://libusb.sourceforge.net/)
Если все прошло успешно, то сама программа logitech_applet будет
находится в /usr/bin/.
2) Проверяем скорость работы мышки.
Выполняем команду logitech_applet --get-res, получаем что-то вроде:
002/002 046D/C025 M-BP81A MX500 Optical Mouse
Resolution: 400cpi
Cruise Control / Smart Scroll: Disabled
Как видно сейчас скорость опроса поверхности стоит 400cpi.
Выполняем команду:
logitech_applet -s800
Затем опять logitech_applet --get-res и видим, что ситуация поменялась.
002/002 046D/C025 M-BP81A MX500 Optical Mouse
Resolution: 800cpi
Cruise Control / Smart Scroll: Disabled
Теперь нужно сделать так, чтобы при перезагрузке все автоматически
выставлялось в 800cpi.
Если у вас работает hotplug, то просто разархивируйте содерживмое вот
этого (http://download.linux-gamers.net/hardware/logitech/hotplug_logitech.tar.gz)
архива в директорию /etc/hotplug/usb. Все должно работать.
Содержимое архива - 2-а файлика logitech_mouse.usermap и
logitech_mouse, logitech_mouse.usermap определяет какая мышь подключена
и запускает logitech_mouse, который выставляет 800cpi и отключает cruise
control.
Либо есть второй способ, но он подходит владельцам Gentoo Linux, создаем
в /etc/init.d/ файлик logitech следующего содержания:
#!/sbin/runscript
depend() {
need localmount
before gpm
}
checkconfig() {
if [ ! -x /usr/bin/logitech_applet ]; then
eerror "Logitech Applet not found."
fi
return 0
}
start() {
checkconfig || return 1
ebegin "Running logitech mouse applet"
/usr/bin/logitech_applet --set-res=800 > /dev/null
/usr/bin/logitech_applet --get-res | grep [Rr]esolution
eend $?
}
Выполняем: chmod +x logitech затем rc-update add logitech default.
3) Как добавить мышку, которой нет в списке:
Выполняем команду
cat /proc/bus/usb/devices | grep Vendor=046d
Получится что-то вроде этого:
P: Vendor=046d ProdID=c025 Rev=98.02
Открываете logitech_applet.c в vi, находите структуру device_table и
просто копируете одну строку в которой меняете ProductID (2-е поле),
название мышки (3-е поле), поле информации и поддерживаемые возможности,
которые описываются после структуры. Сохраняете этот файл и затем
возвращаетесь к 1-му пункту.
Эту статью прошу считать вольным переводом 2-х статей ребят с
http://www.linux-gamers.net
(1 - http://www.linux-gamers.net/modules/wfsection/article.php?articleid=62 )
(2 - http://www.linux-gamers.net/modules/wfsection/article.php?articleid=47 )
И топика (3 - http://forums.gentoo.org/viewtopic.php?t=164679)
Я просто добавил, то что посчитал нужным, и уточнил некоторые детали.
Я принимаю участие в чемпионатах по компьютерным играм. Раньше я регулярно побеждал, но после моей последней победы в 1945 многие читеры начали использовать вместо клавиатуры манипуляторы типа "мышь" и честно побеждать их с клавиатурой стало практически невозможным.
Очень интересует вопрос разгона клавиатуры, что бы можно было жестоко покарать этих мышастых читеров.
Как разблокировать множитель клавиш? У меня на клавиатуре их (клавиш) всего около одной сотни, а хотелось бы использовать весь потенциал клавиатуры! Я пробовал разгонять клавиатуру по шине (от стандартных 220В 50Гц до 360В 100Гц), но прирост клавиш оказался на уровне погрешности измерений количества клавиш...
Кроме того у меня сгорел холодильник и несколько лампочек, ну и по мелочам, у соседей бытовая техника накрылась на общую сумму более 10 килодолларов, но это жертва, которую я могу себе позволить.
Я слышал, что можно перепрошить блок цифровых клавиш римской прошивкой (заменяет арабские цифры на римские). Кто имеет подобный опыт - стоит ли овчинка вычинки?