こんにちは、チームのみなさん。
私はRW610 MCUを使ってカスタムボードに音声Intelligent Technology(VIT)を統合しています。モデルはロードされ、すべての初期化APIは成功しますが、VIT_Process()はVIT_INVALID_DEVICE(11)を返します。
下記のVITライブラリが私のRW610シリコンをサポートしているか、それとも別のライブラリリリースが必要なのか確認してもらえますか?
アイテム構成
| MCU | カスタム基板上のNXP RW610 |
| オーディオ・コーデック | MAX98089 |
| IDE | MCUXpresso IDE - 24.12.0 |
| RTOS | FreeRTOS |
| デバッグ出力 | セミホスト型printf |
| VITパッケージ | リリース/24.12.00/CortexM33-RW61X |
| 図書館 | libVIT_CM33_RW61X_v04_11_00.a |
| 実行時に報告されたライブラリバージョン | 0x00040b00 — v4.11.0 |
| VIT APIバージョン | 0x00030400 |
| 実行時に報告されるモデルバージョン | 0x00040b00 — v4.11.0 |
| 設定済みデバイス | VIT_RW610 、数値9 |
| 動作モード | VIT_WAKEWORD_ENABLE |
図書館の情報源:
https://github.com/nxp-mcuxpresso/VIT/tree/release/24.12.00/CortexM33-RW61X
モデル生成:
NXPのオンラインモデル生成ツールを使って、以下の設定で代替英語モデルを生成しました。
ポータルにRW610のオプションが見当たらなかったので、RW612を選択しました。
生成されたVIT_Model_en.hはv4.11.0を宣言しています。現在、アプリケーションではウェイクワード認識のみが有効になっています。
VITの初期化シーケンスは次のとおりです。
1. VIT_GetLibInfo()
2. VIT_SetModel()
3. VIT_GetModelInfo()
4. VIT_GetMemoryTable()
5. 整列された静的に割り当てられたメモリ領域を割り当てる。
6. VIT_GetInstanceHandle()
7. VIT_ResetInstance()
8. VIT_SetControlParameters()
9. VIT_GetStatusParameters()
10. マイクのキャプチャを開始し、VIT_Process() を呼び出します。
リストに記載されたすべての初期化呼び出しは成功します。プロセッシングはエラー11を返します。
ランタイムログ:
[VIT INFO] ボタンリクエスト: ENTER EXCLUSIVE VIT / START
[VIT INFO] 排他モード:アプリケーションタスクの一時停止、スピーカー停止;VITの初期化
[VIT INFO] init: 英語モデル、ウェイクワードのみ;heap=37904
[VIT INFO] GetLibInfo OK
[VIT INFO] ライブラリリリース=0x00040b00 API=0x00030400 features=0xe channels=1 requestedDevice=9
[VIT INFO] SetModel OK
[VIT INFO] GetModelInfo OK
[VIT INFO] VIT: 利用可能なウェイクワード: HEY NURSE
[VIT INFO] GetMemoryTable OK
[VIT INFO] メモリ領域 0 needs=135934 reserved=144460 bytes
[VIT INFO] メモリ領域 1 needs=135894 reserved=157324 bytes
[VIT INFO] メモリ領域 2 needs=8854 reserved=17644 bytes
[VIT INFO] メモリ領域 3 needs=47079 reserved=49934 bytes
[VIT INFO] GetInstanceHandle OK
[VIT INFO] ResetInstance OK
[VIT INFO] SetControlParameters OK
[VIT INFO] GetStatusParameters OK
[VIT INFO] インスタンス: library=0x00040b00 model=0x00040b00 selectedDevice=9 features=0x4
[VIT INFO] ResetInstance OK
[VIT INFO] VIT: リスニング、PCM48kステレオチャネル 0 -> PCM16kモノラル
[VIT ERROR] プロセス失敗: code=11 (INVALID_DEVICE); RED LED = VIT fault
[VIT ERROR] RW61x 識別子: addr=0x45001114 raw=0x00007102 masked=0x00007100 libraryExpected=0x00007000
[VIT INFO] VIT: 停止
機器点検の観察
リンクされたライブラリのデバイス検証コードを調べたところ、デバイスID 9の場合、アドレス0x45001114を読み取り、下位8ビットをクリアし、その結果を0x00007000と比較していることがわかりました。
libVIT_CM33_RW61X_v04_11_00.aはアドレス0x45001114で0x00007102を返すRW610デバイスをサポートしていますか?
0x00007000との比較は、このリリースにおける既知の互換性の制限または問題ですか?
このRW610には、どのVITライブラリのリリースとそれに対応するAPIヘッダーを使用すればよいですか?
ポータルのRW612選択で生成されたモデルはRW610でサポートされていますか?それとも別のRW610モデル生成オプションが必要ですか?
サポートされているライブラリ/モデルの組み合わせや、さらに必要な診断についてご助言ください。
ありがとう。