問題タブ [libusb-1.0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - Linux (libusb-1.0) で USB デバイスにアクセスできますか?
Linux で libusb-1.0 を使用して、特定の USB HID 製品 (ベンダーと製品 ID で識別) と通信するための小さなプログラムを作成しています。「libusbにはUSBデバイスノードへの書き込みアクセスが必要です」ため、現在、プログラムをルートとして実行する必要があります。プログラムをルートとして実行する必要がないように、必要なデバイスのアクセス許可を変更する方法はありますか?
c - libusb-1.0を使用してHIDレポートを受信するにはどうすればよいですか?
計量レポートを取得するために必要なUSBHIDスケールがあります。Linuxでは、から一度に7バイトを読み取ることでこれを行うことができますが、/dev/hidraw#
libusb-1.0を使用して同じ情報を取得したいと思います。
null以外のバイトを取得した場合でも、エラー-9が発生します。LIBUSB_ERROR_PIPE
私は次のような制御転送を使用しようとしています:
python - Windows 7 の Pyusb でデバイスが見つからない
そこで、Pyusb 1.0.0-alpha-1 をインストールしまし
た。 Windows では、USB デバイスへのハンドルを取得できません。
USB デバイスが 1 つ (idVendor=0x04d8、idProduct=0x0042) 接続されていて、試してみusb.core.find(idVendor=0x04d8, idProduct=0x0042)
ましたが、これも失敗しました。
Ubuntu では、同じバージョンの pyusb と python (2.6) を使用して、そのコードを使用してデバイスを正常に見つけ、それと通信できます。
Windows 7でpyusbにUSBデバイスを見つけるにはどうすればよいですか?
c++ - libevent で libusb を使用するには?
libevent を使用してイベント駆動型アプリケーションを作成しています。libusb-1.0 を使用して USB 転送を行う必要があります。
libusb_get_pollfdsを使用してファイル記述子のリストを取得し ( でfds
)、次のように libevent に追加したいと考えました。
また、libusb_set_pollfd_notifiers を使用してfdsを追加/削除しlibusb_fds_events
ます。
問題は、libusb によって返されたリストに多くの奇妙な fds が表示されることです (たとえば、stdin
イベントが 0 の場合に (!) を何度も取得します)。
私はそれを正しい方法で使用していますか?
python - PyUSB usb.util.get_string() を使用して文字列記述子を取得します
USB デバイスの文字列記述子を取得できません。私が探しているのは、人に優しいメーカー名と製品名です。libusb-1.0 をバックエンドとして使用しており、提供された libusb テスト プログラムを使用してメーカー名を取得できるため、それが存在することがわかります。
usb_get_string_simple
PyUSB ヘルプ ファイルには、次を使用して (libusb バックエンドから)アクセスできると書かれています。
get_string(dev, length, index, langid=None)
どんな助けでも大歓迎です。
xcode - 動的ライブラリ リンクの問題
COCOA アプリケーションで動的ライブラリをリンクしようとしていますが、次の奇妙なエラーが発生します。
dyld: ライブラリがロードされていません: /opt/local/lib/libusb-0.1.4.dylib
ユーザーに何もインストールしてほしくないので、アプリケーション (Mac OS) ディレクトリからこのライブラリをリンクしたいと思います。フレームワークでライブラリを適切にリンクし、それをターゲット コピー ビルド フェーズに追加しましたが、ライブラリが見つからないという不満がまだあります。リンクした他の 2 つのライブラリは正常に動作していますが、libusb-0.1.4.dylib が問題を引き起こしています。誰でもこの問題を解決する方法を教えてください。
よろしくお願いします。
android-ndk - Android アプリケーションで libusb を使用する: アプリケーションが USB にアクセスできるようにする方法
Android アプリ (Java GUI + ネイティブ (C++) コア) で libusb を使用したいと思います。すでに libusb をコンパイルしてその関数を呼び出してみましたが、libusb_open は LIBUSB_ERROR_ACCESS を返します。USBのアクセス許可に問題があるのではと思いますが、解決方法がわかりません。ここで 2 つの質問があります: 1) ルート化された Android 3.1 デバイスで libusb を実行するにはどうすればよいですか? 2) ルート化されていない工場出荷時のデフォルト デバイスで libusb を使用することは可能ですか?
前もって感謝します。
PS質問1については、/ dev/bus/usbに対してchmod 666を試しましたが、「許可が拒否されました」と表示されます(デバイスがルート化されていることに注意してください)。
PPS mount usbfs none /proc/bus/usb -o devmode=0666 は、スペルを間違えたかのように実行さえしません(しかし、私はしませんでした)。
USBホストを備えたルート化されたAndroidデバイスでlibusbを動作させることができることは確かですが、管理したことがないため、アプリをAndroid 3.1+に制限し、USB APIを使用する必要がありました.
c - libusb-1.0汎用USBデバイスの書き込み権限
私は、libusbライブラリを備えた小さなアプリケーションであるAnjutaを使用してCでプログラミングしています。
libusbには、何らかの目的で書き込み権限が必要です。この議論は、このトピックですでに扱われています:「Linux(libusb-1.0)でUSBデバイスにアクセスできますか?」
トピックソリューションは正常に機能するかもしれませんが(まだ試していません)、アプリケーションが特定のデバイスではなく、すべてのUSBデバイスにアクセスできるようにしたいと思います。
ルート所有者はあるがlibusbopen関数を持つlibusb-1.0.soファイルにsuidビットを設定しようとしました。たとえば、「libusbにはUSBデバイスノードへの書き込みアクセスが必要です」ともう一度答えます。私はrootユーザーとしてanjutaプロジェクト全体を構築するつもりはありませんが、これまでのところ、これがこのlibusb-1.0の問題に対する唯一の解決策です。
udevの動作を変更せずに、一般的なUSBデバイス(ホットプラグペンドライブなど)のiノードへの書き込みアクセスを取得するためのソリューションはありますか?
c - libusb-1.0 デバッグ情報
libusb_set_debug() が機能するかどうか疑問に思っています。私はそれから出力を得ることができません。--enable-debug-log を使用して構成およびビルドすると、デバッグ ログをオンにできます。libusb_set_debug() を 3 に設定した場合、enable-debug-log とほぼ同じ出力が得られるはずですか? LIBUSB_DEBUG 環境変数が設定されていません。私は単純なものが欠けていると思います。ありがとう、
usb - USB経由でパワーメータから値を読み取る
過去 2 日間、デバイス ドライバーがインストールされていない外部デバイスから USB 経由でデータを取得する方法についていくつか読んでいます。USB経由でWT500横河パワーメーターからデータを読み取る必要があります(基本的に、メーターが示すパラメーターの1つだけ、パワー値のみを読み取りたい)。WT500 用のデバイス ドライバーが利用可能であることは認識していますが、いくつかの依存関係があり、ソフトウェアをインストールしたり、それに対応するためにノードに大きな変更を加えたりしたくありません。私が望むことを実行するために使用できることがわかりましlibusb
た.USBデバイスをスニッフィングしていくつかの情報を返すCプログラムがあります。libusbも使用するusb-robotも調べました。私が調査しているサーバー ノードには、OpenSUSE Linux カーネル 2.6.30 が搭載されています。usbfsをマウントしました。
質問:
- libusb を使用すると、要求したときにいつでも USB デバイス経由でパワー メーターからデータ ダンプを取得できると期待しています。メーターに次のように要求できますか? 25k のデータを送信し、それを解析すると、探しているパラメーター値を取得できますか? デバイスに関する知識がまったくないことを考えると、デバイスから意味のある値を得ることができますか? サンプルコードが役立ちます。
-- USBTMC デバイスを照会できる ?IDN のような標準メッセージがいくつかあります。ただし、画面に表示されているものを取得する必要がある場合は、特定のクエリをメーターに送信する必要があります (構文はテクニカル ドキュメント/マニュアル/通信インターフェイスにある必要があります)。
- fread のようなものを使用してファイルを読み取るだけのように、私がやりたいことを行う簡単な方法はないと思います??
――ほぼそうですね。USBTMC モジュールがインストールされている場合 (カーネルのデフォルトのモジュールは機能しませんでした。デバイスのインストールとクエリの詳細な説明はこちらです - http://code.google.com/p/scte/wiki/USBTMC )。いくつかのクエリを送信し、cat
または の下の特定のファイルから何かを介して応答を読み取ります/dev
。
メーターの技術文書によると、記載されているドライバー通信インターフェイスは Windows 固有のものであることがわかります。そのため、リバース エンジニアリングを行う必要があるかもしれません。
-- はい。ただし、ごくわずかであるか、まったくない可能性があります。
ありがとうございました。
編集:少しグーグルした後、答えがあると思います。質問の横にそれらを追加しました。