chakokuのブログ(rev4)

テック・コミック・ごくまれにチャリ

Raspberry Pi Zeroを買った、シリアルコンソールで繋いでみた

Pi Zeroが出て、これは安いと思ったけど、気づいた時はすでに遅く、どの店も在庫切れだった。その後、ポツポツ在庫が出始めた様でタイミングを見計らって購入した(何に使うという目的もなく、数百円でLinuxが走るという事だけで買った)。

自分が買ったのは、PIMORONIという店、3.33GBP(3.33イギリスポンドかと(500円ぐらいか?))
https://shop.pimoroni.com/

本体は安いけど、動かすには周辺デバイスの接続が必要。コネクタの形状や仕様が特殊で、セットアップの方に金がかかる。MicroSDは使いまわすとして少なくとも以下を追加で買う必要あり*1

  • Mini HDMI -> HDMI変換コネクタ*2
  • USB OTG Micro B -> A 変換コネクタ

追加パーツを格安で上げるなら、Amazonで扱ってる中国から船便?で送られてくるパーツで揃えれば出費も抑えられると思う(1W〜2Wかかるけど、安さ爆発だ)。自分が注文したのは以下。納品は8/10頃らしい。。

  • SANWA SUPPLY HDMI変換アダプタ ミニHDMI 黒 AD-HD07M 165円
  • 【BlueSea】Micro USB OTG Host cable for GALAXY S2/S3/Note・Nexus7【L字型】 100円

ローパワーだしCUIで使うと割り切るなら、周辺IOのシリアルをTTYとしてセットアップできたら、HDMIとか不要になるのだけど、いきなりそのconfigを仕立ててBOOTさせるのは壁が厚い。最初はHDMI(Terminal出力)+USB(Keyboard)を使いながら、最終的にはSerialだけで繋がるようにしたいとは思う。あるいは、、USB/Ethernet変換で使うか?

■ご参考URL
adafruit様;よくまとまったセットアップ記事
https://learn.adafruit.com/introducing-the-raspberry-pi-zero/a-tour-of-the-pi-zero

ラズパイのシリアルコンソールに関する情報:ラスベリーライフ様
https://raspberrylife.wordpress.com/2013/02/27/%E3%82%B7%E3%83%AA%E3%82%A2%E3%83%AB%E3%82%B3%E3%83%B3%E3%82%BD%E3%83%BC%E3%83%AB/

CUIで構築する情報:DEVICE PLUS様
http://deviceplus.jp/hobby/raspberrypi_entry_041/
RASPBIAN JESSIE LITEをつかうといいらしい
https://www.raspberrypi.org/downloads/raspbian/

ラズパイのGPIOピン配置図
http://raspi.tv/2014/rpi-gpio-quick-reference-updated-for-raspberry-pi-b
http://raspi.tv/wp-content/uploads/2014/07/Raspberry-Pi-GPIO-pinouts.png

RaspberryPiで使える無線LADアダプタ一覧
http://elinux.org/RPi_USB_Wi-Fi_Adapters

■追記

なんとか手持ちの機材でZeroをシリアルで繋げられないか検討。。
方針は以下
1. まずjessie liteを落として、Win32DiskImagerを使ってSDに焼く
2. 上記SDを使って普通のラスパイで起動、必要な設定を行いOSのConfigを最適化
3. 上記SDでZeroを起動してみる

実施:
jessie lite入りのSDを作成、普通のラズパイでブートして、以下を実施
1. SDの領域再割り当て(raspi-configよりメニュー1で実施)
2. Serialコンソールの有効化(同じくraspi-config,メニュー9の下のA8(Serial Enableだったか)で実施)

ここまで普通のラズパイで設定してShutdown
上記設定の済んだSDをPi Zeroに挿入してブート
ありえないぐらいにええ加減な配線ですが、Pi ZeroのGPIOポートでは、6:GND , 8:TxD , 10:RxDが出ているのでそれに合わせてUSB-Serial変換基板経由で接続しています。

PC側ではTeraTermを起動して、USB/Serialで発生したシリアルポートを指定して接続。速度は115200baud、ポートはCOM3(自分のPCの場合)。GPIOのRxD/TxDを繋いだ状態でブートするとTeraTermにブートメッセージが表示された。ログインも可能で、左が画面例。

以上によりシリアルで接続できたので、TV(HDMI接続)は不要なのであった。。GUIで遊ぶのなら必要だけど。PiZeroは非力なのでIoT等のデータ収集や送信に使うのがよいのではないかと。だとすると、WiFiかBLE等の無線が必要ですよね。。

■追記
PiZeroとLANで接続できるようUSBドングル形式の無線LANを手配。安定動作するとコメントが多いPlanexのGW-USNANO2Aを発注。普段はAmazonで買うけど、この商品は2000円以上買わないと送料無料にならないので、ぷららが運営するひかりTVショッピングにて購入(送料無料)
http://shop.hikaritv.net/shopping/commodity/plala/5415826074

PiZeroってあまり技術情報(回路図もないようだ)がないなーと思っていましたが、OS経由で使うだけなら、ラズパイタイプAの小型版と思えばいいのでは?と思いました。根拠ないですが、まぁそんなものかなと

■一体PiZeroをどう使うか??
小型組み込みボードの適用先(アプリケーション)を考えまするに、小型軽量なので身体につけっぱなしとか、省電力なので常に動いているとか、すぐに立ち上がるとか、安価だからあちこちにばら撒けるといった特徴を活かすことがポイントと思います。だけど、、Pi Zeroの場合、OSはLinuxなので起動に少し時間かかるし、本体安くてもSDカードが必要だったり結構電気食うので、ローパワーの小型組み込みボードのようには使えないと。
そんな前提の中で適用先を考えると、ここは思いだけで終わる可能性大だけど、、なんちゃってリカレントネットワークで仮想人格作って、音声合成でペラペラと喋らせる案。。カメラ画像で周りが見えるようにして、見たもの+αでブツブツと喋らせる。。メモリやCPUパワーが足りるのか不明ですけど。ネットにさえ繋がっていれば不足するパワーはクラウドで補えばいいわけで。スマフォでもできるけど、家に置きっぱなしでいつも電源が入っているのに近い運用を考えると、安価な専用機に分があるのではと思えるのです。

今後のための参考URL
http://qiita.com/sh1k1ya/items/fabc9accae28a0f0a7e3
http://www.a-quest.com/products/aquestalkpi.html
https://learn.adafruit.com/assets/28754 PWMで音を出す回路図
http://qiita.com/lethe2211/items/7c9b1b82c7eda40dafa9 Google音声認識使い方報告
http://japan.zdnet.com/article/35086189/

*1:USB変換コネクタはOTG対応が必須かどうか不明

*2:アナログでよければNTSC信号を出すのも可能なようだ