ファクトリーリセット

本章ではFW品のOpenBlocksを工場出荷状態に戻すためのファクトリーリセットについて解説します。

シリアル通信の準備

ファクトリーリセットを行うためにはOpenBlocksのRS-232Cポート(console)を使ったシリアルコンソールで作業を行う必要があります。
作業はWindows PCを前提に説明します。
※その他USBインターフェースを持つApple社のMACなどでもシリアルコンソールを使って操作可能ですが、ここでは割愛します。

  • BXシリーズの場合、標準添付品のケーブルをACアダプタに接続せずパソコンのUSBポート(Type-A)に接続します。

ref01

  • EX1シリーズ、VXシリーズ、IX9シリーズ、FX1シリーズ、DXシリーズの場合、consoleポート(micro USB-B)に添付のUSBケーブルを接続しパソコンのUSBポート(Type-A)に接続します。

ref01

WindowsのUSBシリアルドライバの確認

OpenBlocksをUSBケーブルでWindowsパソコンに接続するとUSBシリアルポートが認識されます。
USBシリアルの認識に成功するとデバイスマネージャには以下の通りSilicon LabsのCP210xまたはFTDIと表示されます。

もし、Windowsから認識されない場合は、USBシリアルドライバが登録されていない可能性があります。
その時は下記のWEBからドライバをインストールしてください。

USBシリアルドライバのダウンロードページ

通信ソフトの準備

USBシリアルの認識に成功したらTeraTermなどの通信ソフトでログインします。
TeraTermの接続先はWindowsで認識されたUSBシリアルポートを選びます。

ref02

次にシリアルポートの通信設定を行います。 スピードを115200に設定します。

ref03

接続に成功したらrootログインします。

ref03

ログインパスワードは自分でセットしたパスワードを使ってください。
ログイン出来たら準備完了です。

工場出荷イメージを書き込む

OpenBlocks IoT FX1シリーズ及びDXシリーズの場合

OpenBlocks IoT FX1シリーズ及びDX1シリーズにてストレージ領域へパッケージの追加や重要データの削除等を実施してしまい、工場出荷状態に戻したい場合、USBブートを行い初期化を行うことで工場出荷状態へ戻すことができます。 ※工場出荷状態に戻した場合には設定したデータ等は全て削除されますのでご注意ください。

USBブートイメージの作成

info

Windowsマシンを前提としています。MacやLinuxについては自分で理解をし実施してください。

  1. USBメモリ(USB2.0、4GB以上)を用意してください。

  2. 以下のファイルをPCにダウンロードしてください。

  • Rufus
  • USB BOOT用イメージ
  • 必用KERNELファイル一式 / 以下のファイルのみ取得してください。
    • FX1シリーズ用
      • ファイル : Image
      • ファイル : imx8mp-evk-obsfx1-vsc8531.dtb
      • ファイル : openblocks-release
    • DX1シリーズ用
      • ファイル : Image
      • ファイル : imx8mp-evk-obsfx0.dtb
      • ファイル : openblocks-release
  • 必用ユーザーランドファイル
FX1シリーズ用 KERNEL/ユーザーランド一覧
KernelVer.ダウンロードMD5
5.4.70-2FW5obsfx_userland_5.0.6-5_20240718.tgzd7ddb581787b74fec84d3069e3a7db7e
5.4.70-2FW5obsfx_userland_5.0.5-2_20240528.tgz8840406e93097a39b4a193b9a115f14d
5.4.70-1FW5obsfx_userland_5.0.4-1_20231127.tgz76e68ba75611444b06b032ab5521d66e
5.4.70-1FW5obsfx_userland_5.0.3-2_20230830.tgzf492738fcd785eb41851a3cb7ff3074b
5.4.70-1FW5obsfx_userland_5.0.2-5_20230601.tgz1637be7e7154c494831b0bbeb09af3eb
5.4.47-1FW5obsfx_userland_5.0.1-4_20230217.tgz4321a556f407c6eea1db1e26f81c9a82
5.4.47-1FW5obsfx_userland_5.0.0-7_20230126.tgz762c7a3031b3d2680d0fd1862dc51ae3
DX1シリーズ用 KERNEL/ユーザーランド一覧
KernelVer.ダウンロードMD5
5.4.70-2FW5obsdx_userland_5.0.6-5_20240718.tgz820ce934194cbb36f55b0cb85c9b8d1f
5.4.70-1FW5obsdx_userland_5.0.4-1_20231127.tgza5ff7edda5ec34c0f8eeea69640942ed
  1. PCにUSBメモリを挿入し、Rufusを起動します。デバイスでPCに挿入したUSBメモリを選択、ブートの種類で「USB BOOT用イメージ」のファイルを選択して、スタートボタンをクリックします。 状態が「準備完了」になったら閉じるボタンをクリックします。

