2012-10-16 2 views
0

저는 PyWinUSB를 사용하여 가지고있는 매우 단순한 USB 장치와 통신하려고합니다. 이 장치는 두 가지 구성 요소입니다. 무선 트랜시버 및 장치 자체에는 5 개의 버튼, 회전식 다이얼 및 딥 스위치가 있습니다. 다이얼과 스위치의 설정에 따라 버튼 중 하나를 누르면 값이 송수신기로 전송됩니다.PyWinUSB Indecipipherable 오류 메시지

장치는 다양한 목적으로 신호를 수신 할 수도 있습니다.

PyWinUSB를 사용하여 장치로부터 입력을받는 데 아무런 문제가 없었습니다. 내가 가지고있는 문제는 장치에 뭔가를 보내려고 할 때부터옵니다. 그것은 내가 아직 해독 할 수 없었던 오류를 일으킨다. simple_send.py 예제 프로그램을 기초적인 변경 만하더라도 폭발시킬 수 있습니다.

내가 가진 문제는 내가 목표 사용 매개 변수를 모른다는 것입니다. 나는이 일을 100 % 확신하지는 못했지만 장치를 찾은 후에 장치에서 보고서를 가져 왔을 때 운이 좋았다. 그러나 그 이상으로 나는 그 사실을 알 수 없었다. 왜 오류가 계속 발생하고 그것을 해결하기 위해 무엇을 할 수 있는지.

오류 자체는 here이고 내 버전은 simple_send.py 예 here입니다. 모든 의견을 보내 주시면 감사하겠습니다.

Traceback (most recent call last): 
    File "C:\2.7.x\pywinusb-0.3.1 2.7\examples\simple_send.py", line 45, in <module> 
    click_signal(target_usage, target_vendor_id) 
    File "C:\2.7.x\pywinusb-0.3.1 2.7\examples\simple_send.py", line 32, in click_signal 
    report.send() 
    File "C:\Python27\lib\site-packages\pywinusb-0.3.1-py2.7.egg\pywinusb\hid\core.py", line 1446, in send 
    self.__prepare_raw_data() 
    File "C:\Python27\lib\site-packages\pywinusb-0.3.1-py2.7.egg\pywinusb\hid\core.py", line 1401, in __prepare_raw_data 
    byref(self.__raw_data), self.__raw_report_size)) 
    File "C:\Python27\lib\site-packages\pywinusb-0.3.1-py2.7.egg\pywinusb\hid\winapi.py", line 382, in __init__ 
    raise helpers.HIDError("hidP error: %s" % self.error_message_dict[error_code]) 
HIDError: hidP error: data index not found 
+0

그래서 예외가 발생하는 파일과 행 번호가 있습니다 ('C : \ Python27 ... \ hid \ winapi.py line 38') ... 어떤 코드 경로가'error_code'를 채우고 라인에서 끝나 죠 38? – Useless

답변

2

최신 릴리스 (전체 소스 패키지를 다운로드)가 ./example folder에, 그것은 show_hids.py 호출 장치 기능을 탐구하는 스크립트가 포함되어 있습니다.

명령 줄에서 실행하고 출력을 파일 (> output.txt)로 캡처하여 검토를 용이하게 한 다음 출력 및 기능 대문자 섹션을 찾습니다. 여기에서 장치 보고서 설명자로 나열된 모든 용도를 찾을 수 있습니다 (입력 한도는 수신 할 수있는 것을 나타냅니다).

+0

나는 얼마 전부터이 부분으로 옮겼다. 시간이있을 때를 한번 살펴 보겠습니다. 나는 다른 사람들이 비슷한 두통을 앓고있는 경우를 대비하여이 글을 앞으로 참고할 것입니다. – Will