前回はXPROGと殻から取り出した基板むき出しのFRM3をはんだ付けするという作業まで行いました。
ほぼ蘊蓄でしたが。
ここからは、
Windows7 32bit PC上でXPROGのソフトを使い、D-Flashの読み込み、EEPROM形式への変換、EEP-ROMの消去、EEP-ROMへの書き込みを実施していきます。
XPROG購入時についてくるXPROGソフトウェアをインストールしましょう。
(私はXPROGのファームウェアをアップデートしたので、そのファームウェアにあうソフトウェアをインストールしました。)
インストールは英語ですが、特に難しくはありません。
もし、ソフトウェアと一緒に.regという拡張子のファイルがある際は、それを右クリックして「結合」を実行しましょう。
あとは、A
dobe Reader XIもインストールしておく必要があります。
というのも、
XPROGソフトウェアの起動時にReader XIのDLLを求められます。
続いて、XPROGのドライバをインストールします。
XOROGとPCをUSBケーブルで接続します。
(インストールとFRM3の読み書きにはXPROGに12V電源を接続する必要はありません。)
Windows7のデバイスマネージャーを開くと、XPROG-boxに!マークがついています。
そこを右クリックして「ドライバのインストール」をクリックすると、ドライバのインストール方法を聞かれますので、「コンピューターを参照してドライバソフトウェアを検索します」を選びます。
フォルダの検索画面が出ますから、XPROGソフトウェアを保存(ZIPやRARなら解凍しておく)してあるフォルダを指定します。
(サブフォルダーも検索するにチェックをしておくと良いです。)
ドライバが見つかると、「署名がない」という警告が出ます。
Windows10だとこれを無視するのが難しいですが、Windows7は「このドライバーをインストールします」で続行可能です。
ドライバのインストールが完了すると、デバイスの名称が「XPROG-box programmer」に変わります。
デバイスマネージャーに戻ると、「XPROG-box」が「XPROG-box programmer」に変わってることがわかります。
続いて、「USB Serial Port」も同じように右クリックしてドライバーのインストールを実行し、XPROGソフトウェアが保存してあるフォルダを指定します。
すると、「XPROG-box programmer (COMx)」(xには番号が入る)に変わります。
これでドライバーのインストールは完了です。
XPROGソフトウェアを起動します。
初回は利用規約等のPDFが表示されることでしょう。
(おそらくそのためにAdobe Reader XIのインストールが必要なのです。)
起動すると、次のような画面になります。
2つのドライバが正しくアタッチされていれば、COMポートの指定は自動的にされてるはずです。
(この画像の場合はCOM3)
まずは、FRM3のD-Flashの読み取りに適したデバイス指定をしてあげる必要があります。
「Device」ボタンを押します。
デバイスボタンを押すと、デバイス一覧が出ます。
上から順に、「MCU/MPU」ー「9S12XE-Secured」ー「9S12XEQ384 D-Flash Secured」を選択します。
(Securedじゃない方を選択しても大丈夫そうでした。)
元の画面に戻るので、新しいセッションを開くために「New」ボタンを押します。
すると、真っ黒なセッションウィンドウが出ます。
Readボタンを押して、FRM3からD-Fashの読み込みを開始します。
もし、次のような画面が出たら、読み取りパーティションサイズを指定してあげる必要があります。
サイズ指定画面のキャプチャを取り忘れましたが、デフォルトである、
EEPROM Size: 0kB
D-Flash Size: 32kB
を選択します。
読み取りが開始されます。
(間違ってP-Flashを読み取っているところをキャプチャしてしまいましたが、本来はType:D-Flashになっているはずです。)
読み取りが完了し、Verifyが成功すると、黒いセッションウィンドウにD-Flashのデータが表示されるので、Saveをクリックします。
D-flash形式であることがわかるようなファイル名にして保存します。
(この後変換するEEPROM形式も、拡張子が.binで、ファイル名でわかるようにしておかないと変換前後の区別がつかなくなります。)
D-Flashを保存したら、いったんXPROGソフトウェアは終了し、「
https://tlvps.tomvanleeuwen.nl/frm/」のサイトにアクセスします。
このサイトで、D-Flash形式のファイルを、書き込みができるEEPROM形式に変換します。
サイト上の「ファイルの選択」で、先ほど読み取って保存したD-Flashの.binファイルを指定します。
「I accept the terms and understand that the D-flash image is stored on the server」に同意し、チェックを入れます。
(同意したくない場合は先に進めませんが、オフラインバージョンを使用してアップロードを回避できます。)
「Upload」ボタンを押すと、割とすぐにページが更新され、正しいD-Flashであれば、VINとVO(FA)、Production date、HW-NRなどが表示されます。
(XPROG5.5.5など、読み取りバグがあるバージョンだと、VINに明らかにおかしな記号が入ってきます。)
Download EEPROM imageをクリックして、EEPROM形式になったファイルを保存します。EEPROM形式であることがわかるような名称で保存します。
再びXPROGソフトウェアを起動します。
読み込み時と同じように、Deviceボタンから、デバイスを指定しますが、今回はD-Flash Securedではなく、「MCU/MPU」ー「9S12XE-Secured」ー「9S12XEQ384 EEE Secured」を選択します。
そして、Openボタンを押します。
EEPROM形式に変換した.binファイルを指定します。
ファイルを読み込んだら、黒いセッションウィンドウにデータが表示されます。
まず、Eraseボタンを押して、書き込み前にEEP-ROM内を消去します。
消去を確認されるので、躊躇なくYesを押します。
キャプチャし忘れましたが、プログレスバーがSTEP4くらいまで進むと、「Number of Sectors for EEPROM partition」と聞かれます。
16と入力してOKを押します。
消去が終了すると、セッションウィンドウに戻ります。
続いてWriteボタンを押して、セッションウィンドウのEEPROM形式のファイルを書き込みます。
「Write file to Device?」と聞かれる場合はYesを押して続行します。
十数秒で書き込みが終了します。
念のため、「Verify」を押して、書き込みデータが正しいか確認しましょう。
これもキャプチャし忘れました。
そして、この「Erase」→「Write」→「Verify」を3回繰り返します。
これは、電荷の保持力が弱くなったEEP-ROMを、消去に強い電力をかけることで、復活させようという考えです。
(EEP-ROMは、SSDと同じ挙動のため、一緒で何度も消去すると寿命を迎えますが、その寿命は数千回以上もありますので、消去寿命よりも、電荷保持力を優先しましょう)
ちなみに、ここでD-Flashを読み取っても0x00と、何も読み取れないそうですが、デフォルトの挙動で問題ないそうです。
ここまでできたら、XPROGもWindows7も終了し、FRM3の基板からはんだを除去、ケースに収めて車両にインストールできます。
と、言いつつ、私が修理したFRM3はまだ車両にインストールできていませんので、これが成功したのか失敗したのかはわからず・・・。
(失敗したら、生きているFRM3からデータを抽出し、ふたたび中古のFRM3に書き込みを試みてみます。)