FS BOX で100G Etherトランシーバのファームウェア書き換えをしてみた

## この文書の目的

ちょっと面白い経緯でトランシーバのファームウェアを書き換えることができるツール、FS BOX なるものを購入しました。そんなことがユーザサイドで出来るのか、という驚きと、試してみてうまくいったのでその喜びを分かち合いたいと思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/843dc2f1-2eb6-5daf-c0b9-987dcd52e815.png)

## はじまり

先日、いま使っている 100G Ethenet スイッチ用に FS.COM から AOC （アクティブオプティカルケーブル）を購入しました。こんな感じのものです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/99f85777-55fd-fd4c-7e65-82c8e06e4422.png)

以前に一つ購入してうまく動いていた製品を追加用に 5 つ注文した格好なのですが、しかし新しく購入した製品は LINK UP してくれませんでした。FS.COM に相談したところ、以前の購入記録からファームウェアが異なっているためだろう、との回答がありました。そして以前と同じファームウェアを書き込んだものを送るので返品（交換？）手続きで処理するが、もし急ぐなら [FS BOX](https://www.fs.com/products/96657.html) を購入して自分で書き換えて試すこともできるがどうするか、と聞かれました。
まあ、これは面白い機会だな、と思って後者でトライすることにしたわけです。

なお私が今回購入したのは [FS BOX V3](https://www.fs.com/products/96657.html) というものです。V2 も V4 もあるようです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/33df0c81-8cca-481b-950d-5282c4ecee4e.png)

### 資料

FS BOX についての資料を出しておきます。

* 製品ページ (V3) https://www.fs.com/products/96657.html
* Quick Satrt Guide (v3.0)　
https://resource.fs.com/mall/doc/20220929180804ynwgck.pdf
* マニュアル (FS Box User Instruction ただし V2)
 https://img-en.fs.com/file/datasheet/fs-box-user-instruction.pdf
* 他サイトにあるマニュアル (大丈夫？でも V3 用）
 https://ja.manuals.plus/_fs/fs-box-v3-firmware-upgrade-tool-kit-manual

https://fsbox.com にアクセスすることでセットアップ作業が始まります。操作としては簡単で、特に上のマニュアルなどを見なくとも、セットアップできると思えます。

### 必要なもの

* FS.COM アカウント
* Mac あるいは Windows PC
* そこで動作する Chrome ブラウザ

私は手元の Macbook Air (Intel CPU) にインストールして使っています。その際、ドライバソフト（Apple による署名無し）のインストールだけでなく、以下のようにFS BOX アプリケーションからのキー操作の許可を要求されました。このあたりの設定を避けたい人はご注意ください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/9d0073e5-f3bb-d964-360e-d1408d87eec2.png)

（知人に聞かれたので M1 Mac で動かしてみたところ、ドライバをインストールしてトランシーバを挿して情報を読み取ることができました。書き込みはしていませんが、動くんじゃないかと。情報として。）

## 動作確認まで

インストールに際して何度か FS BOX の差し直しや Chrome ブラウザ画面の Reload が要求されます。インストールが終わり、FS BOX を接続して認識できると、以下のような画面になってトランシーバを差し込める状態になります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/d326f00e-2622-3f80-bc01-5c406d2561e4.png)

手元の AOC ケーブルを差し込むとこんな表示になりました。正しくトランシーバと通信できていることが分かって一安心です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/7d585ca1-bb34-9888-c3de-a5343603fe37.png)

## カスタムファームウェアを書き込む

予め用意されているファームウェアに書き込む操作などは上述のマニュアルなどで示されていると思うので、そこはスルーして今回私が経験したコースを紹介します。
つまり FS.COM のセールスあるいはサポートの人と相談しながらファームウェアを用意して貰い、それを書き込むという手順です。ちょっと面白いインタフェイスというか仕組みでした。

FS.COM とは「以前のファームウェアを書き込んで試す」という方向で相談しており、以下のような手順で操作するように指示がありました。

### 対象ケーブルを選択

今回、書き換え対象となるケーブルを、過去のオーダー情報から選択します。
fsbox.com サイトに login して、アカウントメニューの My Orders を開き、、、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/a55d4beb-17fb-fee0-48c3-49f05c00e5c7.png)

対象オーダーを指定。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/110ba9f0-b605-a2ed-427a-ab1572f5b918.png)

