USB 장치에 파일로 액세스

USB 장치에 파일로 액세스

포함된 드라이버를 사용하여 Windows XP에 USB 온도계가 있습니다. 단지 공기 온도를 읽은 다음 컴퓨터가 그 값을 읽습니다.

이제 Linux에서 예를 들어 Raspberry Pi에서 사용하고 싶습니다. 전원을 연결했는데 제가 알아낼 수 있는 유일한 것은 시스템 로그에서 장치 정보를 가져오는 것뿐이었습니다.

Jan 25 10:31:01 pi kernel: [  202.825771] usb 1-1.1.2: new full-speed USB device number 7 using dwc_otg
Jan 25 10:31:01 pi kernel: [  202.916413] usb 1-1.1.2: New USB device found, idVendor=413d, idProduct=2107
Jan 25 10:31:01 pi kernel: [  202.916443] usb 1-1.1.2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Jan 25 10:31:01 pi kernel: [  202.922898] input: HID 413d:2107 as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.1/1-1.1.2/1-1.1.2:1.0/0003:413D:2107.0004/input/input2
Jan 25 10:31:01 pi mtp-probe: checking bus 1, device 7: "/sys/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.1/1-1.1.2"
Jan 25 10:31:01 pi mtp-probe: bus: 1, device: 7 was not an MTP device
Jan 25 10:31:01 pi kernel: [  202.976409] hid-generic 0003:413D:2107.0004: input,hidraw1: USB HID v1.11 Keyboard [HID 413d:2107] on usb-3f980000.usb-1.1.2/input0
Jan 25 10:31:01 pi kernel: [  202.981627] hid-generic 0003:413D:2107.0005: hiddev96,hidraw2: USB HID v1.10 Device [HID 413d:2107] on usb-3f980000.usb-1.1.2/input1
Jan 25 10:31:01 pi mtp-probe: checking bus 1, device 7: "/sys/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.1/1-1.1.2"
Jan 25 10:31:01 pi mtp-probe: bus: 1, device: 7 was not an MTP device

드라이버를 작성하는 기술이 없기 때문에 일반적으로 /proc또는 의 파일을 사용하는 것처럼 해당 로그의 파일을 사용하여 데이터를 읽는 것이 가능하다고 생각했지만 /dev파일 및 디렉토리를 이해하지 못합니다 .

가능합니까? Linux가 장치를 HID 장치로 인식하는 데 도움이 됩니까?

답변1

보세요temperx/temperx.goUSB 장치 413d:2107을 지원하는 프로젝트입니다.

온도PHP에서 제공하는 hid-query 바이너리를 사용하여 작성된 Munin 플러그인입니까?조정하다.

온도계현재 온도와 습도를 보고하기 위해 Go로 작성된 독립형 도구입니다.

아마도 Go 도구를 먼저 사용해 볼 것입니다. 설치가 더 쉬운 것 같습니다.

  1. 설치하다가다

  2. 프로젝트 사이트의 참고 사항:

    $ go get github.com/mreymann/temperx
    $ go install github.com/mreymann/temperx
    

    temperx바이너리가 생성되어야 합니다.$GOPATH/bin/

    예:

    $ /root/go/bin/temperx
    Temperature: 23.33, Humidity: 40.6
    

관련 정보