BeagleBone Green Wireless 格闘中2017年02月08日 20時31分37秒

BeagleBone Green(BBG)の記事はたくさんあるのだが、BeagleBone Green Wireless(BBGW)については数えるほどしかみかけない。それでも、当初は大丈夫だろうとたかを括っていた。

しかし、そしていつものことだが、見事に予想が外れた。ワイヤレス機能の操作方法について熟知していないととんでもない目に遭う。これが結論である。

また、BBGもしくはBBGWに手を出そうとするなら、少なくともLinuxの基礎知識程度は必須である。
幸いにして、私の場合は25年ほど前になるけれど業務で扱った経験があった。大概忘れてしまっていたが、viのコマンドは指が覚えていた。viエディタは使いづらいと言う人がいるようだが、私には使い良い。昔取った杵柄(きねづか)とはこのことか。

WiFi接続で難儀したので、忘れないうちに要点だけメモしておく。(老人性健忘症が進み、一時間前に何をしたのかもう忘れかけているありさま)

1)/etc/network/interfacesの内容
#
#WiFi
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface wlan0 inet dhcp
#
を書き加える。

2)/etc/wpa_supplicant/wpa_supplicant.confの内容
network={
ssid="aterm-xxxxx-g" <-我が家では必ず-gを選択すること
proto=AES
key_mgmt=NONE
psk="xxxxxxxxxxxxx" <-ルーターに書かれている13桁のパスキー
}

3)softAp0を停止させる
この機能を止めておかないと、interfacesをいくら書き換えても思った通りの動作をしない。これがわかるまで2日かかった。

ちなみに、Googleの検索キーワード「softAp0 beaglebone disable」で幾つか貴重な情報が得られたそのまま貼り付けておく。

edit /usr/bin/wifidog_pre
at the top of the script, add this line: touch /tmp/wifi.up
at the bottom of the script, comment out systemctl start of wificonfig.service
at the bottom of the script, append these 2 additional lines:
systemctl stop wificonfig.service || true
systemctl disable wificonfig.service || true
save the file and reboot the device


4) connmanctlコマンドでWiFi機能を操作する
onnmanctl> services
接続可能なSSIDの一覧が表示される
いまBBGWがどのSSIDを使っているかを確認する。
当初、意に反するSSIDに接続されていることがわからず、一晩悩んでしまった。これを使って一発でわかったときは拍子抜けした。

変更したい場合は
onnmanctl> disconnect wifi_xxxxxxxxxxxxxxxxxxxx_managed_wep
onnmanctl> agent on

Agent registered

connmanctl> connect wifi_xxxxxxxxxxxxxxxxxxxxxxxxxxxx_psk
Agent RequestInput wifi_xxxxxxxxxxxxxxxxxxxxxxxxxx_psk
Passphrase = [ Type=psk, Requirement=mandatory, Alternates=[ WPS ] ]
WPS = [ Type=wpspin, Requirement=alternate ]
Passphrase? xxxxxxxxxx <- 13桁のパスキーを手入力する

Connected wifi_xxxxxxxxxxxxxxxxxxxxxxxx_managed_psk <-成功

onnmanctl> services で接続を確認する
connmanctl> quit 終了

この設定は一度行えばよい

これでなんとか、我が家のネットワークに接続ができ、インターネットも見られるようになった。やれやれ。。

次の課題は、NASのマウントなのだが、これがうまく動かない。
cifsはインストールした。
NASへのpingもとおていることを確認した。
LanScanを使って、ネットワーク上にサーバーとクライアントが見えていることを確認した。

が、しかし、Unable to find suitable addressが出てどうにもならない。解決にはもう一山ありそうな予感。


こうしてみると、BOTICの稼働を目標としているのだが、やっぱりWirelessタイプでは難しそうな予感がしてきた。理由は二つある。

一つ目。みなさんが公開しているものはF1マシンなみにいらない機能を削ぎ落としている可能性があるので、ワイヤレス機能を起動させることができかどうかわからないこと。

二つ目。BOTICの操作は有線LANのみでUSBさえもネットの口が閉じられているように見える。もしそうなら、外部からどうやってログインするか。まずこれが問題となること。


しかし、これに取り掛かってしまうとあっという間に時間が飛んで行く。

なお、ここで書かれていることを鵜呑みにする人はいないとは思うが、一応書いておく。

※ここに書かれていることは、あくまでも個人的なメモに過ぎません。
  内容が不適切である可能性があります。