2016年7月7日木曜日

Raspberry Pi Zeroを使っていて気がついた事

2台目のRaspberry PiとなるZeroが届いて色々イジリ倒してるのですが、Raspbianを操作してる限りではRaspberry Pi 2との差をあまり感じません。
やはりサイズの小ささと価格が最大の魅力ですね♪
RaspbianからApache HTTP Serverが消えたわけ
Raspberry Pi 2で使っているRaspbianを最新バージョンのイメージファイルでクリーンインストールしなおし、そこに差分を当てる形でリフレッシュしました。
その作業で旧バージョンと異なる部分があったのですが、その中でも一番気になったのが

Apache HTTP Serverが入っていない

Apache HTTP Serverのドキュメントデフォルトディレクトリが/var/wwwから/var/www/htmlに変更されたり、セキュリティが見直されて動いていたものが動かなくなったりという事がありました。
また、大抵のサイトで解説してるapt-get update→apt-get upgradeというパッケージを最新状態にするコマンドもインストールされるライブラリの不整合で動かなくなる不具合があったので、環境が安定するまでアップデートを行わずに静観していました。
それが、OSのクリーンインストールではじめてデフォルト環境の変更を知ったので疑問に感じていたのです。

その疑問が解けたのがRaspberry Pi Zeroでした。
Raspberry Pi ZeroにはLANに繋ぐ手段が標準で付いていません。これはRaspberry Piシリーズの中でこの機種とCompute Moduleのみ。
Compute Moduleは用途が特殊なので例外として、低価格で入門用としても最適なRaspberry Pi Zeroの登場でハードウェア環境に合わせてOSのデフォルトインストール済パッケージも見直されたのだろうと、Raspberry Pi Zeroを触りだしてから気が付きました。
USB3.0 有線LANアダプタでも使える
Raspberry Pi Zeroに搭載されているUSBはUSB2.0です。
今回、Raspberry Pi Zeroで使ったアダプタはLogitec LAN-GTJU32という1000BASE-T対応のUSB3.0用を使いました。
普段はLenovo G580 26897JJで使っているのですが、使えたらラッキー程度で試しに接続してみたら特別な設定をする事なく使えました。
USB3.0の論理速度は5Gbps、USB2.0の論理速度は0.48Gbps。
100BASE-Tの論理速度は0.1Gbps、1000BASE-Tの論理速度は1Gbps。
早い話、USB2.0なら1000BASE-Tのほうが理論上は通信速度が速い事になります。
それじゃ実際どうなのか?ということで、Raspberry Pi 2+内蔵有線LANとRaspberry Pi Zero+Logitec LAN-GTJU32で、speedtest-cliを使って測定してみました。



シングルコアあたりの処理能力はほぼ同じRaspberry Pi ZeroとRaspberry Pi 2。
通信速度差はLANアダプタの差と思って良いでしょう。
Raspberry Pi 2は内蔵LANが100BASE-Tのため実測値として妥当な数字です。
一方、Raspberry Pi Zeroは1000BASE-TのアダプタをUSB2.0接続にしてるため最大論理値は480Mbpsとなります。
バックグラウンドで他のプロセスが実行されたシングルコアCPUにも関わらず、DLが100Mbpsを超えたのは大健闘でしょう。

スマホにもUSB3.1+USB TypeCコネクタの流れがきている今日このごろ。
Raspberry Piは、そんなスマホの発展によって成長した技術に支えられて低価格が実現したコンピュータです。
最新のRaspberry Pi 3は64ビットCPUや無線LAN&Bluetoothが搭載され益々スマホに近いスペックになっています。
今後の発展がとても楽しみです。

2016年7月5日火曜日

Twitter for Androidの通知が来ない時の対処方法

仕方ないなぁ、もぉ_(¦3 」∠)_
Twitterアプリ側の設定
1.Twitter for Androidを開いた状態で、左上の丸い自分のプロフィール画像をタップ


2.通知をタップ


3.モバイル通知をタップ


4.右上のスライドスイッチが灰色の場合はタップして色を付ける


5.@ツイートと画像タグをタップ


6.誰からでもをタップ



これでも通知が来なかったらOSの設定を見直す。
Twitterアプリ側の設定
Android 5.0以上の場合のやり方。
ソレ以下の場合は・・・困ったね∠( ゚д゚)/

1.音と通知をタップ


2.下の方にアプリの通知があるのでそれタップ。


3.インストールされてるアプリ一覧が出るのでTwitterを探してタップ


4.画面参考にこんな感じで設定する。


最後に
この設定方法はNexus 5+Android 6.0.1で作ったので、表示が全然違う場合があります。
それでも、大体の設定の流れは同じなので探せば見つかるはず!
それでもダメなら携帯電話会社のショップに持ち込んで聞いてみてください。
Twitterアプリはメジャーアプリなので、手取り足取り腰取り教えてくれるハズです。

Android 4かそれより古い場合はちょっと厄介かも?
Androidの最初の画面から
設定→アプリ→[アプリの一覧]→Twitter 探し出してそれをタップ。
通知を表示というチェックボタンがあるので、それをチェック。
もし無かったらお手上げです∠( ゚д゚)/
そんな腐れスマホは窓から投げ捨ててください。私が拾いに伺います(笑)

Raspberry Pi ZeroにOS Raspbianをセットアップ

