PaiZero Wのアンテナを見つつ、アレクサとかGoogleアシストを呼び出すものを作る構想なんぞを練ってみる

Banana Pi に浮気していましたが、RasPi Zero W に戻ってきました。
この子は、2017/02 にリリースされたんですね。だいぶ遅れましたがあれこれ見ていきましょう。まずは、何事も観察から始まります。

今日は、RasPai Zero W のアンテナには工夫があるっていうことで各記事を参照してみた後、その部分をみてみました。

スイッチサイエンスマガジン:Rapberry Pi Zero Wのアンテナのお話

S20181121_001.jpg

手前に見えているのは、普通のボールペンの先っちょです。上がアンテナ部分。
基盤の各層の銅箔部分と、コンデンサ3つで2.4GHz 帯の電波をキャッチするようです。

スゥーデンのProant社ってとこがライセンスしたみたいです。こんな工夫があるんですね。

 

アンテナの設計エンジニアが書いた記事が紹介されていました。

Enbedded COMPUTING DESIGN
A lesson in wireless engineering from the Raspberry Pi

そのほか、いろいろ調査してみます。Zero の基盤と W との比較は以下。

C5viOAmWAAA9VEh.jpg

部品レイアウトもちょっと変更されています。サイズは同じなんでケースなんかは流用できます。

GIF-640px-med.gif

面白いですね〜。

最後に、回路の概要図のリンクを。PCB のデータは見つかりませんでした。どっかにはあると思うんですが。この基盤、裏側には部品が実装されてないんですよね。すごいなと。

rpi_SCH_ZeroW_1p1_reducedSCHEMATIC1___PAGE2_-_POWER__XOS.png

とりあえず、なにかまたPCB基盤を作ってみたくなりました。〇〇HAT基盤とか、なにか、作ってみたいですね。

というか、ちゃんと1つの機能が動作するモノを最近何も作っていなくて、そういう役立つ何かを作ってみたいです。

あれこれ調査していますが、いろいろ作れて迷います。一番興味が引くもので面白く、かつみんなが興味を持つもので、何より自分が作りたいもの。

1つ候補が上がっています。それは、Amazon EchoとGoogle Home の2つの機能を1つにまとめたものがあると楽しいかなと。こういうジャンルってなんていうんですかね? スマートスピーカー? うーん、実際には裏側で通信して受け答えをしているわけなんで、音声認識のAIの先っちょって感じでしょうか?Amazon EchoとGoogle Homeは、両方ともなんだかんだと買いそびれてしまい、まだ持っていないんですよね。自作できたら、作りたいなと。どうやら、できそうなんですよね。

まぁそれでも、「ねぇ、アレクサとGoogle 。7時か8時くらいになったらやさしく起こして。」

なんて、お願いできたら、いいなと思っています。さらには、アレクサとGoogle の名前部分を家族の名前にしたら面白いんじゃないかと。猫とかの名前でもいいです。結構笑えるモノができそうな予感。
〇〇→猫1
△△→猫2

「ただいま〜、〇〇。△△、今日のご飯は何にしよう?」とか、話かけたりできたら面白いかもしれません。

 

Raspberry Pi Zero セットアップ2

今日は、RasPi Zero に接続する MicroUSB の OTG ケーブルが届いたので少し遊んでみた。LED が点灯せず、焦りましたが、SDカードをフォーマットしていて OS が入っていないのを忘れていました。テスター当てて、電源がきているか確認です。ここが参考になりますね。

S20181119_001.jpg

普通に扱っていれば、滅多に壊れないのでLED が付かなくてもとりあえずは、SDカードの内容を確認してみるのがいいですね。自分の場合は、SDカードに刺した状態で、USB認識しなかったんで、もしかすると本当にどこかおかしいのかもしれません。

S20181118_001.jpg

で、無事ブートしました。3本も接続すると、本体がちっこすぎてケーブルに引っ張られますね。まずは、定番の UnixBenchです。OS は、2018-10-09-raspbian-stretch-lite です。Update も何もせずとりあえず、UnixBench をコンパイルして実行。

========================================================================
BYTE UNIX Benchmarks (Version 5.1.3)

