問題タブ [dfu]
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.
gcc - arm-none-eabi-gcc は .dfu ファイルを直接生成できますか?
たとえば、ここで GCC が.dfuSTM32 DfuSe 用のファイルを生成できるという主張を目にします。本当ですか?ツールチェーンのオプションarm-none-eabi-objcopyまたは別の部分にありますか?
android - 自律型 DFU ノルディック
私は BLE デバイスに接続されたアプリケーションに取り組んでおり、デバイス (DFU) のファームウェアの更新に集中しています。そのために、Nordic によって作成された Android ライブラリを使用しており、それを自律的にしようとしているので、ユーザーは自分のファイルを参照してファームウェア アップデートの zip を選択する必要がありません。
ただし、DFU は常に 30% で停止し、アプリは Bluetooth 接続を失い、外部アプリを使用して手動で更新を完了する必要があります。
すでにDFUでこのようなものを作っていて、私を助けてくれる人はいますか?
ライブラリの github へのリンクは次のとおりです: https://github.com/NordicSemiconductor/Android-DFU-Library
これが私が現在使用しているコードです。これは、Android 用の Nordic lib を使用した標準の DFU 手順です。
編集:実行時に何が起こるかを示すいくつかのログがあります
stm32 - QTでは、STM32に接続されているときにUSBポートがシリアルモードからDFUに切り替わったことを検出するにはどうすればよいですか
USBイベントをキャッチしたいQt5.12.4 MinGw64アプリがあります。Windows 10 では、STM/USB 用の MS ドライバーがエラー メッセージを出力し、それをトリガーとして使用できます。エレガントではありませんが、ドライバーが VCP ラッパーを備えたサードパーティの STM ドライバーである Win7-8.1 アプリで実行しようとするまでは機能します。ポートの状態変化をキャッチするために libusb を採用する必要があると考えていますが、どのように進めればよいか途方に暮れています。デバイス マネージャーでポート情報を確認できますが、アクセス方法がわかりません。いくつかの疑問が頭をよぎる……。
1) ポート情報を読み取るために OS 呼び出しを行うことはできますか? (もしそうなら、どのように?)
2) libusb と QSerialport は同じポートに共存できますか?
3) ポートの状態を問い合わせるには、LibUSB1.0 に対してどのような呼び出しを行いますか?
4) データをスクレイピングできる lsusb (wmic??) のような Windows cli ユーティリティはありますか?
5) 最適なクロス プラットフォーム ソリューションになりそうなソリューションはどれですか?
このトリガーを使用して、STM ボードでファームウェアの更新を自動的に行うプロセスとして dfuse を開始しています。
libusb1.0 のドキュメントを確認しましたが、どのように使用できるかわかりません。それが正しい解決策である場合、Com ポートのデータと状態を照会する方法の例が最も高く評価されます。
シリアルまたは DFU 状態で qDebug() を使用してすべての serialportInfo データを出力しようとしましたが、トリガーとして使用できる便利なものはありません。
USB シリアル モード = シリアル ポート情報: ("COM3", "USB Serial Device", "Microsoft", "00000000001A", "\\.\COM3", "483", "5740", "1", " noデータ」、「1」)
USB DFU モード = シリアル ポート情報: ("COM3", "N/A", "N/A", "N/A", "\\.\COM3", "N/A", "N/A "、"データなし"、"データなし"、"データなし")
このポート情報を取得する方法についての指示が必要なので、実際に重要なコードはありませんが、作業プロセス関数の抜粋を含めています。
このコードは、実際にファームウェアのロードを実行するのに問題なく機能します。USBポートの状態変化から実際にトリガーする方法が必要です