前回までのトゥエンティー、、、ゲフン。
Raspberry Pi ZeroにGPIOのピンヘッダーをハンダ付けしてケースに組み付けた所までやりました。
ただ、このままだとSDカードが抜き挿し出来ないので、面倒ですがセットアップ中は一旦ケースから出して使いました。
ケーブルの取り付け
前回までに用意した変換コネクタやケーブル類、あと自宅にあるモノいくつか使って接続していきます。
HDMIはモニタ用のケーブル。microUSBコネクタは2つ付いてますが、真ん中のが周辺機器用でハジのが電源用です。

microUSBはそのままではタイプAと呼ばれる一般的なコネクタが物理的に挿せないので、microUSB変換ケーブル(OTGケーブル)を使って繋ぎます。
また、周辺機器用のコネクタが1つしかないのでUSBハブ経由となりますが、電流容量500mAが上限なので十中八九足りなくなります。
そのため、セルフパワータイプのUSBハブを使ったほうが無難でしょう。

今回取り付けたUSB機器はこちら
  • ワイヤレスキーボード
  • 有線マウス
  • 1000BASE-T有線LANアダプタ
microSDカードにOS Raspbianのイメージファイルを復元
今回もRaspberry Pi財団のRaspbianを使います。

まず、用意したSDカードをSD Formatterでフォーマットします。
これをする理由は、SDカードのチェックと不良セクタ(不良素子)を弾くのが狙い。
新規にイメージ展開する時も、バックアップイメージを展開する時も、この作業は必ずやったほうが良いです。

次に、ホームページからイメージファイルをダウンロードし、インストレーションガイドを参考にイメージファイルをSDカードに展開します。
展開し終わったらSDカードを本体に戻します。
目覚めよ!Raspberry Pi Zero!!
電源を入れてイザ起動!
もし、ここで運悪く接続漏れとか発覚して途中で電源を切ってしまうと、最悪SDカードに展開したイメージが破損します。
SDカードが物理的に壊れたわけではないので、その時はまた再セットアップしましょう

無事立ち上がるとGUIが立ち上がります。
初期設定では英語なので、左上のMenuをクリックしてPreferencesをクリック。
一番下のRaspberry Pi Configurationをクリックすると設定画面が開くので、上の右側にあるLocalisationタブをクリック。
そこで日本語設定します。

ただ、これだけだと文字化けするので、ターミナル(上にあるモニタみたいなアイコン)をクリックし、
$ sudo apt-get install ttf-kochi-gothic xfonts-intl-japanese xfonts-intl-japanese-big xfonts-kaname
と入力してフォントをインストール。再起動すると文字化けしなくなります。
コマンドラインも四角い文字で文字化けしますが、これはjfbtermというソフトをインストール・起動すると解決するのですが、そちらは別のサイトで解説されてるので検索して調べてみてください。
Raspbianを自分色に染め上げる
Raspberry Pi ZeroにRaspbianをセットアップして無事起動。
ただ、私は普段CLI(コマンドライン)しか使わないので、この後Configurationで起動時のモードをCLIにしたり、短縮コマンドのAliasを設定したり色々やります。
一通り済んだら念のためそこでイメージバックアップを取って作業終了。
今回は凝ったことしないお体なのであっさり終わりました。

一応、これでRaspberry Pi Zeroのスタートアップの話は終わりです。
次回は、作業中にわかったオマケ記事を書きたいと思います。

2016年7月3日日曜日

Raspberry Pi ZeroのGPIOにヘッダーピン立て

遠路はるばる海の向こうからやってきたRaspberry Pi Zero。

コストカットのためにGPIOにヘッダーピンが付いていません。
今回はそれの取り付け作業の話です。
取り付け準備
先日秋葉原で買ってきたピンヘッダーと本体を用意します。
ピンヘッダーは2.54mmピッチ 20ピンx2列=40ピン。
今回は標準的なサイズのオスピンを用意しましたが、ピンヘッダーにも色々な商品が出ていますので都合に合わせて選びましょう。

部品をRaspberry Pi Zeroの穴に差し込んでひっくり返し、動かないように養生テープのような粘着性の弱いテープで固定します。

段差もあるので工夫が必要なのですが、今回はかまぼこ板を3枚使ってうまく段差を作って固定しました。

写真では横置きにしていますが、ハンダ付け作業は縦置きのほうがやりやすかったです。
ハンダゴテを持つ利き手側にハンダ付けする列向けて取り付けていきます。
そのほうが余計な突起にコテ先が邪魔されず作業しやすかったです。

ひっくり返してSoC実装面を上に向ければ、見慣れたGPIOピンヘッダのついたRaspberry Piの姿になります。
このピンに様々な回路を接続してIoTしちゃいます。
ケースにIN!
ピン立てが完成したRaspberry Pi Zeroを一緒に買ったPibow Zero Case for Raspberry Pi Zero version 1.3に入れてみました。
綺麗なケースですよね。
ただこのケース、欠点があります。
本体を収納するとmicroSDカードの抜き差しが出来なくなります。
1度セットアップすれば当面は抜き挿ししなくなるので、大した問題にはならないとは思うのですが。
アクリル板をヤスリで少し削り、microSDカードに持ち手を付ければ抜き挿し出来るようになりそうですが。

形になってきたRaspberry Pi Zero。
次回はOSをセットアップして動かしてみたいと思います。