HummingBoard, HummingBoard2(Edge/Gate) を使ってWiFiのアクセスポイントができるか、というのが今回のテーマです。Webサーバー機能とアクセスポイントが一つのマシンでできたら、「持ち運びのできる完全にクローズドなサーバー」が実現します。すなわち、その場にいる人だけがAP付きサーバーにWiFi経由で接続してサービスを受けるようなことができます。また、IOTアプリでは、エッジサーバーにAP機能があるとルーターが省けて少ない機材でシステム構築することに役立ちます。
WiFiをAP(アクセスポイント)モードにすることは、基本的には、ドライバがアクセスポイントがサポートされているものであればできます。ただし、実際に全体の環境の構築をやってみると口で言うほど簡単にできるわけではありません。
最初に、対象のWiFiのPCIeカードやUSBドングルのドライバがサポートされていないと何も始まりません。まずは通常のクライアントとして動作することを確認します。(これができていないとなると、対応するドライバとかファームを入れるところから始める必要があります。自身でソースからのビルドをするスキルがないとこの工程は厳しい)
今回検証したのはWLE900VX (802.11 AC / ABGN 3 x 3 MIMO Atheros qca9880ワイヤレスMini PCIe 2.4 / 5 GHzデュアル) というアセロスのチップセットのもので、これにアンテナをつけています。
また、今回は2018.07時点で最新のArmbianを用います。Armbianであれば、CuBox-iシリーズ、HummingBoardシリーズさらにHummingBoard2 (Edge/Gate)すべてをサポートしています。また、以前のバージョンでは検出に問題があったPCIeも完動しています。
PCIeボードをHummingBoard Egdeの裏面に取付けて、ArmbianのuSDを挿して起動するとボードを認識してくれます。(USBドングルであれば青く光り認識されているのが直感的にわかります)クライアントで動かすには、デスクトップのNetworks
から見えているSSIDのリストから選ぶだけ、通常のPCと同じ要領でできます。
さて、今回のテーマであるAPにする方法を探ります。
一般的には、hostapd と dhcpd のインストール及び設定、およびネットワーク設定をすることになるわけですが、armbian-config を利用すれば、ツールバーからの操作だけでできてしまいます。WiFiのAPを動作させようと検索すると、数々の奮戦記をみることができます。いざ動かない場合にはこうした記事が参考にもなります。問題は自分の環境と一致していないものでは自分の問題解決にならないことが通常です。