$Date: 2025/07/18 15:32:42 $
ルーターに外部メモリ(microSDメモリカード、USBメモリ)を接続して利用する機能には、以下の機能があります。
機能の詳細については各機能の説明資料をご参照ください。
外部メモリの基本的な取り扱いとLEDやブザーの仕様、SYSLOGメッセージなどについて本文書で説明します。
FUNCボタンが搭載された機種を使用する場合は、DOWNLOADボタンをFUNCボタンに読み替えてください。
利用できる外部メモリは機種によって異なります。
| 機種 | 利用できる外部メモリ | ファームウェア |
|---|---|---|
| YSL-V810 | microSD/SDHCメモリカード、USBメモリ | Rev.1.03系 |
| RTX840 | microSD/SDHCメモリカード、USBメモリ | Rev.23.02系 |
| RTX3510 | microSD/SDHCメモリカード、USBメモリ | Rev.23.01系 |
| RTX1300 | microSD/SDHCメモリカード、USBメモリ | Rev.23.00系 |
| RTX1220 | microSD/SDHCメモリカード、USBメモリ | Rev.15.04系 |
| RTX830 | microSD/SDHCメモリカード、USBメモリ | Rev.15.02系 |
| NVR510 | microSD/SDHCメモリカード、USBメモリ | Rev.15.01系 |
| NVR700W | microSD/SDHCメモリカード、USBメモリ | Rev.15.00系 |
| RTX1210 | microSD/SDHCメモリカード、USBメモリ | Rev.14.01系 |
| RTX5000 | microSD/SDHCメモリカード | Rev.14.00系 |
| RTX3500 | microSD/SDHCメモリカード | Rev.14.00系 |
| FWX120 | microSD/SDHCメモリカード、USBメモリ | Rev.11.03系 |
| RTX810 | microSD/SDHCメモリカード、USBメモリ | Rev.11.01系 |
| NVR500 | microSD/SDHCメモリカード、USBメモリ | Rev.11.00系 |
| RTX1200 | microSD/SDHCメモリカード、USBメモリ | Rev.10.01系 |
| SRT100 | USBメモリ | Rev.10.00系 |
| RT58i | USBメモリ | Rev.9.01系 |
また特に、USBメモリに関しては以下の注意点があります。
ルーター側でusbhost useコマンド(USBメモリを使う場合)あるいはsd useコマンド(microSDメモリカードを使う場合)がonになっていることを確認してください(工場出荷状態ではon)。offの場合、外部メモリを接続してもルーター側で認識されません。
# usbhost use on
外部メモリをルーターに接続します。
アラームが鳴ると同時に外部メモリLEDが点灯して、ルーターで外部メモリが認識できたことを示します。この状態で、各種外部メモリを使う機能を利用することができます。
外部メモリが壊れていて正常に認識できない場合は、アラームは鳴らず、また外部メモリLEDも点灯しません。そのときは外部メモリを抜き、他の正常な外部メモリを使用してください。
アラームが4回鳴りLEDが点滅する場合は、許容範囲外の電流を消費するなどのエラーを検出したことを示します。この場合の復旧手順は注意事項をご参照ください。
ルーターから外部メモリを抜く前に、外部メモリボタンを2秒間押し続けてください。
外部メモリを安全に抜くための処理がルーター側で行われます。アラームが鳴り、外部メモリLEDが消灯した事を確認したら外部メモリを静かに抜いてください。
外部メモリLEDが点灯している間は決して外部メモリを抜かないでください。
Rev.10.01系以降のファームウェアでは、外部メモリのディレクトリ下にあるファイルを自動検索することができます。
Rev.9.01系やRev.10.00系のファームウェアでは、ルートディレクトリにあるファイルだけが対象になります。
自動検索機能は以下の場合に機能します。
ファイルコピー機能や起動機能で利用する場合は、external-memory exec filenameコマンドやexternal-memory config filenameコマンドでファイル名のみを指定します。
バッチファイル実行機能で利用する場合は、external-memory batch filenameコマンドのファイル名設定でファイル名のみを指定します。
これらのコマンドはいずれもデフォルトでファイル名のみが指定されており、自動検索を行うことになります。
copyコマンド実行時には、コピー元ファイル名として外部メモリのファイル名のみを指定した場合に、外部メモリ内にあるファイルを自動検索します。
ファイルを絶対パス('/'で始まる指定)で直接指定すると、自動検索は行われず、指定した位置にあるファイルのみを対象とします。
以下に、external-memory exec filenameコマンドを例にして、指定方法による動作の違いを示します。
# external-memory exec filename sd1:rtx1200.bin
microSDメモリカード内を検索して"rtx1200.bin"を探します
# external-memory exec filename sd1:/rtx1200.bin
microSDメモリカード内のルートディレクトリから"rtx1200.bin"を探します
# external-memory exec filename sd1:/dir1/rtx1200.bin
microSDメモリカード内の"dir1"というディレクトリから"rtx1200.bin"を探します
# external-memory exec filename off
ファームウェアファイルを検索しません
# external-memory exec filename sd1:dir1/rtx1200.bin
パス指定する場合は絶対パスとなるので先頭にルートディレクトリを示す(/)が必要です。
この設定の場合、"dir1/rtx1200.bin"がファイル名とみなされ、ファイル名に使用できない文字(/)
があると判断しエラーとなります。
外部メモリに格納されているファイルやディレクトリの数、構成によっては、ファイルの自動検索に長い時間を要する場合があります。
検索時間を短くするためには、階層の深いディレクトリの作成は避けてルートに近い位置にファイルを格納したり、ファイルを絶対パス('/'で始まる指定)で直接指定してください。
検索対象ファイルが存在しない場合にも全ディレクトリを検索して時間がかかることになりますので、検索の不要なファイルはファイル名を指定する上記コマンドでoffを設定しておくとよいでしょう。
検索は以下のルールに従って行います。
検索に時間がかかる場合は、以下の設定、操作により検索を中止させることができます。
| 操作 | タイムアウト | DOWNLOADボタン1秒押し | Ctrl+C |
|---|---|---|---|
| 外部メモリから起動 | 全ての外部メモリはDETACH | ― | ― |
| copy execコマンド copy configコマンド |
検索中止 | ― | 検索中止 |
| 外部メモリボタン + DOWNLOADボタン (ファイルコピー) |
検索中止 "ププププ"とブザーが鳴る |
検索中止 "ププププ"とブザーが鳴る |
― |
| execute batchコマンド | 検索中止 | ― | 検索中止 |
| DOWNLOADボタン (バッチファイルの実行) |
検索中止 "ププププ"とブザーが鳴る |
検索中止 "ププププ"とブザーが鳴る |
― |
まず、本機能を使用するには、external-memory accelerator cache size コマンドで、ファイルアクセス高速化機構を有効にしてください(初期値は有効)。off 以外の設定で、ファイルアクセス高速化機構が有効になります。
例)usb1 インタフェースに接続される外部メモリへのファイルアクセスに使用するキャッシュメモリのサイズを "1" に設定する。 # external-memory accelerator cache size usb1 1次に高速アクセスが適用される条件を以下に説明します。
上記で説明した通り、高速アクセスが適用されるためには、対象となるファイルまたはディレクトリの管理情報がキャッシュされている必要があります。これらは通常、外部メモリが接続されたときにキャッシュされます。また、ファイルやディレクトリを作成したときにディレクトリ内の総数が 100個以上になったときにもキャッシュされます。逆にファイルやディレクトリを削除したときに総数が 100個未満になったときにはキャッシュがクリアされます。アクセス性能が向上しない場合は、キャッシュメモリが不足し、対象となるファイルまたはディレクトリの管理情報がキャッシュされていない可能性がありますので、external-memory accelerator cache size コマンドで使用するキャッシュメモリのサイズを大きくしてください。ただし、サイズを大きくすると、外部メモリ内のディレクトリ・ファイル構成によっては、外部メモリを接続してから使用可能になるまでの時間が長くなることがあります。
詳しくは、external-memory accelerator cache size コマンド の説明をご参照ください。
※注意事項
外部メモリボタンおよびDOWNLOADボタンの各押下時間の組み合わせによる動作の一覧を以下に示します。
| 外部メモリボタン | ||||||
|---|---|---|---|---|---|---|
| 押下なし | 0秒〜 | 1秒〜 | 2秒〜 | 3秒〜 | ||
| DOWNLOADボタン | 押下なし | なにもしない | ※2 | ※2 | 外部メモリ切り離し ※2 |
※2 |
| 0秒〜 | なにもしない | なにもしない | なにもしない | なにもしない | なにもしない | |
| 1秒〜 | DOWNLOADボタン機能の実行キャンセル ※1、※4 |
なにもしない | なにもしない | なにもしない | なにもしない | |
| 2秒〜 | なにもしない | なにもしない | なにもしない | なにもしない | なにもしない | |
| 3秒〜 | DOWNLOADボタン機能の実行開始 ※4 |
なにもしない | なにもしない | なにもしない | 外部メモリから設定ファイル/ファームウェアファイルのダウンロード開始 ※3 |
|
※1. ボタン実行による自動検索中の場合は、自動検索中断
※2. 過電流によるUSBデバイスエラー状態の場合は、ボタンを押して離した時点でエラー状態解除
※3. 過電流によるUSBデバイスエラー状態の場合は動作しない
※4. DOWNLOADボタン機能はHTTPリビジョンアップである。
Rev.10.01系以降ではDOWNLOADボタン押下時の動作をoperation button function download コマンドによって変更できる。詳細はバッチファイル実行機能の資料を参照のこと。
各状況におけるアラーム鳴動パターンの一覧を以下に示します。なお、以下に挙げるアラームはalarm usbhostコマンド及びalarm sdコマンドで鳴らす/鳴らさないを制御することができます。
| 状況 | 鳴動パターン |
|---|---|
| 外部メモリを認識した時 | ピピ(低音→高音) |
| 外部メモリボタンとDOWNLOADボタン同時押下によるダウンロード開始時 | ピ |
| 外部メモリボタンとDOWNLOADボタン同時押下によるダウンロード時にダウンロードすべきファイルが1つもない場合 | ピピピピ |
| 過電流によるUSBデバイスエラー発生時 | ピー、ピー、ピー、ピー |
| 過電流によるUSBデバイスエラーからの復旧時 | ピピ(高音→低音) |
| 外部メモリメモリ切り離し時 |
外部メモリを利用する機能に関する外部メモリLEDの点灯(消灯)パターンの一覧を以下に示します。
| 状況 | 点灯パターン |
|---|---|
| 外部メモリ認識時 | 点灯 |
| 外部メモリへのアクセス時 | アクセス負荷に応じて点滅 |
| 外部メモリボタンとDOWNLOADボタン同時押下によるダウンロード、もしくはcopy execコマンドによるファームウェア更新時 | 他のファームウェア更新動作と同じ(※1) ボタン操作による更新の場合は自動的にシステムが再起動する。 |
| 外部メモリボタンとDOWNLOADボタン同時押下によるダウンロード時にダウンロードすべきファイルが1つもない場合 | 3回点滅 |
| 外部メモリ切り離し時 | (点灯状態から)消灯 |
| 過電流によるUSBデバイスエラー発生時 | 点滅し続ける |
| 過電流によるUSBデバイスエラーからの復旧時 | (点滅状態から)消灯 |
※1. ルーター本体のLEDが左から右へ流れるように順次点灯。これを内蔵フラッシュROMへの書き込みが終了するまで繰り返す。
外部メモリを利用する機能において出力されるSYSLOGメッセージについて、例を以下に示します。実際に出力される各メッセージの先頭には"[SD]"や"[USB_HOST]"というプレフィックスが付与されます。
外部メモリ起動機能に関わるログには"[EXTMEMBOOT]"というプレフィックスが付与されます。
| レベル | 出力メッセージ | 内容 | |
|---|---|---|---|
| INFO | 共通 | device attached: vendor=0xXXXX <VendorName>, product=0xXXXX <ProductName> | デバイスが接続された |
| device detached: vendor=0xXXXX <VendorName>, product=0xXXXX <ProductName> | デバイスが外された | ||
| microSD storage device is attached | microSDデバイスが接続され、使用可能な状態になった | ||
| Medium formatted by unsupported file system | 未サポートのファイルシステムでフォーマットされたメディアを検出した | ||
| Detection of USB device error status(wrong device) | 接続したUSBデバイスが壊れている(認識できない) | ||
| Detection of USB device error status(over current) | 接続したUSBデバイスにより生じた過電流でハード的な障害が生じた | ||
| Recovery from USB device error status(over current) | 過電流によるUSBデバイスエラーから復旧した | ||
| Ready to detach USB device safely | USBデバイスを切り離し、安全に抜くことのできる状態になった | ||
| Timeout in file search | ファイル検索中にタイムアウトになった | ||
| 外部メモリファイルコピー機能 | Logfile is opened ("sd1:FILENAME", maximum size: XXXX bytes) | microSDメモリに書き出すSYSLOGファイルをオープンした | |
| FAILED : Logfile is not opened ("sd1:FILENAME") | microSDメモリに書き出すSYSLOGファイルのオープンに失敗した | ||
| Logfile is closed ("sd1:FILENAME") | microSDメモリに書き出したSYSLOGファイルをクローズした | ||
| Logfile is backed up from "sd1:LOG_FILENAME" to "sd1:BAK_FILENAME" | microSDメモリ内のSYSLOGファイルが上限サイズに達したのでバックアップファイルに退避させた | ||
| FAILED : Logfile is not backed up from "sd1:LOG_FILENAME" to "sd1:BAK_FILENAME" | microSDメモリ内のSYSLOGファイルが上限サイズに達したのでバックアップファイルに退避させようとしたが失敗した | ||
| Configuration is copied from "0(internal)" to "sd1:FILENAME" | microSDメモリへ設定ファイルをコピーした | ||
| FAILED : Configuration is not copied from "0(internal)" to "sd1:FILENAME" | microSDメモリへの設定ファイルのコピーに失敗した | ||
| Configuration is copied from "sd1:FILENAME" to "0(internal)" | 内蔵フラッシュROMへ設定ファイルをコピーした | ||
| FAILED : Configuration is not copied from "sd1:FILENAME" to "0(internal)" | 内蔵フラッシュROMへの設定ファイルのコピーに失敗した | ||
| Firmware is copied from "sd1:FILENAME" to "0(internal)" | 内蔵フラッシュROMへファームウェアファイルをコピーした | ||
| FAILED : Firmware is not copied from "sd1:FILENAME" to "0(internal)" | 内蔵フラッシュROMへのファームウェアファイルのコピーに失敗した | ||
| 外部メモリ起動機能 [EXTMEMBOOT] |
Configuration file is found in microSD("sd1:/config.txt") | miscoSDメモリ内に設定ファイルを発見した | |
| Firmware file is found in microSD("sd1:/rtx1200.bin") | SD内にファームウェアを発見した | ||
| MD5 Checksum is differ | ファームウェアファイルが不正だった | ||
| Configuration file is not found. | 設定ファイルが見つからなかった | ||
| Firmware file is not found. | ファームウェアファイルが見つからなかった | ||
| バッチファイル実行機能 | cannot find "sd1:FILENAME" | 設定したバッチファイル"FILENAME"がなかった | |
| Batch-log file was opened("sd1:FILENAME") | ログファイル"FILENAME"をオープンした | ||
| Execute batch file "sd1:FILENAME" | バッチファイル"FILENAME"を実行した | ||
| Executing batch file was canceled | バッチファイルの実行を中断した | ||
| Batch-log file was closed("sd1:FILENAME") | ログファイル"FILENAME"をクローズした | ||
| DEBUG | 共通 | File open error ("sd1:FILENAME") | ファイルのオープンに失敗した |
| File write error ("sd1:FILENAME") | ファイルの書き込みに失敗した | ||
| File read error ("sd1:FILENAME") | ファイルの読み出しに失敗した | ||
| File size error ("sd1:FILENAME") | ファイルのサイズが制限を超えた | ||
| File encrypt error ("sd1:FILENAME") | ファイルの暗号化に失敗した | ||
| File decrypt error ("sd1:FILENAME") | ファイルの復号化に失敗した | ||