……という夢を見よう。
「ESP8266をUSB-TTLシリアル変換してWi-Fiを確認する」では、PL2303 を使ったUSB-TTLシリアル変換ケーブルを使っていたのですが、私の手元には秋月の「定番のFT232を使用したUSBシリアル変換モジュールAE-UM232R」があるので、それでやってみます。
FT232RLを使うには FTDI社の仮想COMポートドライバが必要です。AE-UM232RのFAQを参考に導入し、PCに接続したときに「仮想COMポート」となるようにしておきます。
なお参考までに、PL2303を使う場合はProlific社のドライバが必要です。
配線
- RX (ESP8266) -> TXD (AE-UM232R)
- TX (ESP8266) -> RXD (AE-UM232R)
- CH_PD (ESP8266) -> 3v3 (AE-UM232R)
- VCC (ESP8266) -> 3v3 (AE-UM232R)
- GND (ESP8266) -> GND (AE-UM232R)
ATコマンドで接続を確認
Arduino IDE のシリアルモニタを使います。Arduino IDE を起動し、ツール > ポート で、 FT232RLに割り当てられたCOMポートを指定し、ツール > シリアルモニタ を開きます。
右下で「CRおよびLF」「9600bps」を選択し、"AT" を送信するとOKが返ってきて接続できていることが確認できます。AT+GMRを送信すると、ファームウェアのバージョンを返してきます:
ATコマンドでWifi子機(STAモード)になる
AT+CWMODE=1 (wifi mode; モード1つまりSTAモードになる)
OK
AT+CWJAP="flashair","password" (join the AP; SSID=flashair に接続する)
OK
AT+CIFSR (IPアドレスを表示)
192.168.0.11
OK
ping 192.168.0.11 に応答するようになる。
ATコマンドでWifi親機(APモード)になる
AT+CWMODE=2 (wifi mode; モード2つまりAPモードになる)
OK
AT+CWSAP="ESP8266","0123456789",11,3 (set the AP; SSID=ESP8266 となる)
OK
AT+CIFSR (IPアドレスを表示)
192.168.4.1
OK
Wifiクライアントから、 ESP8266 という SSID にパスワード 0123456789 で接続できる。
DHCPサーバがないので、Wifiクライアントに固定IP 192.168.4.2 等を割り当ててやる必要があるが、
ping 192.168.4.1 に応答するようになる。
参考文献