はじめに
Intel Edisonの初期設定や各種設定を行うための「configure_edison
」コマンドについて紹介したいと思います。今回の紹介はファームウェアのバージョンは現時点で最新のWW42であることを前提としています。購入直後でファームウェアの更新を行っていない場合は先にファームウェアの更新が必要です。
試用している「Intel Edison Module」などについて
- 本記事で試用している「Intel Edison Module」などは、インテル株式会社のご厚意により“さかきけい”個人に貸し出されたものです。このため私の勤務先等とは一切関係がありません。
- 本記事は“さかきけい”が完全に自由意思で書いているもので、インテル株式会社からは何らの要請、制限等は受けていません。
途中で機材を変更すると記事の連続性に難があるかと思いますので、発売後である今回も引き続き貸し出しを受けている「Intel Edison Module」と「Intel Edison Board for Arduino」を使用しています。
免責の宣言
本記事は“さかきけい”の作業内容を共有するためのものであり、何ら保証はありません。自己責任でのみ使用することができます。
使用するもの
- Intel Edison Board Kit for Arduino
- USB 2.0 Standard Type Aプラグ ⇔ USB 2.0 Micro Type Bプラグのケーブル – 2本。※1
- 出力が7~15VまでのACアダプター
- Windows パソコン※2
- Internet接続環境
- シリアルでのアクセスに対応したTera Termのような端末エミュレーター
- 無線LAN親機
ACアダプターはUSB接続で問題なく動作していれば不要ではあるのです。安定して動作しない場合に限り、追加で使用することを検討ください。筆者が体験した限りでは、電力が足りなくなった際に不意にリブートする症状がありました。特に今回の設定で無線LANを有効にすると突然不安定になることがあることが知られています。
事前の準備
- 初めて接続する際にはWindowsにIntel Edison用のドライバーをインストールします。すでにインストール済みの場合にはこの手順をスキップしてください。
- 「Intel Edison Board for Arduino」に搭載されているFTDI製のUSB・シリアル変換チップ用のドライバーをインストールします。Windows Updateにも同社のドライバーは存在していますが、Intel Corporationは別途ダウンロードしてインストールするように指示していますので、今回はそれに沿って作業を行います:
- FTDI(Future Technology Devices International Ltd)のサイトからドライバーをダウンロードします。
- ダウンロードしたファイルを右クリックしてショートカット・メニューから「管理者として実行」を選択します。
- Windowsの設定によっては「ユーザー アカウント 制御」(UAC)の表示がなされるので許可します。
- 「Extract」ボタンをクリックします。
- 「次へ」ボタンをクリックします。
- 「完了」ボタンをクリックしてインストールを終了します。
- 「Intel Edison Module」を認識するためのドライバーをインストールします。
- Intel CorporationのサイトからRNDIS(ネットワーク)、CDC(シリアル)およびDFU(ファームウェア更新)を行うためのドライバーを「Edison – Software Downloads」ページの「Windows Driver setup」からダウンロードします。
- ダウンロードしたファイルを実行します。
- Windowsの設定によっては「ユーザー アカウント 制御」(UAC)の表示がなされるので許可します。
- 「Next」ボタンをクリックします。
- ライセンス条項を確認し、同意できるのであれば「I Agree」ボタンをクリックします。なお、同意できない場合にはこのソフトウェアは使用できません。
- インストールするコンポーネントにチェックを入れて(通常はチェックが入っている)「Next」ボタンをクリックします。
- インストールする先のパス(通常はデフォルトのままでよいでしょう)を指定して、「Install」ボタンをクリックします。
- ドライバーのインストールが完了するまで待ちます。
- 「OK」ボタンをクリックします。
- 「Finish」ボタンをクリックしてインストールを終了します。
- 「Intel Edison Board for Arduino」に搭載されているFTDI製のUSB・シリアル変換チップ用のドライバーをインストールします。Windows Updateにも同社のドライバーは存在していますが、Intel Corporationは別途ダウンロードしてインストールするように指示していますので、今回はそれに沿って作業を行います:
- 「Intel Edison Module」を装着した「Intel Edison Board for Arduino」にUSBケーブルを2本とACアダプターを挿します:
- 任意の端末エミュレーターを起動してシリアル・ポートに接続します。ここではTera Termを使用します。
- Enterキーを押して以下の表示が出ることを確認します:
Poky (Yocto Project Reference Distro) 1.6 edison ttyMFD2 edison login:
- 「
root
」と入力してEnterキーをおします。 - 以下の表示が出ていることを確認します:
root@edison:~#
この状態で以後の説明する各種コマンドを実行することができます。
configure_edison
コマンド
このコマンドはIntel Edison Moduleの設定を簡易的に行うコマンドです。本来であれば各種コマンドを実行したり、各種ファイルを編集したりする必要がある設定を問答形式で設定していくことができます。
指定できるオプションには以下のものがあります:
オプション | 意味 |
---|---|
-h または--help |
ヘルプ・メッセージを表示します。 |
--server |
サーバーを開始します(テスト専用)。 |
--setup |
デバイス名(ホスト名)、パスワード、およびWi-Fiの設定オプションを設定・変更します。 |
--name |
デバイス名(ホスト名)の設定・変更します。 |
--password |
デバイスのパスワードの設定・変更します。 |
--wifi |
Wi-Fiの設定オプションの設定・変更します。 |
--showWiFiIP |
無線インターフェースに割り当てられているIPアドレスを表示します。 |
--version |
現在のファームウェアのバージョンを表示します。 |
--latest-version |
最終ファームウェアのバージョンを表示します。 |
--upgrade |
最終ファームウェアをダウンロードします。 |
--disableOneTimeSetup |
Wi-Fiアクセス・ポイントとワンタイムのセットアップを無効にします。 |
--enableOneTimeSetup |
Wi-Fiアクセス・ポイントとワンタイムのセットアップを有効にします。 |
--flash <version> [<release name> ...] |
指定した<version> および<release name> のファームウェアをダウンロードして書き込みます。 |
--showNames |
デバイス名(ホスト名)とSSIDを表示します。 |
-h
または--help
ヘルプ・メッセージを表示
以下のメッセージを表示します。前述のメッセージの英語版が表示されると考えて差し支えありませんが、バージョンによって内容の増減があります:
usage: configure_edison [-h] [--server]
[[--setup | --name | --password | --wifi]
[--showWiFiIP | --version | --latest-version | --upgrade | --disableOneTimeSetup | --enableOneTimeSetup | --flash <version> [<release name> ...]
| --showNames]
optional arguments:
-h, --help show this help message and exit
--server Starts the server (testing only)
--setup Goes through changing the device name, password, and
wifi options
--name Changes the device name
--password Changes the device password
--wifi Changes the wifi options
--showWiFiIP IP address associated with the wireless interface
--version Gets the current firmware version
--latest-version Gets the latest firmware version
--upgrade Downloads the latest firmware
--disableOneTimeSetup
Disable one-time setup and WiFi access point
--enableOneTimeSetup Enable one-time setup and WiFi access point
--flash <version> [<release name> ...]
Downloads and flashes an image
--showNames Show device name and SSID
--server
サーバーを開始
このオプションの効果については現在確認中です。セットアップ後に有効になる一部のサービスを起動させるものかもしれません。
--setup
デバイス名(ホスト名)、パスワード、およびWi-Fiの設定オプションを設定・変更
初回に設定すべき設定を順次設定するためのものです。順番に設問が表示されるので順番に答えていきます:
Configure Edison: Device Name
Give this Edison a unique name.
This will be used for the access point SSID and mDNS address.
Make it at least five characters long (leave empty to skip):
(さかきけい意訳)
Edisonの構成: デバイス名
このEdisonは固有の名前を必要とします。
これはmDNSのアドレスとアクセス・ポイントのSSIDに使用することになります。
少なくとも5文字以上の文字列を指定してください(スキップするためには空としてください):
デバイス名(ホスト名)を指定するのであればその名前を入力し、指定しないのであれば何も入力せずにEnterキーを押します。デバイス名を指定すると以下の確認が行われます:
Is デバイス名(ホスト名) correct? [Y or N]:
(さかきけい意訳)
デバイス名(ホスト名)で正しいですか?[Y あるいは N]:
入力したデバイス名(ホスト名)が意図通りであればY
を、そうでなければN
を押します。Y
を押してEnterキーを入力すると次へ進みます:
Configure Edison: Device Password
Enter a new password (leave empty to abort)
This will be used to connect to the access point and login to the device.
Password:
(さかきけい意訳)
Edisonの構成: デバイスのパスワード
新しいパスワードを入力してください(中止するためには空としてください)
これはこのデバイスへのログインとアクセス・ポイントへの接続のために使用することができます。
パスワード:
このデバイスに設定するパスワードを問われるので任意の内容を入力してEnterキーを押します。入力した内容は*
にマスクされて表示されます。何も入力せずにEnterキーを押すとここで終了します:
Please enter the password again:
(さかきけい意訳)
もう一度パスワードを入力してください:
パスワードを確認するために再度のパスワード入力が求められます。上で入力したパスワードを同じ内容をしてEnterキーを押すと先へ進みます:
The device password has been changed.
First-time root password setup complete. Enabling SSH on WiFi interface.
Do you want to set up wifi? [Y or N]:
(さかきけい意訳)
デバイスのパスワードを変更しました。
初回のrootパスワードのセットアップが完了しました。Wi-FiインターフェースにおけるSSHを有効にします。
Wi-Fiのセットアップを行いますか? [Y or N]:
Wi-Fiのセットアップをするかどうか尋ねられているので、ここでは「Y」を選択して先へ進みます。
root
ユーザーのパスワードが指定したものに変更されました。Wi-Fiインターフェースにおけるsshを有効にするために、Wi-Fiのセットアップを行う場合にはY
を、そうでなければN
を入力してEnterキーを押します。続くWi-Fi接続に関する設定はY
を選択した場合に限り、行うことができます:
Configure Edison: WiFi Connection
Starting scan
Scanning: XX seconds left
(さかきけい意訳)
Edisonの構成: Wi-Fi接続
スキャンを開始します。
スキャン中: 残り XX 秒
XX
にはサーチを完了するまでの残り秒数が入ります。
と表示されて、Intel Edison Moduleが認識できるWi-Fi親機(SSID)を検索するので終了するのでしばらく待ちます:
0 : Rescan for networks
1 : Manually input a hidden SSID
(以下、スキャニングできた親機(SSID)があれば連番で表示されます)
Enter 0 to rescan for networks.
Enter 1 to input a hidden network SSID:
(さかきけい意訳)
0 : ネットワークを再スキャンする。
1 : 隠れたSSIDをマニュアルで指定する。
(以下、スキャニングできた親機(SSID)があれば連番で表示されます)
ネットワークを再スキャンする場合を0を入力してください。
隠されたSSIDネットワークをマニュアルで指定する場合には1を押してください:
検索が完了すると一覧が表示されるので、再度のスキャンを行う場合は0
を、アドバタイジングを行っていない隠された親機(SSID)を指定する場合は1
を、その他一覧の中から設定する場合は2
以上の一覧の中から選択します。
ここでは表示されていない親機(SSID)を指定する1
を選択したとして先に進みます:
Please enter the hidden network SSID:
(さかきけい意訳)
隠されたSSIDネットワークを入力してください:
と表示されるので親機(SSID)のSSIDを指定します:
Is XXXXXXXXXXXXXXXX correct? [Y or N]:
(さかきけい意訳)
XXXXXXXXXXXXXXXXで正しいですか? [Y or N]:
XXXXXXXXXXXXXXXX
にはSSID名が入ります。
このように入力した親機(SSID)が正しいかどうか尋ねられますので、正しければY
を、そうでなければN
を入力してEnterキーを押します。ここではY
を入力したものとして先へ進みます:
0: OPEN
1: WEP
2: WPA-Personal(PSK)
3: WPA-Enterprise (EAP)
Select the type of security [0 to 3]:
(さかきけい意訳)
0: 暗号化なし
1: WEP
2: WPA-Personal(PSK)
3: WPA-Enterprise (EAP)
セキュリティー・タイプを選択してください [0から3]:
親機の暗号化/認証の種類を選択します。ご自身の環境にあった番号を0
から3
の間で選択します。ここでは、現在の日本の家庭用ルーターで一般的な2
を入力してEnterキーを押して先に進みます:
Password must be between 8 and 63 characters.
What is the network password?:
(さかきけい意訳)
パスワードを8から63文字までの文字列で入力してください。
ネットワーク・パスワードはなんですか?:
と表示されるので、親機(SSID)=ルーターに設定しているパスフレーズを入力します。入力した内容は*
でマスクして表示されます。入力が終わったらEnterキーを押します:
Initiating connection to XXXXXXXXXXXXXXXX. Please wait...
Attempting to enable network access, please check 'wpa_cli status' after a minute to confirm.
(さかきけい意訳)
XXXXXXXXXXXXXXXXへの接続を初期化中です。少しお待ちください...
1分後に「wpa_cli status」を実行して状態を確認し、ネットワーク接続が有効にされたことを確認してください。
XXXXXXXXXXXXXXXX
にはSSID名が入ります。
最大で60秒間のカウントダウンを行いながら接続を行い、入力情報に基づいて接続が行えると以下のメッセージが表示されます:
Done. Please connect your laptop or PC to the same network as this device and go to http://AAA.BBB.CCC.DDD or http://XXXXXXXX.local in your browser.
(さかきけい意訳)
完了しました。このデバイスと同じネットワークに、ノート・パソコンまたはデスクトップ・パソコンから接続して、ブラウザーでhttp://AAA.BBB.CCC.DDDまたはhttp://XXXXXXXX.localへアクセスしてください。
AAA
~DDD
には親機から取得したIPアドレスが入ります。
XXXXXXXX
には指定したデバイス名(ホスト名)が入ります。
この名前でIntel Edison Module内部での名前解決が行えます。
ここで表示されたhttp://AAA.BBB.CCC.DDD
にブラウザーでアクセスするとホスト名(Hostname)とIPアドレス(IP Address)を表示するページが表示されます:
--name
デバイス名(ホスト名)の設定・変更
デバイス名(ホスト名)を指定します:
Configure Edison: Device Name
Give this Edison a unique name.
This will be used for the access point SSID and mDNS address.
Make it at least five characters long (leave empty to skip):
(さかきけい意訳)
Edisonの構成: デバイス名
このEdisonは固有の名前を必要とします。
これはmDNSのアドレスとアクセス・ポイントのSSIDに使用することになります。
少なくとも5文字以上の文字列を指定してください(スキップするためには空としてください):
デバイス名(ホスト名)を指定するのであればその名前を入力し、指定しないのであれば何も入力せずにEnterキーを押します。デバイス名を指定すると以下の確認が行われます:
Is デバイス名(ホスト名) correct? [Y or N]:
(さかきけい意訳)
デバイス名(ホスト名)で正しいですか?[Y あるいは N]:
入力したデバイス名(ホスト名)が意図通りであればY
を、そうでなければN
を押します。
以上でデバイス名(ホスト名)を更新することができます。
--password
デバイスのパスワードの設定・変更
デバイスのパスワードを設定します:
Configure Edison: Device Password
Enter a new password (leave empty to abort)
This will be used to connect to the access point and login to the device.
Password:
(さかきけい意訳)
Edisonの構成: デバイスのパスワード
新しいパスワードを入力してください(中止するためには空としてください)
これはこのデバイスへのログインとアクセス・ポイントへの接続のために使用することができます。
パスワード:
このデバイスに設定するパスワードを問われるので任意の内容を入力してEnterキーを押します。入力した内容は*
にマスクされて表示されます。何も入力せずにEnterキーを押すとここで終了します:
Please enter the password again:
(さかきけい意訳)
もう一度パスワードを入力してください:
パスワードを確認するために再度のパスワード入力が求められます。上で入力したパスワードを同じ内容をしてEnterキーを押すと以下のメッセージが表示されます:
以上でデバイスのパスワード(root
ユーザーのパスワード)が変更することができます。
--wifi
Wi-Fiの設定オプションの設定・変更
Wi-Fi接続に関する設定を行います:
Configure Edison: WiFi Connection
Starting scan
Scanning: XX seconds left
(さかきけい意訳)
Edisonの構成: Wi-Fi接続
スキャンを開始します。
スキャン中: 残り XX 秒
XX
にはサーチを完了するまでの残り秒数が入ります。
と表示されて、Intel Edison Moduleが認識できるWi-Fi親機(SSID)を検索するので終了するのでしばらく待ちます:
0 : Rescan for networks
1 : Manually input a hidden SSID
(以下、スキャニングできた親機(SSID)があれば連番で表示されます)
Enter 0 to rescan for networks.
Enter 1 to input a hidden network SSID:
(さかきけい意訳)
0 : ネットワークを再スキャンする。
1 : 隠れたSSIDをマニュアルで指定する。
(以下、スキャニングできた親機(SSID)があれば連番で表示されます)
ネットワークを再スキャンする場合を0を入力してください。
隠されたSSIDネットワークをマニュアルで指定する場合には1を押してください:
検索が完了すると一覧が表示されるので、再度のスキャンを行う場合は0
を、アドバタイジングを行っていない隠された親機(SSID)を指定する場合は1
を、その他一覧の中から設定する場合は2
以上の一覧の中から選択します。
ここでは表示されていない親機(SSID)を指定する1
を選択したとして先に進みます:
Please enter the hidden network SSID:
(さかきけい意訳)
隠されたSSIDネットワークを入力してください:
と表示されるので親機(SSID)のSSIDを指定します:
Is XXXXXXXXXXXXXXXX correct? [Y or N]:
(さかきけい意訳)
XXXXXXXXXXXXXXXXで正しいですか? [Y or N]:
XXXXXXXXXXXXXXXX
にはSSID名が入ります。
このように入力した親機(SSID)が正しいかどうか尋ねられますので、正しければY
を、そうでなければN
を入力してEnterキーを押します。ここではY
を入力したものとして先へ進みます:
0: OPEN
1: WEP
2: WPA-Personal(PSK)
3: WPA-Enterprise (EAP)
Select the type of security [0 to 3]:
(さかきけい意訳)
0: 暗号化なし
1: WEP
2: WPA-Personal(PSK)
3: WPA-Enterprise (EAP)
セキュリティー・タイプを選択してください [0から3]:
親機の暗号化/認証の種類を選択します。ご自身の環境にあった番号を0
から3
の間で選択します。ここでは、現在の日本の家庭用ルーターで一般的な2
を入力してEnterキーを押して先に進みます:
Password must be between 8 and 63 characters.
What is the network password?:
(さかきけい意訳)
パスワードを8から63文字までの文字列で入力してください。
ネットワーク・パスワードはなんですか?:
と表示されるので、親機(SSID)=ルーターに設定しているパスフレーズを入力します。入力した内容は*
でマスクして表示されます。入力が終わったらEnterキーを押します:
Initiating connection to XXXXXXXXXXXXXXXX. Please wait...
Attempting to enable network access, please check 'wpa_cli status' after a minute to confirm.
(さかきけい意訳)
XXXXXXXXXXXXXXXXへの接続を初期化中です。少しお待ちください...
1分後に「wpa_cli status」を実行して状態を確認し、ネットワーク接続が有効にされたことを確認してください。
XXXXXXXXXXXXXXXX
にはSSID名が入ります。
最大で60秒間のカウントダウンを行いながら接続を行い、入力情報に基づいて接続が行えると以下のメッセージが表示されます:
Done. Please connect your laptop or PC to the same network as this device and go to http://AAA.BBB.CCC.DDD or http://XXXXXXXX.local in your browser.
(さかきけい意訳)
完了しました。このデバイスと同じネットワークに、ノート・パソコンまたはデスクトップ・パソコンから接続して、ブラウザーでhttp://AAA.BBB.CCC.DDDまたはhttp://XXXXXXXX.localへアクセスしてください。
AAA
~DDD
には親機から取得したIPアドレスが入ります。
XXXXXXXX
には指定したデバイス名(ホスト名)が入ります。
この名前でIntel Edison Module内部での名前解決が行えます。
ここで表示されたhttp://AAA.BBB.CCC.DDD
にブラウザーでアクセスするとホスト名(Hostname)とIPアドレス(IP Address)を表示するページが表示されます:
--showWiFiIP
無線インターフェースに割り当てられているIPアドレスを表示
Intel Edison ModuleのWi-Fiアダプターに割り当てられている現在のIPアドレスを表示します:
AAA.BBB.CCC.DDD
AAA
~DDD
には親機から取得したIPアドレスまた設定されたIPアドレスが入ります。
--version
現在のファームウェアのバージョンを表示
現在のバージョン番号を表示します。WW42ファームウェアでは以下の表示でした:
16
--latest-version
最終ファームウェアのバージョンを表示
最終のファームウェア・バージョンを表示します。現時点ではWW42が最新のため、以下の表示となりました:
16
--upgrade
最終ファームウェアをダウンロード
現時点ではインストール済みのWW42が最新のファームウェアのため、以下の表示となりました:
The latest version is already installed.
(さかきけい意訳)
すでに最新バージョンがインストールされています。
--disableOneTimeSetup
Wi-Fiアクセス・ポイントとワンタイムのセットアップを無効
ワンタイム・セットアップを無効にします。有効状態・無効状態ともに、何ら表示を行いません。
--enableOneTimeSetup
Wi-Fiアクセス・ポイントとワンタイムのセットアップを有効
無線LANによるワンタイム・セットアップを有効にします。この際にはIntel Edison Moduleが無線LANの親機(アクセス・ポイント)となります。
以下の表示が行われます:
Restarting WiFi access point. Please wait...
From your PC or laptop, connect to the 'デバイス名(ホスト名)' network
and visit 'デバイス名(ホスト名).local' in the browser
(さかきけい意訳)
Wi-Fiアクセス・ポイントを再起動中です。しばらくお待ちください...
デスクチップ・パソコンまたはノート・パソコンから'デバイス名(ホスト名)'ネットワークに接続し、ブラウザーで'デバイス名(ホスト名).local'にアクセスしてください。
Intel Edison Moduleが無線LANの親機(アクセス・ポイント)となる’デバイス名(ホスト名)’ネットワークに接続すると’デバイス名(ホスト名).local’という名前のホストにブラウザーで接続することができます:※7
このページからデバイス名(ホスト名)および接続先のWi-Fiネットワークを指定することができます。設定が終わると次のようなページが表示されます:
--flash <version> [<release name> ...]
指定したファームウェアのダウンロードと書き込み
ファームウェアのバージョンをアップグレードあるいはダウングレードします。
しかし、指定の仕方が不明確で、現時点ではエラー表示がなされるだけでした:
Could not determine firmware verison information.
Could not retrieve required firmware information. Quitting.
(さかきけい意訳)
ファームウェアのバージョン情報を決定できませんでした。
必要なファームウェアの情報を取得できませんでした。終了します。
--showNames
デバイス名(ホスト名)とSSIDを表示
{"hostname": "デバイス名(ホスト名)", "ssid": "SSID名"}
通常はデバイス名(ホスト名)とSSID名は同じになるようです。
まとめ
このようにIntel Edison Moduleに搭載されたLinuxには、一般に行われる設定を簡易に行うためのツールが付属しています。特に初回に必要な設定を順番に行う「configure_edison --setup
」は有効ではないかと思います。
Intel Edison Moduleを入手したら、
- ファームウェアを最新に更新する
- 「
configure_edison --setup
」で初期設定を行う
という流れが定番になるのではないかと思います。
2014年11月6日23時頃に修正
- Intel Edison Moduleのメッセージに対して私による意訳「(さかきけい意訳)」を追加しました。
- Intel Edison Moduleが無線LANの親機(アクセス・ポイント)になって設定できる機能について不正確な記述となっていた部分を修正しました。
- 当然のことながらパソコン側にも2本のUSB 2.0の空きコネクターが必要です。
- Windows 7 Ultimateを稼働させた、CPU Intel Core i7-930、DDR3 DRAM 24GBのマシンを使用しました。
- 2つあるコネクターの下側で「J3」とシルク印刷がある方。
- 2つあるコネクターの上側で「J16」とシルク印刷がある方。
- 複数のFTDI社製チップを採用したUSBデバイスを接続していて、区別がつかない場合には不要なデバイスをすべて外すなどして識別してください。
- 他の設定もキャプチャ画像に全て合わせてください。
- 私が試した範囲内ではmDNSからIPアドレスを取得することはできませんでした。このため、IPアドレスを直接指定する形でアクセスしました。