[問題] (USB)マウスがときどき動かない問題 Sometimes not moving usb mouse


【(USB)マウスがときどき動かない問題】(解決)
[SOLVED] Sometimes not moving usb mouse

(見づらいですが下から上に推移していきます)
Upwards is the latest comments, sorry and my english.
I'm looking for the answer for my problem.
but still digging in like the dog :p

in the following I have be testing one by one.
all changing stuff was returned the past.
this expedition is suspended.
maybe when JESSIE-release-day is april,25th , it'll be alright :p


◆At last this problem fixed as kernel ver.4.0.0
とうとう4.0.0で治りましたね。お疲れ様でした

つまり俺は何もしていない事実


◆ハイバネーションが使えるようになったので
しばらくシャットダウンしないでハイバネート使えばいいか。起動も速いし。

I'm use to be the Hibernation instead the Shutdown untill 25th,April.

http://bernaerts.dyndns.org/linux/74-ubuntu/220-ubuntu-resume-usb-hid

起動後、マウスが動いている状態を[a] 動いていない状態を[X]と表す
[MouseMoving] =[a] and [MouseNotMoving]=[X] are simbolic.

It's observed regularity. 規則性が認められる。

1, [X] -> poweroff -> [a]
2, [a] -> reboot   -> [a]
3, [X] -> reboot   -> [X]
4, [a] -> poweroff -> [X]

the Reboot take over it, in the other hand the Poweroff inverte it.
再起動は状態を引き継ぐ。終了は状態を反転させる結果となっている。
therefore this is telling you select Reboot not ,
Poweroff and turn on PC again right when USB-Mouse not moving.
これは起動してマウスが動作していない場合は、再起動ではなく電源切でやり直す
ことで直るということを示している。

応急的に/etc/grub.d/40-customに以下を記入、保存し

menuentry "Reboot" {
        reboot
}
menuentry "Poweroff" {
        halt
}

$sudo update-grubを行ってGrubメニューに出てくるようにしておく。

その日初めて電源を入れGrubメニューが起動したときにPowerdownを選び、
一旦電源切断。改めて電源ONしてmouseが使用できるように起動する。
どっちだかわからなくて困るようなら/etc/rc.localにでも以下のコードを
書いておけばUSBマウスが起動していない時には強制的にpoweroffになる。

in /etc/rc.local
--
if [ -e /dev/input/mouse0 > /dev/null ]
then
  exit 0
else
 poweroff
fi
--
こんなことをしなくても、ぶっちゃけプラグを抜き差しすれば押せば良いわけだが(笑)

jessieが正式にリリースするのが4月25日なのでその頃までには解決していると思う。ってことで一旦切り上げた。






I add new this a rules-file in /etc/udev/rules.d/全てもとに戻して単純なルールだけを追加した
I picked up a part of infomations on below command.
$sudo udevadm info -a -n /dev/input/mouse0
によって表示される情報から抜き出した。
xorg関係の編集はムダなようだったので元に戻した。
--
SUBSYSTEMS=="input",\
ATTRS{name}=="PixArt USB Optical Mouse", \
ATTRS{phys}=="usb-0000:00:04.0-1/input0"
--
もっともudevadm test /etc/udev/rules.d/hoge.rules
を行うとunable open hoge.rulesと出るのであるだw
Butこれらがないと完全にマウスが起動しなくなった。
これはむしろ良い兆候だと個人的には思えている。


※以下の設定では改善できませんでした。
 

Caution: The follwing, It was having no effects for that.

OMG,It's recurrenced .
あ〜ぁ再発しちゃったわ

まとめ)
1,dmesgで見られるエラーをなるべくfixedしておく
2,もしnvidiaユーザーならそれらのドライバ問題をなんとかしておく
3, キースSさんの方法を試す。忍耐で。

※あくまで俺の環境なので直らなかったらごめんなさい。

This problem's solution in English
1, You should be almost fixing that had little-bit errors in log-files like dmesg.
2, Nvidia driver keep correctly,if it had.
3, Use kees.S's method.




◆Finally my problem fixed.

I am appreciate to Mr. Kees S. of ask Ubuntu.
your a comment saved me , thank you sir.

◆Why did he recommended do lsusb -v command action?

When I search key-words like "detect usb mouse" ,
He was in there who he have been saying that ,
do '*****lsusb -v 2>&1 1>/dev/null' and setting in 'cron-file'.
do Did you understood it?
I think 5"*"s is a kind of timing for CRON when that's actioned ,
do lsusb command is same like wakeup-action for usb-devices.
Of course I trusted him and made it as '/etc/cron.d/usbmouse' .
#chmod 644 /etc/cron.d/usbmouse and three times reboot ? .

*****lsusb -v 2>&1 1>/dev/null
***** lsusb -v 2>&1 1>/dev/null