Rufus

  1. コンピューターの管理ディスクの管理で、USBメモリの残りのバーティションを、ファイル システム: FAT32、ボリューム ラベル: 空でフォーマットしてください。

ディスクの管理

  1. そのパーティションに、必用KERNELファイル一式とユーザーランドファイルをコピーします。

USB BOOT

  1. OpenBlocks IoT FX1にシリアルコンソールを接続し、BOOT用USBメモリをUSBポートに接続します。

  2. OpenBlocks IoT FX1のシリアルコンソールの画面でキーを入力する準備をし、電源を入れます。
    U-BOOTのプロンプトu-boot=>が表示されるまで、任意のキー(例えばスペースキー)を押下します。

  3. 以下のコマンドを実行してください。

u-boot=> run usbboot

工場出荷用データ展開

  1. USB BOOTしたFX1にてユーザー/パスワードをroot/rootでログインします。
Debian GNU/Linux 11 obsfx1 ttymxc1
obsfx1 login: root
Password:
  1. ログイン後、KERNELファイルの上書きとストレージの初期化・工場出荷用データ書き込みを行います。
  • USBメモリのマウント
# mount /dev/sda2 /mnt
  • KERNELファイルの上書き

    • FX1シリーズの場合
# mkdir /tmp/mmcblk2p1 /tmp/mmcblk2p2
# mount /dev/mmcblk2p1 /tmp/mmcblk2p1
# cp -p /mnt/Image /mnt/imx8mp-evk-obsfx1-vsc8531.dtb /mnt/openblocks-release /tmp/mmcblk2p1/
# sync
# umount /tmp/mmcblk2p1
    • DX1シリーズの場合
# mkdir /tmp/mmcblk2p1 /tmp/mmcblk2p2
# mount /dev/mmcblk2p1 /tmp/mmcblk2p1
# cp -p /mnt/Image /mnt/imx8mp-evk-obsfx0.dtb /mnt/openblocks-release /tmp/mmcblk2p1/
# sync
# umount /tmp/mmcblk2p1
  • ストレージの初期化・工場出荷用データ書き込み
info
  • <工場出荷用ユーザーランドファイル>はダウンロードしたファイルのファイル名を指定してください。
  • DX1の場合、RTCがオプションとなっています。そのため、工場出荷用データの展開時にシステムクロックの整合性でエラーログが表示されますので、エラーログを/dev/nullへ出力してください。
# mkfs -t ext4 /dev/mmcblk2p2
# mount /dev/mmcblk2p2 /tmp/mmcblk2p2
# tar --numeric-owner -xpzf /mnt/<工場出荷用ユーザーランドファイル> -C /tmp/mmcblk2p2/ 2> /dev/null
# sync
# umount /tmp/mmcblk2p2
  • USBメモリのアンマウント
# umount /mnt
  1. 本体を停止しUSBメモリを抜きます。これによりファクトリーリセットが完了します。
# poweroff

OpenBlocks IX9/IoT VXシリーズの場合

OpenBlocks IoT VXシリーズ及びIX9にてストレージ領域へパッケージの追加や重要データの削除等を実施してしまい、工場出荷状態に戻したい場合、GRUBメニューのFactory Imageを選択することで工場出荷状態へ戻すことが出来ます。
※工場出荷状態に戻した場合には設定したデータ等は全て削除されますのでご注意ください。

use04

OpenBlocks EX1/BXシリーズの場合

OpenBlocks EX1/BXシリーズの場合、内蔵eMMCストレージの容量が少ないため工場出荷イメージ(ユーザーランド)を専用WEBサイトからダウンロードする必要があります。
また、カーネル毎に専用出荷イメージが用意されているので、それぞれ間違えないようにダウンロードしてください。

工場出荷イメージをダウンロード

専用のユーザーランドをダウンロードする前にカーネルバージョンを調べます。

  • カーネルバージョンの確認方法
# dpkg -l | grep kernel-image
ii kernel-image-obsbx1s 3.10.17-400 i386 Linux kernel image for OpenBlocks

