USB接続温度湿度計
http://strawberry-linux.com/catalog/items?code=52002
Linuxコマンドライン取得版
http://www.dd.iij4u.or.jp/~briareos/soft/usbrh.html
http://d.hatena.ne.jp/stereocat/20100712/1278937930
ここにあるパッチを参考に下記を修正
$ cat usbrh_main.c.diff --- usbrh_main.c.bak 2011-05-24 00:00:00.000000000 +0900 +++ usbrh_main.c 2011-05-23 00:00:00.000000000 +0900 @@ -230,9 +230,12 @@ } if((rc = usb_set_configuration(dh, dev->config->bConfigurationValue))<0){ - puts("usb_set_configuration error"); - usb_close(dh); - exit(3); + if( rc = usb_detach_kernel_driver_np(dh, dev->config->interface->altsetting->bInterfaceNumber)<0 ){ + + puts("usb_set_configuration error"); + usb_close(dh); + exit(3); + } } if((rc =usb_claim_interface(dh, dev->config->interface->altsetting->bInterfaceNumber))<0){
正解
http://mizupc8.bio.mie-u.ac.jp/pukiwiki/index.php?USB%E6%B8%A9%E6%B9%BF%E5%BA%A6%E8%A8%88#u3ae8951
# cp /home/usbrh-0.05/usbrh /usr/local/sbin/ # chmod ug+s /usr/local/sbin/usbrh
多重実行時のエラー
# /usr/local/sbin/usbrh & /usr/local/sbin/usbrh [1] 6364 -40.00 -4.25 usb_release_interface error 30.36 48.34
zabbix_agentd.conf
UserParameter=room.temperature,/usr/local/sbin/usbrh > /tmp/tempdata1.dat ; cp /tmp/tempdata1.dat /tmp/tempdata.dat ; cat /tmp/tempdata.dat | awk '{print $1}' UserParameter=room.humidity,sleep 3 ; cat /tmp/tempdata.dat | awk '{print $2}'
力技だが、これで様子見。
めも、未検証
以下は参考情報
Debian GNU/Linux 6.0(Squeeze)
USBRH driver for Linux のインストール
http://www.navic.co.jp/?Debian%20GNU%2FLinux%206.0%2F%A5%CE%A5%A6%A5%CF%A5%A6%BD%B8%2FUSBRH%20driver%20for%20Linux%20%A4%CE%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB
http://cgi.din.or.jp/~tabito/diary/?200807c&to=200807240#200807240
http://d.hatena.ne.jp/oxon/20101205/1291499466
http://d.hatena.ne.jp/Briareos/20080325/1206397982
http://www.dd.iij4u.or.jp/~briareos/soft/usbrh.html
http://znz.s1.xrea.com/t/?date=201005
http://www.ipa.go.jp/security/awareness/vendor/programmingv1/b07_03.html