is it same effect, isn't it?

$ cat /etc/cron.d/usbmouse 
#!/bin/sh
*****lsusb -v 2>&1 1>/dev/null

こういうアクションって面白い。
正直、理解はできないけど効果が合ったんだろうな。
設置して3回はマウスが起動しなかったし、usbを外して入れても
udevすら働かない状況だった。まるでマウスのフリーズ。
4回以降は、今のところすんなりマウスが動作する。
様子を見るつもり。(03/16/2015 mon.)

 ◆add
it's added 'ID' and 'Device' in 55-usbmouse.conf.
I got 'ID' as follows.

$lsusb -v | grep -i "id \|mouse"

より精度よく加えたという感じ?

◆setting xorg for usbmouse 


section InputDevice -> InputClass

/usr/share/X11/xorg.conf.d/55-usbmouse.conf

Section "InputClass"
        Identifier "My Mouse"
        MatchIsPointer "yes"
        Option "AccelerationProfile" "-1"
        Option "AccelerationScheme" "none"
        Option "ID" "093a:2510"
        Option "Device" "/dev/input/event1"

EndSection

このInputClassって強力な感じでMatchなんたらも多数もってるし。
なんならMatchIsVendorとかでも良いんだろう。

◆Nvidia driver

nouveau -> nvidia drivers

simple install

理解してないばかりか手順が間違えていて効果が出ていなかった(苦笑)
実際、nouveauでも全く問題ないのだがエラーを吐き、
今回の問題にも悪影響が感じられたのでnvidiaに移行しただけ。


◆delete that's hotplug script and

I looked at $dmesg and found some errors out,and that's a message below.
this is incorrect please boot with i8042.nopnp
then I added "i8042.nopnp" in /etc/default/grub, GRUB_CMDLINE_LINUX_DEFAULT is. and did #update-grub

結局、DmesgなりXorg.0.logなどのlogがキレイでエラーが無いようにしてないと



※以下の設定では改善できませんでした。
 

Caution: The follwing, It was having no effects for that.


◆old hotplug script

I had this script in /etc/init.d/ as 'input.agent' and 'input.rc' ,
and did #chmod +x both.
http://tldp.org/HOWTO/XFree-Local-multi-user-HOWTO/scripts.html

about 'input.agent' , line : cd /etc/hotplug -> cd /lib/udev
and not need line deleted.
that input.rc told that is /proc/bus/input where it is deployed.
However I'm not sure about it, so it's just 'kiyasume' ,
meaning as a consolation.
After setting this , it's increased of 'event' in /dev/input.
It became event13 that was event5 before and after.
Of course the mouse is moving right.
There its description in /proc/bus/input/devices .

◆search about 'Modalias'

it is saved on /lib/modules/'$uname -r'/module.alias,
and moving Modalias search like this.

# find /sys/ -name "modalias" -exec cat {} \; |grep usb

it results like this.
usb:v093Ap2510d0100dc00dsc00dp00ic03isc01ip02
usb:v[vendorID]p[productID]:::::
I selected usb mouse propeties's it, and added this line ,
via /lib/.../module.alias  as a precaution.

◆BTW...Did you have kenel update ?

Repository had already new kenel, oh my.
$sudo apt-get install linux-image
linuz-3.2.0-4 -> Linux 3.16.0-4
I think I exactly got the hightway on.
maybe it's too sneaky but right way , aren't you :P

◆ちょっと乱暴な方法を見つけた 

(以下の方法でも再発しました残念)
the folloing method was happened that problem,that is closed.

---
気を取り直して検索!検索!ググりまくれ!すると・・・
「Shaika-Dzariの方法」というのをあちこちで見かけた。

「runディレクトリをリネームしろ」という過激なもの。
ページ内の方法ではうまく俺の場合はいかなくて別のディストリを起動して
i was having another distro boot.
/run -> /run.bak とリネームrename、空emptyの/runを作成して
再起動rebootでうまく起動できた
mkdir /mnt/sdb1/run
reboot
https://bbs.archlinux.org/viewtopic.php?pid=927813

ちょっとした注意点だけど、普通のgrubメニューのからうまくいかなかったら
recovery modeとかで入って最後に止まるところでガイダンスにしたがって
CTRL+Dで継続して立ち上げるのは良いかも知れない。2度目からは普通でOK
nextime normaly boot.
不思議なことにピタリとマウス起動の失敗がとまった\(^^)/
(と、その時は喜んでいたのであった)

◆全てを実施しているページを掘り当てた。

This is a good page where finally I found .

・zenityによるdevice? のupdate
・スクリプトscriptによる「そのマウスmouseの選択selection」の実行
・make rulesファイルの作成とその中runでスクリプトscriptの実行 did it


http://bernaerts.dyndns.org/linux/74-ubuntu/220-ubuntu-resume-usb-hid



