저는 USB 케이블을 통해 지속적인 직렬 데이터 스트림을 통해 데이터 출력을 제공하는 태양광 발전 시스템을 연구하고 있습니다. 이 시스템은 Windows 7 PC(태양계 먼지 상자에 있는 CD-ROM에 있는 드라이버 사용)와 드라이버를 설치할 필요가 없는 Windows 10 PC에서 작동했습니다(물론 드라이버가 이전에 설치되었을 수도 있음). 다른 장치와 함께 작업).
Windows 장치 관리자에서 케이블 유형이 CDC_ACM
.
이제 데이터 수집을 자동화할 수 있도록 BeagleBone Black과 함께 사용하려고 합니다. 태양계 근처에는 플러그 지점이 없으므로(아이러니한가?) 내 PC에서 BeagleBone에 전원을 공급하고 있습니다. 케이블을 연결한 후 입력했는데 lsusb
장치가 연결되지 않은 것으로 표시됩니다.
debian@beaglebone:~$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
메시지 로그를 보면 다음과 같은 내용이 표시됩니다.
debian@beaglebone:~$ dmesg | tail -n 20
[ 442.566683] hub 1-0:1.0: hub_resume
[ 442.566753] hub 1-0:1.0: port 1: status 0101 change 0001
[ 442.668291] hub 1-0:1.0: state 7 ports 1 chg 0002 evt 0000
[ 442.668381] hub 1-0:1.0: port 1, status 0101, change 0000, 12 Mb/s
[ 442.721964] CAUTION: musb: Babble Interrupt Occurred
[ 442.773713] usb 1-1: new full-speed USB device number 44 using musb-hdrc
[ 442.823536] musb-hdrc: setup fifo_mode 4
[ 442.823583] musb-hdrc: 28/31 max ep, 16384/16384 memory
[ 442.826509] hub 1-0:1.0: unable to enumerate USB device on port 1
[ 442.833788] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0002
[ 442.833924] hub 1-0:1.0: port 1, status 0500, change 0003, 480 Mb/s
[ 442.941687] hub 1-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x500
[ 442.941807] hub 1-0:1.0: hub_suspend
[ 442.941867] usb usb1: bus auto-suspend, wakeup 1
[ 443.006061] usb usb1: usb wakeup-resume
[ 443.006138] usb usb1: usb auto-resume
[ 443.006178] hub 1-0:1.0: hub_resume
[ 443.006253] hub 1-0:1.0: port 1: status 0101 change 0001
[ 443.107772] hub 1-0:1.0: state 7 ports 1 chg 0002 evt 0000
[ 443.107860] hub 1-0:1.0: port 1, status 0101, change 0000, 12 Mb/s
처음 보내면 sudo modprobe cdc_acm
케이블을 연결해도 같은 결과가 나오는 것 같습니다. (다른 BeagleBone Black에서 한 번은 "케이블 불량" 메시지를 받았지만 Windows PC에서는 케이블이 여전히 작동하는지 확인했습니다.)
드라이버가 커널에 존재하는 것으로 보입니다.
debian@beaglebone:/sys/bus/usb/drivers$ ls
cdc_acm cdc_ncm rndis_host usb usbhid
cdc_ether hub rt2870 usbfs usb-storage
debian@beaglebone:/sys/bus/usb/drivers$ cd cdc_acm
debian@beaglebone:/sys/bus/usb/drivers/cdc_acm$ ls
bind new_id remove_id uevent unbind
이 장치를 작동시키기 위한 단계가 누락되었나요?
답변1
오류 메시지에 표시된 것처럼 USB 루트 허브는 연결된 장치를 열거할 수 없습니다. 이러한 오류의 가능한 이유 중 하나는 Beaglebone이 해당 장치에 충분한 전력을 공급할 수 없다는 것입니다.
전원이 공급되는 허브를 Beaglebone에 연결하고 장치를 허브에 연결해 보십시오.
(의견에 따르면 문제가 해결되었습니다.)