私は、 MKM35Z512VLL7 コントローラを使用したスマート メーター プロジェクトにAN12837SW リファレンス・デザインを使用しています。「UART 経由のファームウェア アップグレード」のファームウェア アップグレードとブートローダー コードを確認しましたが、まだ疑問が残っています。以下の点を明確にしていただけますか。
ファームウェアのアップグレード プロセスをテストするには、PC でどのソフトウェア ツールを使用すればよいですか?
.binをロードするにはどうすればいいですか?ファイルを 256 バイトのチャンクに分割し、CRC データを追加して送信しますか?
すでに文書AN12829を確認しましたが、OTA フレーム形式を明確に理解できませんでした。これについてもう少し詳しく説明していただけますか?
ファームウェア アップグレード機能をテストするための特定のソフトウェア ツールや追加のドキュメントはありますか?
FWUpgradeClient.exeのソースコードを添付しました。これはVisual Studio IDEでビルントされたC++コードです。
BR、
オマール
AN で参照されている Fwtransferclient が参照可能かどうかを確認しています。また、ソフトウェアからの残りのコマンドに関する詳細情報も入手できます。
通信に関する AN12829 の詳細に準拠している限り、どのツールを選択しても問題ありません。私は DLMS に精通していないため、これが使用CANかどうかは確認できません。お客様側で検証する必要があります。
BR、
オマール
拝啓、
ご返信ありがとうございます。
(i) AN12829の5.1.2.3の説明を確認しました。しかし、AN12837SWスマートメーターファームウェアデザインでは、 comportcommandprocessing.c 関数 で k_cmdfwuinit 、 k_cmdfwuhdr、k_cmdfwutx といったより多くのOTAコマンドが利用可能です 。また、受信ファームウェアコード(communication.cv)では、1バイトのAuth-Enc-FlagとAES-GCM-128復号ファームウェアが利用可能です。SO、AN12829のドキュメントはAN12837SWファームウェアと正しく一致していません。これが私の理解不足です。
(ii) UART3経由でファームウェアアップグレードをテストするための「PCツール」の準備方法を教えてください。NXPから入手可能な参考ツールやドキュメントはありますか ? NXP は AN12829で、 「FWtransferclient.exe」 で既にテスト済みであると記載しています。このツールはどこで入手できますか?PCツールを独自に用意することは可能でしょうか?
(iii) ファームウェアのテストにDLMSダイレクタを使用できますか?
(iv) C 言語でスクリプトを書くのに最適なシリアルターミナルツールはどれですか。スクリプトを開始する方法。
貴重な解決策を期待しています。
1.これには特別なツールはありません。PC ホスト ツールは、通信フレームの詳細を説明した 5.1.2.3 の説明に基づいてユーザーが作成することが想定されています。
2. 256 バイトのブロックでイメージを分割する Python スクリプトを作成できますが、これを行うための特定の方法はありません。
3. 疑問点をもう少し具体的に教えていただけますか?どの部分が不明ですか?図 10 のフレームのフローについておっしゃっていますか:
-コマンド nxpfwutx。
-ファイルサイズ/ブロックサイズ
-ファームウェアはブロックに分割されています。ファームウェア ブロックを識別するために、4 バイトの長さのブロック番号がブロックとともに転送されます。新しいファイル ブロックが受信され、宛先フラッシュ バンクにプログラムされるたびに、現在のブロック カウントが更新され、保存されます。
-コマンド nxpfwuact。
4. AN には FWUpgradeClient というカスタム ツールが言及されていますが、これが利用可能かどうか確認させてください。
BR、
オマール