You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
2.5 KiB
57 lines
2.5 KiB
9 years ago
|
---
|
||
|
title: Небольшое облегчение жизни с инфракрасником Tekram 410w
|
||
|
tags: hardware
|
||
|
---
|
||
|
|
||
|
Сделано с помощью udev.
|
||
|
|
||
|
---
|
||
|
|
||
|
Для начала пишем правило для udev:
|
||
|
|
||
|
/etc/udev/rules.d/irda.rules:
|
||
|
|
||
|
# Tekram 410w
|
||
|
SUBSYSTEM=="net", ACTION="add", DEVPATH=="*/irda*", SYSFS{idVendor}=="066f", SYSFS{idProduct}=="4200", RUN+="/lib/udev/irda.sh"
|
||
|
# Rule for all Irda devices:
|
||
|
#SUBSYSTEM=="net", ACTION="add", DEVPATH=="*/irda*", RUN+="/lib/udev/irda.sh"
|
||
|
SUBSYSTEM=="net", ACTION="remove", DEVPATH=="*/irda*", RUN+="/lib/udev/irda.sh"
|
||
|
|
||
|
Пишем скрипт-хелпер `/lib/udev/irda.sh`:
|
||
|
|
||
|
#!/bin/bash
|
||
|
DEBUG=0
|
||
|
DEV=`basename $DEVPATH`
|
||
|
PID=`ps auxwww | grep irattach | grep $DEV | grep -v grep | awk '{print($2)}'`
|
||
|
if [ x"$DEBUG" = "1" ]; then
|
||
|
echo >> /tmp/irda.txt
|
||
|
echo `date` >> /tmp/irda.txt
|
||
|
echo $ACTION >> /tmp/irda.txt
|
||
|
echo $DEVPATH >> /tmp/irda.txt
|
||
|
echo $DEV >> /tmp/irda.txt
|
||
|
echo $PID >> /tmp/irda.txt
|
||
|
echo $SUBSYSTEM >> /tmp/irda.txt
|
||
|
echo $@ >> /tmp/irda.txt
|
||
|
echo "--" >> /tmp/irda.txt
|
||
|
fi
|
||
|
if [ x"$PID" != x"" ]; then
|
||
|
kill $PID
|
||
|
fi
|
||
|
if [ x"$ACTION" = x"add" ]; then
|
||
|
/usr/sbin/irattach $DEV -s
|
||
|
fi
|
||
|
|
||
|
idVendor и idProduct можно узнать набрав `lsusb -v`, при помощи них можно делать специфичные настройки для определенного инфракрасника, если ничего подобного не предусматривается, эту строчку закомментить, а сточку на действие add без idVendor/idProduct раскомментировать.
|
||
|
|
||
|
От root'а делаем ``udevcontrol reload_rules``
|
||
|
|
||
|
Теперь, если инфракрасник зависнет, нужно будет просто переткнуть его в порт...
|
||
|
|
||
|
Поиск решения что бы сие чудо не зависало вообще идет, приветствуются все идеи.
|
||
|
|
||
|
Кстати, это решение дает реальный хот-плаг для инфракрасника, т.е. ничего больше не нужно химичить если его воткнуть на лету :)
|
||
|
|
||
|
Эти действия решает так же проблему: [Проблема с IrDa](http://vl-lug.ru/forum/viewtopic.php?id=39).
|
||
|
|
||
|
(c) Alexander Drozdoff (aka Hatred), Vladivostok, 2006
|