この表示された3.10.17-400と言う部分に合わせて専用の工場出荷イメージがFTPサーバーに用意されています。
また、一つのカーネルバージョンにユーザーランドが複数あるので任意のバージョンを選んでください。

KernelVer.ダウンロードMD5
3.10.98-400FW5obsbxex_userland_5.0.6-5_20240718.tgzb955ab57b1d89f71200d66c9b4144688
3.10.17-400FW5obsbxex_userland_5.0.4-1_20231127.tgz9a35b56c4cdafbf5aecf67383951b95d
3.10.17-400FW5obsbxex_userland_5.0.3-2_20230830.tgzd7d7db4d283879ace83157965085316c
3.10.17-400FW5obsbxex_userland_5.0.2-5_20230517.tgz10f3c4a7b65a841070202351f20ae42d
3.10.17-400FW5obsbxex_userland_5.0.1-4_20230216.tgz08ecd5d2832ee15c048e0e734fc1f5d4
3.10.98-305FW4obsbxex_userland_4.0.13-1_20231211.tgzaf83d6f89ada36433396506dda00f88e
3.10.98-305FW4obsbxex_userland_4.0.12-3_20230904.tgze7c0645df2c1ff09ce4c6aa53fa85b12
3.10.98-305FW4obsbxex_userland_4.0.11-1_20230609.tgzfce515e525caa24c8519bf65d6e8531b
3.10.98-304FW4obsbxex_userland_4.0.10-4_20220901.tgzead004c8642f23413a3838956211e10a
3.10.98-303FW4obsbxex_userland_4.0.9-1_20220425.tgz993606f4b9bf8121df1beed140c72dbe
3.10.98-303FW4obsbxex_userland_4.0.8-4_20220105.tgzbf504f24ea04158a784d9f899440282a
3.10.98-303FW4obsbxex_userland_4.0.7-5_20211008.tgz740451c339750476a32b46fcec7a30c2
3.10.98-302FW4obsbxex_userland_4.0.6-5_20210610.tgz6ec1d9501fedae9621572f8e30492d22
3.10.98-301FW4obsbxex_userland_4.0.5-5_20210302.tgz55032d4550d122ceb1fb0ae4035a0f27
3.10.98-301FW4obsbxex_userland_4.0.3-2_20201203.tgzda8bda7893d1df515280b8ebcdb47dba
3.10.98-300FW4obsbxex_userland_4.0.2-2_20200817.tgz405155c381417b3536810271e76430fd
3.10.98-300FW4obsbxex_userland_4.0.1-9_20200611.tgz8b84566489dec88c371c362b7c12a73d
3.10.98-202FW3obsbxex_userland_3.4.3-1_20210217.tgzd764d1dc1f874a786f1a09db617e2be6
3.10.17-104FW2obsiot_userland_2.1.10-2_20200318.tgz80e88e3832371968f2b2b34cbeada47c
3.10.17-17FW1bx1_userland_web1.0.14-1.tgzcdf572b43a9e555433529deca1ccb9bc

※FW1/FW2に関しては別バージョンもあるのでサポートにお問い合わせください。

FW5.x系の場合

  • リカバリブートモード起動
# fw_setenv bootcmd 'run bootRecovery;'
# reboot
  • 工場出荷イメージの転送

パソコンにダウンロードした工場出荷イメージのtgzファイルをOpenBlocksの/rootのディレクトリに転送しておきます。
ファイルはsftpコマンドなどでOpenBlocksへ転送してください。

  • uboot環境変数設定ファイルをダウンロード

uboot環境変数設定ファイルFW5用 ←マウス右クリックメニューから「名前を付けてリンク先を保存」を選んでパソコンへダウンロードしOpenBlocksの/rootのディレクトリに配置しておきます。
ファイルはsftpコマンドなどでOpenBlocksへ転送してください。

  • 工場出荷用データ展開及びストレージモード起動

工場出荷用データの展開時にシステムクロックの整合性でエラーログが表示されますので、エラーログを/dev/nullへ出力してください。
※ /dev/nullへ出力しない場合には、エラーログの表示により本処理に時間がかかります。

# yes | mkfs -O ^metadata_csum,uninit_bg -t ext4 -L "" /dev/mmcblk0p10
# mount /dev/mmcblk0p10 /mnt
# tar --numeric-owner -xpzf /root/<工場出荷用データ> -C /mnt 2> /dev/null
# umount /mnt
# chmod +x /root/update_ubootenv.sh
# /root/update_ubootenv.sh --edison-default
# /root/update_ubootenv.sh -a
# rm -f /root/<工場出荷用データ>
# rm -f /root/update_ubootenv.sh
# reboot