◆これもやったけど関係なさそう

And this is the command to disable it:
echo -1 >/sys/module/usbcore/parameters/autosuspend

This can be made permament by creating the file /etc/modprobe.d/disable-usb-autosuspend.conf with the content:
options usbcore autosuspend=-1
berarma
Posts: 63
Joined: 2008-03-22 21:13

◆usbmount

お? usbmountってのがあるそうな。
usb用automounter?ぽいですが・・・速攻ゲッツですw

http://askubuntu.com/questions/521559/usb-sticks-not-accessible-system-hangs-at-shut-down-related-older-hardware

it's removed it.

◆ところが><;
 KERNEL=="usb", RUN{builtin}+="kmod load mouse0"を削除するはめに。
というのもusbマウスが呼び出されたのは良いのだけど直にdisconnectとなり
さらに起動を繰り返すというw とんでもなことになってしまってた


ところが他の関係ないドライバを抜き出ししているうちに上記を削除していても
なんかちゃんとusbマウスが働いているw なんという最期だろうorz…


◆とうとう見つけたっぽい。

このページ https://bugs.launchpad.net/ubuntu/+source/udev/+bug/1014460
で明確に

  /lib/udev/rules.d/80-drivers.rules:
  ...
  DRIVER!="?*", ENV{MODALIAS}=="?*", RUN+="/sbin/modprobe -bv $env{MODALIAS}"

 この読み込みに失敗することが書かれていて
ちょっとした対処方法として(要するに)書きなおしてみたとのことだった
SUBSYSTEM=="serio", ENV{MODALIAS}=="?*", RUN+="/sbin/modprobe -bv $env{MODALIAS}"
ただし今回の俺のマウスの場合、driversとして登録されていないと判明。
(つまり汎用的なドライバをチョイスして宣言している模様)

 マウスの情報
 iBUFFALO BMO1Uシリーズ s/n A40311

 これらを参考にして「名指し」にしておいた
( /lib/udev/rules.d/80-drivers.rules に追加した)

KERNEL=="usb", RUN{builtin}+="kmod load mouse0"


[mouse0] or [event○] or [input/mice] (確認していない)
まぁダサすぎるだろうけどw
古い情報だとmodprobe mouse0とかになるわけだけどkmod loadはカッコイイ。
できればスクリプトを書いて任せちゃえばより良いのだろうが暫く放置w
RUN{builtin}+="/path/to/script/hoge.sh

◆あとがき
$dmesg |grep -i usb
で確認するとどうもダブルで設定しようとしている感じ。
でも1秒くらいなものだし、ちゃんと動いてくれればまぁいいや。

まず検索の仕方が悪かったと反省している。(毎回だろ!)
[usb mouse not moving]系の事象によるググり方はマズイようだ。
[failed loading mouse usb]系のよりsystemに近い具体的なキーワード
それと[bug]で調べた方が良かったようだ。



※以下の設定では改善できませんでした。


Caution: The follwing, It was having no effects for that.



03/03-04/2015
◆rulesファイル設置 /etc/udev/rules.d/10-usbmouse.rules

BUS=="usb",                  #service udev statusやったら文句云われてた

KERNEL=="event*",
ATTRS{idVendor}=="093a",
ATTRS{idProduct}=="2510",
NAME=="input %k",
SYMLINK+="event_PixArt"

BUS=="usb",
KERNEL=="mouse*",
ATTRS{idVendor}=="093a",
ATTRS{idProduct}=="2510",
NAME=="input %k",
SYMLINK+="mouse_PixArt"

◆xorgにも一応設置。/usr/share/X11/xorg.conf.d/55-hoge.conf

Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection


※検査
$udevadm info /dev/input/mouse0
$udevadm info /dev/input/event1 (人によって違う)

より詳しく 
$udevadm info -a -p $(udevadm info -q path -n /dev/input/mouse0)
ところで、udevエラーしてないか?
#service udev status

桃色?ぽいところは自分の環境を調べて変える。緑色ぽいところは自分で決める
psauxはps/2でinput/miceがusbマウスなのだそうです)

※更新
udevadm hwdb --update
udevadm trigger
udevadm control --reload
--
◆hwdbにも追記
/lib/udev/hwdb.d/20-usb-vendor-model.hwdb に以下を挿入

usb:v093ap2510*
 ID_MODEL_FROM_DATABASE=PixArt,USB Optical Mouse

◆/etc/udev/hwdb.d/30-PixArt_USB_mouse.hwdb
mouse:usb:v093ap2510:name:PixArt USB Optical Mouse
紫v=venderのid、p=productのidという意味で
093aと2510が各々その値

udevadm hwdb --update
udevadm trigger

03/01/2015 sun.  02/28/2015 sat.  02/27/2015 fri.
deleted***

0 件のコメント:

コメントを投稿