ラズパイ（Raspberry Pi Zero WH）を公衆Wi-Fiに接続する方法

## はじめに
カフェの公衆Wi-Fiにどうやったらラズパイで使えるようになるかを考えてみました。
![P_20181117_185949_vHDR_Auto.jpg](https://qiita-image-store.s3.amazonaws.com/0/313830/ccde8efc-6d2b-aefa-db42-11b8ecc45655.jpeg)

そりゃあ、GUIできる環境を用意して公衆Wi-Fiにログインすれば早いのかもしれません。しかし、ここではGUIが使用できる環境でないし、電源を多く使えるという環境ではない、つまり手持ちのPCだけの電源を使ってラズパイで遊べるかを考えてみます。
※まさか、ラズパイにモニターとキーボードやマウスを用意して、一式をカフェに持ち込んだとしてでも、電源が使えるとは限らないカフェもあります。

## シリアル通信
今回は、「TTL-232R-3v3」というケーブルにてシリアル通信をしますが、以下のブログの通り接続しています。これにより、電源供給もケーブル側より、つまりPCから電源をラズパイに供給しています。これにより少ないUSBポートの節約ができます。使用するピンは以下の通り。

|TTL-232R-3V3|GPIO番号|端子名称|
|--:|--:|--:|
|赤|P1-02|VCC(5V)|
|黒|P1-06|GND|
|黄|P1-08|RXD(3.3V)|
|橙|P1-10|TXD(3.3V)|

参考として関係ブログを示しておきます。

TTL-232R-3V3でRaspberryPiと接続する(揮発性のメモ２)
https://iww.hateblo.jp/entry/20130821/usbserial
また「config.txt」に「enable_uart=1」の設定を忘れないように。

Raspberry pi zero Wでもシリアル通信がしたい！（1日ひとつだけ強くなる）
http://hal0taso.hateblo.jp/entry/2017/08/01/Raspberry_pi_zero_W%E3%81%A7%E3%82%82%E3%82%B7%E3%83%AA%E3%82%A2%E3%83%AB%E9%80%9A%E4%BF%A1%E3%81%8C%E3%81%97%E3%81%9F%E3%81%84%EF%BC%81

TraTermのシリアルポート設定を行う。
<img width="286" alt="traterm-001.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/313830/dd239f9c-f56c-b914-e15a-48bf4df42b87.jpeg">


これで、ラズパイとシリアル通信通信が可能になるだけでなく、PCの電源を利用しての環境となります（実際の接続例）。
![P_20181117_021803_vHDR_Auto.jpg](https://qiita-image-store.s3.amazonaws.com/0/313830/178cd097-171e-3105-054d-5c1461c7314c.jpeg)

※要するに初期セットアップしたいので公衆Wi-Fiをいかに利用するかと無駄に考えてみただけですけどね。

FTDI USB・シリアル変換ケーブル（3．3V）
http://akizukidenshi.com/catalog/g/gM-05840/

## Wi-Fiルータを選択する
今回、使用するWi-FiルータはAtermW300Pというものです。今では生産終了品となっているため、購入は難しいでしょうか。代わりに同じ機能を提供しているAtermW500Pが使えるかと思っております。テストはしてませんけど。

![P_20181117_174853_vHDR_Auto.jpg](https://qiita-image-store.s3.amazonaws.com/0/313830/f8013020-4e2d-8492-a442-9b2bc24f3f6f.jpeg)

Wi-Fiポータブルルータ（AtermW300P）
http://www.aterm.jp/product/atermstation/product/warpstar/w300p/
Wi-Fiポータブルルータ（AtermW500P）
http://www.aterm.jp/product/atermstation/product/warpstar/w500p/

## ルーターを公衆Wi-FiのSSIDを設定する
例として「StarBacks」の公衆Wi-Fiを例にしますが、タリーズのWi-Fiでも動作確認しています。タリーズはタリーズWi-FiのSSID「tullys_Wi-Fi」を利用してください。

<img width="625" alt="atermw300pselect.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/313830/81c294b6-fa7f-be5c-bf56-08c2644f3833.jpeg">

スタバのSSIDを設定する
<img width="625" alt="atermw300p01.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/313830/6678a3bb-a7c5-8349-4b7b-3d0595681c24.jpeg">

## 手元のPCより公衆Wi-Fiに手動でログインする
一度、手元のPCよりWi-Fiルータに接続して、そのWi-Fiルータから公衆Wi-Fiに手動でログインするのがポイントです。

以下はスタバの場合の例です。
<img width="601" alt="starbackwifilogin.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/313830/72be4e35-fce8-6c00-2739-e19155284919.jpeg">

<img width="601" alt="starbackwifilogin2.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/313830/029effc7-1068-4666-8600-a1b8ab00f90f.jpeg">
同意するで接続すると、ログインできたことを示すスターバックスコーヒーのホームページが表示されるかとおもいます。

※スターバックスコーヒーの公衆Wi-Fiは現在1時間単位のログインを行わないといけないので、1時間ごとに使用を延長する場合は再度ログインの作業を行う必要があるかとおもいます。

##　ラズパイを用意したWi-Fiルータに接続する

まず、ラズパイのWi-Fiの設定を行うことでWi-Fiルータに接続します

```bash
#sudo raspi-config
```
このようにCUIが立ち上がります。

<img width="494" alt="raspi-config001.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/313830/ab77e454-c57c-fc68-5949-51fb74f0dc31.jpeg">

2の「Network Options」を選択してください。
そしてN2の「Wi-fi」を選択してください。

<img width="494" alt="raspi-config002.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/313830/4814838b-4486-8b94-8f58-faa6f91ea8b2.jpeg">

Wi-FiルータのSSIDを設定してください。
例として「aterm-xxxxx-g」を入れていますが、各自のWi-FiルータのSSIDを入力してください。

<img width="494" alt="raspi-config003-2.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/313830/5171a721-ed21-3e4c-2ee4-8d612e2734e0.jpeg">


各自のお持ちのWi-Fiルータの暗号化キー（AES)を入力してください。
<img width="494" alt="raspi-config004.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/313830/e8c34e3f-91d7-7e8b-3d83-9904b71c80a7.jpeg">

設定してWi-Fiルータにラズパイを接続させます。

ついでにこのタイミングでラズパイの諸設定を行ってもいいかともいます。

##　最後に

回りくどい方法だとおもいますが、この方法で公衆Wi-Fiがあるカフェでラズパイの設定ができます。比較的通信制限のあるモバイルルータを使用する必要がないことです。

## 履歴
2018年11月30日 ピン配置挿入とそれにともなう修正