System: pizero: GNU/Linux
OS: GNU/Linux — 4.14.71+ — #1145 Fri Sep 21 15:06:38 BST 2018
Machine: armv6l (unknown)
Language: en_US.utf8 (charmap=”ANSI_X3.4-1968″, collate=”ANSI_X3.4-1968″)
CPU 0: ARMv6-compatible processor rev 7 (v6l) (0.0 bogomips)

21:00:01 up 22 min, 2 users, load average: 0.08, 0.25, 0.21; runlevel 3

————————————————————————
Benchmark Run: Sun Nov 18 2018 21:00:01 – 21:28:09
1 CPU in system; running 1 parallel copy of tests

Dhrystone 2 using register variables 2152307.8 lps (10.0 s, 7 samples)
Double-Precision Whetstone 461.6 MWIPS (10.0 s, 7 samples)
Execl Throughput 222.2 lps (29.8 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 37774.2 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 12292.0 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 94535.6 KBps (30.0 s, 2 samples)
Pipe Throughput 129589.5 lps (10.0 s, 7 samples)
Pipe-based Context Switching 20014.2 lps (10.0 s, 7 samples)
Process Creation 564.7 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 465.9 lpm (60.1 s, 2 samples)
Shell Scripts (8 concurrent) 59.6 lpm (60.4 s, 2 samples)
System Call Overhead 441679.0 lps (10.0 s, 7 samples)

System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 2152307.8 184.4
Double-Precision Whetstone 55.0 461.6 83.9
Execl Throughput 43.0 222.2 51.7
File Copy 1024 bufsize 2000 maxblocks 3960.0 37774.2 95.4
File Copy 256 bufsize 500 maxblocks 1655.0 12292.0 74.3
File Copy 4096 bufsize 8000 maxblocks 5800.0 94535.6 163.0
Pipe Throughput 12440.0 129589.5 104.2
Pipe-based Context Switching 4000.0 20014.2 50.0
Process Creation 126.0 564.7 44.8
Shell Scripts (1 concurrent) 42.4 465.9 109.9
Shell Scripts (8 concurrent) 6.0 59.6 99.4
System Call Overhead 15000.0 441679.0 294.5
========
System Benchmarks Index Score 97.0

100くらいだとは知っていましたが、おそっ(笑)まぁ、シングルコアなんで仕方ありませんね。使い道に困るデバイスかもしれません。というか、今までのこれ系のボードも結局転がっていますしね。ベンチマーク取って、あぁ、安いね、小さいね。で終わっています(笑)

でも本体が小さいので、Linux の何かを使ったものを作るにはいいかもしれません。例えば、カメラとか? 家の IoT デバイスを集中的に処理するものとか。あと、アリエク物色していて、Banana Pi M2 Zero っていう互換?ボードも見つけました。2400円(送料込)

zero2.png

特色は、CPU コア数が4つで、メモリがDDR3 なんで処理速が早い(とは行っても、たかが知れてるかもですが)いや、この大きさで4core なのはいいんじゃないでしょうか?

HardWare Specification of Banana pi BPI-M2 zero VS Raspberry Pi Zero W
Module Banana Pi BPI-M2 Zero Raspberry Pi Zero W
CPU H2+ Quad-core Cortex-A7 H265/HEVC 1080P Broadcom BCM2835 32 Bit 1 GHz ARM1176JZF-S single-core
GPU Mali400MP2 GPU @600MHz,Supports OpenGL ES 2.0 VideoCore IV
Memory \(SDRAM\) 512M DDR3(shared with GPU) 512 MB DDR2
Onboard Storage TF card \(Max. 64GB\) TF card \(Max. 64GB\)
Onboard Network NOPE NOPE
Onboard WIFI SDIO AP6212(option AP6181、AP6335)Bluetooth 4.0 (AP6212) 802.11n wireless, Bluetooth 4.1
Video decoding 1080p@60fps,H.264 Video encoding 1080p@30fps,H.264 1080p30 H.264/MPEG-4 AVC high-profile decoder and encoder
Video input A CSI input connector Camera CSI camera connector
Video Outputs mini HDMI 1.4,1080P@30fps, DHCP Mini HDMI and USB On-The-Go ports
Audio Output Mini HDMI Mini HDMI
Power Source Micro USB with 5V/2A 5V/2A
USB 2.0 Ports one USB 2.0 OTG one USB 2.0 OTG
Buttons Power Button, Reset Button Composite video and reset headers
Low-level peripherals 40 Pins Header,compatible with Raspberry Pi 3 40 PIN
uart GPIO\(1×3\) pin UART, ground UART
LED Power led & Status led Power Status LED
IR N/A N/A
Supported OS Android, Ubuntu, Debian, Rasberry Pi Image Linux
Product size 65mm × 30mm 65mm x 30mm
Weight 15g 9G

比較は、ここがわかりやすいですも。一部、Bluetooth がないなど情報の間違えはありますが。到着するまで、ここのWikiでも読んでますか。

こういう小さくて、手頃なやつを見つけるとつい買っちゃうんですよね。WiFi のAP6212も技適は AMPAK社 が通しているようで問題ないと思うんで、ポチってみました。

AP6212_V1.1_09022014

giteki_AP6212.png

また、これでゴミが1つ増えたかも。(笑)いや、これは壮大なる、汎用品で作る UMPC プロジェクトの始まりになるのかもしれません。たぶん、海外のかたでやっているかたがいるはず。

モバイルで使いたいのは、快適なテキスト入力と、常時data通信で、ssh 端末として使いたいんですよね。こんな限定的に使う人は、たぶんLinux エンジニアか、テキスト入力で原稿作りたい記者か、作家くらいのもんで、需要は一定数あると思うんですが、日本のメーカーはこの分野はもうからないと撤退したようです。

ないなら、作れです。いつどこでも、メンテナンスできて、ブログのネタも快適にテキスト入力できる端末っていうのがあると嬉しいんです。多少大きくてもキーボードはフルピッチのキーがほしい。横幅26cm あってもいいんでそういう端末がほしいんですよね。昔、Libretto って端末があったんですが結局買えず仕舞いでした。

じゃ、普通のうっすいノートPCでいいじゃんとはならないんです。キーボードが打ちにくいんですよね。できればメカニカルなやつで、ファンクションキーがないタイプ。

Raspberry Pi Zero セットアップ1

ちょこっと時間が出来たので、Raspberry Pi Zeroをセットアップ。
セットアップは大きく2つ方法があります。

(1)USBを母艦に繋げてSDカードに展開しセットアップする方法
>WiFi設定など入れれるのでモニタなしでも可能
(2)SDカードにimg を展開。hdmi モニタやキーボード使って、boot する
>モニタやキーボードなど繋げる必要あり

とりあえず、HDMI出力もされるか確認したかったので(2)の方法でやることに。
SDカードに書き込むのは、コマンドライン、ツールを使う方法がありますが、マカーなのでGUIツールのEtcherを使って書き込み。

.
├── 2018-10-09-raspbian-stretch-lite.zip
└── 2018-10-09-raspbian-stretch.zip

GUIがない、lite ってやつから遊んでみることにします。
Etcher_–_7__Flashing.png

ツールを使うとdisk を間違えなくていいですね。書き込むと、fatの boot領域とlinux の領域が最低限で作られます。

$ diskutil list | grep -A5 external
/dev/disk2 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *16.0 GB disk2
1: Windows_FAT_32 boot 45.9 MB disk2s1
2: Linux 1.8 GB disk2s2

電源のUSB は外側です。内側のUSBは母艦に繋げてUSB 接続し、SDカードをマウントできるようです。次回試して見ましょう。

S20181116_001.jpg

ここで、キーボードがMicroUSB なんで繋げない事に気がついた・・・・OTGケーブルを調達することに。

amazonusb.png

microUSB を分解して繋げればいいんですが、ま1つくらいあってもいいかと変換ケーブルを発注。時間もなくなってきたようなんで、また土日にセットアップすることに。

とりあえず、HDMI出力し無事bootしたのを確認したところまで。

一応、Fedora も入れてみたかったのでimg を用意しておきました。

.
├── Fedora-LXDE-armhfp-29-1.2-sda.raw.xz
├── Fedora-Server-armhfp-29-1.2-sda.raw.xz
├── Fedora-Workstation-armhfp-29-1.2-sda.raw.xz
└── Fedora-Xfce-armhfp-29-1.2-sda.raw.xz

kernel モジュールなど、どのくらいFedoraで動くかなど、あれこれ、検討してみたいと思います。