2

OS X 10.5を実行していて、次のコードを使用してPyUSB経由でUSBデバイスに接続しようとしています。

   import usb.core, time, usb

   dev = usb.core.find(idVendor=0x054c,idProduct=0x0155)
    if dev is None:
      raise ValueError('Device not found')           # if device not found report an error

値エラー「デバイスが見つかりません」がスローされますが。OS X System Profilerは、デバイスの製品とベンダーIDを.として示します。

      EyeToy USB camera Namtai:

      Product ID: 0x0155
      Vendor ID: 0x054c  (Sony Corporation)
      Version: 1.00
      Speed: Up to 12 Mb/sec
      Manufacturer: Sony corporation
      Location ID: 0x06200000 / 3
      Current Available (mA): 500
      Current Required (mA): 500

解決策:libusb-1.0.8を手動でインストールする必要がありました。Macポートはlibusbを正しくインストールしませんでした。

4

3 に答える 3

3

PyUSBを介してデバイスを列挙してみてください。この例は、すべてのプリンター(デバイスクラス7)を検索するためのドキュメントからのものです。

printers = usb.core.find(find_all=True, bDeviceClass=7)

これにはデバイスが含まれているといいのですが、フィールドが実際に何であるかを確認できます。お使いのカメラはおそらくクラス0x0eまたは0x10です。

于 2011-12-19T04:48:58.097 に答える
1

libusbの自作インストールは私を助けました

[sudo] brew install libusb
于 2012-04-04T09:30:33.000 に答える
0

同じ問題が発生し、MacPorts経由でlibusbをインストールしましたが、pyenv経由でインストールされたpythonを使用していました。

MacPorts経由でインストールされたPythonバージョンを使用していることを確認してください。

which python

上記のコードは、使用しているPythonバージョンの場所を示しているはずです。/opt/local/bin/python2.7MacPorts経由でインストールしたバージョンが表示されます。

問題は、pyenvを介してインストールされたpythonまたはプリインストールされたpython(macOSに付属)がの下にlibusbライブラリを検索するの/usrに対し、MacPortsはの下にライブラリをインストールするためだと思います/opt/local

于 2017-05-07T08:13:02.587 に答える