FW4.x系の場合

  • リカバリブートモード起動
# fw_setenv bootcmd 'run bootRecovery;'
# reboot
  • 工場出荷イメージの転送

パソコンにダウンロードした工場出荷イメージのtgzファイルをOpenBlocksの/rootのディレクトリに転送しておきます。
ファイルはsftpコマンドなどでOpenBlocksへ転送してください。

  • uboot環境変数設定ファイルをダウンロード

uboot環境変数設定ファイルFW4用 ←マウス右クリックメニューから「名前を付けてリンク先を保存」を選んでパソコンへダウンロードしOpenBlocksの/rootのディレクトリに配置しておきます。
ファイルはsftpコマンドなどでOpenBlocksへ転送してください。

  • 工場出荷用データ展開及びストレージモード起動

工場出荷用データの展開時にシステムクロックの整合性でエラーログが表示されますので、エラーログを/dev/nullへ出力してください。
※ /dev/nullへ出力しない場合には、エラーログの表示により本処理に時間がかかります。

# yes | mkfs -O ^metadata_csum,uninit_bg -t ext4 -L "" /dev/mmcblk0p10
# mount /dev/mmcblk0p10 /mnt
# tar --numeric-owner -xpzf /root/<工場出荷用データ> -C /mnt 2> /dev/null
# umount /mnt
# chmod +x /root/update_ubootenv.sh
# /root/update_ubootenv.sh --edison-default
# /root/update_ubootenv.sh -a
# rm -f /root/<工場出荷用データ>
# rm -f /root/update_ubootenv.sh
# reboot

FW3.xの場合

  • リカバリブートモード起動
# fw_setenv bootcmd 'run bootRecovery;'
# reboot
  • 工場出荷イメージの転送

パソコンにダウンロードした工場出荷イメージのtgzファイルをOpenBlocksの/rootのディレクトリに転送しておきます。
ファイルはsftpコマンドなどでOpenBlocksへ転送してください。

  • uboot環境変数設定ファイルをダウンロード

uboot環境変数設定ファイルFW3用 ←マウス右クリックメニューから「名前を付けてリンク先を保存」を選んでパソコンへダウンロードしOpenBlocksの/rootのディレクトリに配置しておきます。
ファイルはsftpコマンドなどでOpenBlocksへ転送してください。

  • 工場出荷用データ展開及びストレージモード起動

工場出荷用データの展開時にシステムクロックの整合性でエラーログが表示されますので、エラーログを/dev/nullへ出力してください。
※ /dev/nullへ出力しない場合には、エラーログの表示により本処理に時間がかかります。

# yes | mkfs -O ^metadata_csum,uninit_bg -t ext4 -L "" /dev/mmcblk0p10
# mount /dev/mmcblk0p10 /mnt
# tar --numeric-owner -xpzf /root/<工場出荷用データ> -C /mnt 2> /dev/null
# umount /mnt
# chmod +x /root/update_ubootenv.sh
# /root/update_ubootenv.sh --edison-default
# /root/update_ubootenv.sh -a
# rm -f /root/<工場出荷用データ>
# rm -f /root/update_ubootenv.sh
# reboot

FW1.x~FW2.xの場合

  • ストレージ併用モード解除
# e2label /dev/mmcblk0p10 ""
# reboot
  • 工場出荷イメージの転送

パソコンにダウンロードした工場出荷イメージのtgzファイルをOpenBlocksの/rootのディレクトリに転送しておきます。
ファイルはsftpコマンドなどでOpenBlocksへ転送してください。

  • 工場出荷用データ展開及びストレージ併用モード起動

有効なSIMカードが挿入されていない場合、工場出荷用データの展開時にエラーログが表示されます。
そのため、エラーログを/dev/nullへ出力してください。
※ /dev/nullへ出力しない場合には、エラーログの表示により本処理に時間がかかります。

# yes | mkfs -t ext4 -L DEBIAN /dev/mmcblk0p10
# sync
# mount /dev/mmcblk0p10 /mnt
# tar --numeric-owner -xpzf /root/<工場出荷用データ> -C /mnt 2> /dev/null
# umount /mnt
# rm -f /root/<工場出荷用データ>
# reboot