### 依頼情報を記入

すると設定情報を指定する画面となります。
ここで、Compatible Brands, brands, シリアル（今回は連続番号だったので先頭シリアルだけ）と個数などを指定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/170bb84a-e343-bd01-a486-f467a199f879.png)

また今回は完全にカスタムオーダーの扱いになるようで、Application Note （備考）のところに FS.COM セールス氏から指示された文言を書いて、Submit しました。

すると My Applications タブのところに、このように登録されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/575eaec6-ea6c-7e3c-f86d-1df5a417876b.png)

これで一日以内程度で FS.COM が Box Pro タブのところに設定情報を置いてくれる、、と聞いていたのですが、2時間後にはもう届いていました。驚きの速さ。

しかも到着すると（登録されると）、ブラウザ画面にこんな画面が出るという丁寧さ。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/6a8cf6f7-3ec0-1bc2-687f-520916f68e69.png)

ここで Go to code をクリックするか、あるいはアカウントメニューの After Sales Configuration を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/526d19fe-a301-cec2-490b-aa08e4f6558e.png)

### 届いたファームウェアを確認

こんな感じで届いたファームウェアが一覧として表示されています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/41de578f-d8b0-8bac-9e52-b6952f6bfeb9.png)

面白いことに、シリアルナンバーに枝番（-1, -2）が付けられており、それぞれに Configuration リンクがあります。
少なくとも私が購入した AOC ケーブルは、どちらの端が枝番 1 のトランシーバなのかは分かりませんでした。とりあえず fsbox.com のホーム画面に戻って（画面左上の FS アイコンをクリックする）、Online Configuration 画面でトランシーバを差し込むと、そこには S/N のあとに -1 とか -2 などと表示されますから、そこで確認しました。
（画面を見ると、どうもこのリスト表示になっている状態でトランシーバを差し込めば、リストのすぐ上の Transciever Information 欄に情報が出るようなのですが、私の場合はそうならず画面を切り替えていました。）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/7d585ca1-bb34-9888-c3de-a5343603fe37.png)

なおこの画面で Start Configuration ボタンを押してはいけません。選択した Brand 情報でいきなり書き込みが行われてしまいます。（ええ、やりましたとも。）

### 書き込み

届けられたファームウェアを書き込みます。再びアカウントメニューから After-sales Configuration を選択し、Configuration list 表示画面に戻ります。そして先ほど判明した枝番に適合する行の Configuration リンクをクリックすると書き込みが始まります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/7ef1fe50-eb13-3cb3-2954-36e2e629a425.png)

ところでこのユーティリティでは「実行します。よろしいですか？ ( Yes / No ) 」みたいな確認は一切ありません。Configuration リンクをクリックした途端、上の画面になって書き込みが始まります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/132859/c4dcdac8-f064-ec9f-5a09-55d4ef1c382b.png)

しばらく待つと上の画面になります。

なお今回の製品に対するファームウェアの書き込みは 25 秒程度で終了しました。実は他のファームウェアでも試したことがあるのですが、そのときは 12 秒ほどだったので、どうもファームウェアの内容？によって書き込み時間は結構変わるようです。

ともかく一方の書き込みが終わりました。もう一方の端のトランシーバに差し替えて、シリアルと枝番が合致する行の Configuration リンクをクリックして書き込み、成功したらケーブルをスイッチなり NIC なりに差し込んで動作確認、です。

## おわりに

FS BOX を使ってうまく問題が解決できました。素早く、そして根気よく問題解決に付き合って下さったセールス（とサポート）の人に感謝です。これで今後トランシーバ周りの問題で引っ掛かった時は自力でテストすることもできそうですから、ますます FS.COM からケーブルを買うことが増えそうです。良い循環ですね。

それにしても FS BOX は面白い製品です。Batch Configuration モード（恐らく差し込んだトランシーバを次々と書き換えるんでしょうね）があったり、もう会社のプロダクション用ツールをそのまま外販した印象です。それでも充分な扱いやすさと完成度の高いインタフェイスでした。
モダンというべきか、今どきのベンダーはこういうものなんだなあ、ユーザとの距離感近いなあ、と思いました。

というわけで皆さん機会があればぜひ FS BOX をお試し下さい。
（回し者みたいですが、もちろんステマなどではありません）