ESP8266を宅内Wi-Fiにぶら下げるATコマンド実例:Wi-Fiモジュール「ESP8266」で始めるIoT DIY(2)(3/5 ページ)
話題の技適モジュール「ESP8266」をWi-Fi接続して、ESP8266を宅内Wi-FiのAPにぶら下げる/APにする、といったATコマンド制御を紹介します。
前ページの構成図では、PCとESP-WROOM-02はUSBシリアル変換モジュールを介してつながっています。この時点ではPC側ではTeratermが立ち上がっており、PCからESP8266に対してATコマンドが通る状態とします。ESP-WROOM-02の電源はUSBシリアル変換モジュールを介して、PCから供給されています。
PCとESP8266双方がアクセス可能なWi-Fiのアクセスポイント兼ルーターがあるものとします。このルーターはDHCPサーバ機能があることが前提となります。ルーターのIPアドレスは192.168.1.1とします。PCは既にこのアクセスポイントに接続されており、192.168.1.16のIPアドレスが付与されているものとします。
ATコマンドによるオペレーション
PC側でESP8266と通信するためにTeratermを立ち上げます。
USBシリアル変換モジュールをPCに接続し、仮想シリアルポートがPCから認識できていることを確認してください。通信設定115200bps、端末設定でリターンキーを打った時にCR+LFが送信されるように設定します。次のリストがTeratermによる通信ログです。
1行目でファームウェアのバージョンなどを表示するコマンドを打っています。執筆時の筆者が使っているESP-WROOM-02のファームウェアバージョンと、コンパイル時のタイムスタンプが表示されています。6行目の AT+CWMODE=1 でESP8266をステーションモードに設定しています。ステーションモードとは他のWi-Fiのアクセスポイントに接続しに行くモードです。1以外だと他のモードになります。
9行目の AT+CWLAP でサービスエリア内にあるアクセスポイントのリストを表示しています。最初の数字がecnと呼ばれる項目でそれぞれの数値はそのアクセスポイントの暗号形式を示しています。
値 | 暗号形式 |
---|---|
0 | OPEN暗号設定なし |
1 | WEP |
2 | WPA-PSK |
3 | WPA2-PAAK |
4 | WPA-WPA2- |
2番目の項目がSSIDです。3番目の数値がシグナルの強さを示しています。そして最後の項目がMACアドレスを示しています。そして最後の数値が無線LANチャンネルを示しています。今回はエリア内にアクセスポイントが1つしかないので1行しか出てきていませんが、幾つかあれば複数行表示されます。
それではESP8266を筆者宅のJA5YOTに接続してみましょう。
14行の AT+CWJAP="JA5YOT","" というATコマンドでアクセスポイントに接続します。SSIDとパスワード指定しますが、先ほどの AT+CWLAP コマンドで示したようにこのアクセスポイントは暗号設定をしていないOPEN状態なのでパスワードは空文字を設定しています。ここは読者の皆さんの環境に読み替えて設定してください。
しばらくすると15行と16行のように接続したことと、IPアドレスが割り当てられたことを示す表示が出力されます。この時点でPC側でコマンドプロンプトを立ち上げて arp -a を打つとARPテーブルにESP8266のIPアドレスとMACアドレスが登録されていることが分かります。
そして19行目では、割り当てられたIPアドレスを表示するコマンドを入力しています。192.168.1.15が割り当てられたことが分かります。この時点でPC側でコマンドプロンプト等を立ち上げてpingを発行すると、アクセスポイント経由でPCとESP8266が接続したことを確認できます。
Copyright © ITmedia, Inc. All Rights Reserved.