pi@raspberry:~ $ cd ./AIY-voice-kit-python pi@raspberry:~/AIY-voice-kit-python $ source env/bin/activate (env) pi@raspberry:~/AIY-voice-kit-python $ src/assistant_library_demo.py Say "OK, Google" then speak, or press Ctrl+C to quit...
c:\> ssh pi@raspberrypi.local The authenticity of host 'raspberrypi.local (fd91::3f13:2b1:fa24:XXXX)' can't be established. ECDSA key fingerprint is SHA256:HDYEUoWS6x4RsD63mQgqbEdFsvnKyPBhT4forJCXXXX. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'raspberrypi.local,fd91::3f13:2b1:fa24:XXXX' (ECDSA) to the list of known hosts. pi@raspberrypi.local's password: [raspberry]
The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Build info: Tue Sep 12 00:36:20 UTC 2017 @ 3955cac Last login: Mon Mar 19 14:40:39 2018 from 10.1.0.105
SSH is enabled and the default password for the 'pi' user has not been changed. This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.
OS の バージョンなどを確認すると、Raspbian 8、Debian Jessie ベース であることが分かります.
pi@raspberrypi:~ $ ls -l /home/pi/Desktop/ 合計 16 -rw-r--r-- 1 pi pi 214 9月 12 09:36 check_audio.desktop -rw-r--r-- 1 pi pi 194 9月 12 09:36 check_cloud.desktop -rw-r--r-- 1 pi pi 179 9月 12 09:36 check_wifi.desktop -rw-r--r-- 1 pi pi 217 9月 12 05:50 dev_terminal.desktop
pi@raspberrypi:~ $ cat /home/pi/Desktop/check_audio.desktop [Desktop Entry] Encoding=UTF-8 Type=Application Name=Check audio Comment=Check that the voiceHAT audio input and output are both working. Exec=/home/pi/AIY-voice-kit-python/checkpoints/check_audio.py Terminal=true
Playing a test sound... Did you hear the test sound? (y/n) y
続いて、 When you're ready, press enter and say 'Testing, 1 2 3'... と 表示されるので、Enter キーを押してから “てすてぃんぐ わん、つー、すりー” って 話しかけます. いや、なんでも大丈夫ですが… マイクを正しく接続できていれば、話しかけ時間3秒ぐらいで、すぐにスピーカーから話した内容が再生されます. 正しく聞こえたら、 y を 入力して次へ進めます.
1 2 3 4
When you're ready, press enter and say 'Testing, 1 2 3'... Recording... Playing back recorded audio... Did you hear your own voice? (y/n) y
2回とも y でしたら、たぶん正しく動いているでしょうってことで、 Enter キー を 押下して終了します.
1 2
The audio seems to be working. Press Enter to close...
pi@raspberrypi:~ $ sudo nano /etc/apt/sources.list # deb http://mirrordirector.raspbian.org/raspbian/ jessie main contrib non-free rpi deb http://ftp.jaist.ac.jp/raspbian/ jessie main contrib non-free rpi
c:\> ssh-keygen -t ed25519 -C "" Generating public/private ed25519 key pair. Enter file in which to save the key (C:\Users\[username]/.ssh/id_ed25519): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in C:\Users\[username]/.ssh/id_ed25519. Your public key has been saved in C:\Users\[username]/.ssh/id_ed25519.pub. The key fingerprint is: SHA256:T69X1O58qiKv7Sp/aPJTI+PpzUdOZDO+EcD5ldc8ON8 The key's randomart image is: +--[ED25519 256]--+ | . . .o.| | + oo.+| | o .ooo| | B ..E| | S .+ = . | | ooo.= . .| | . *.=.+ o | | o B+o.= +| | B*OB+...XX| +----[SHA256]-----+
pi@raspberrypi:~ $ sudo umount /dev/mmcblk0p2 pi@raspberrypi:~ $ sudo tune2fs -O ^has_journal /dev/mmcblk0p2 tune2fs 1.43.3 (04-Sep-2016) The has_journal feature may only be cleared when the filesystem is unmounted or mounted read-only.
pi@raspberrypi:~ $ sudo reboot
NTP に 日本のサーバを設定
1 2 3 4 5 6 7 8 9 10 11
pi@raspberrypi:~ $ sudo nano /etc/ntp.conf #server 0.debian.pool.ntp.org iburst #server 1.debian.pool.ntp.org iburst #server 2.debian.pool.ntp.org iburst #server 3.debian.pool.ntp.org iburst server 0.jp.pool.ntp.org iburst server 1.jp.pool.ntp.org iburst server 2.jp.pool.ntp.org iburst server 3.jp.pool.ntp.org iburst
pi@raspberrypi:~ $ sudo systemctl restart ntp
CPU の 動作クロック設定
通常は問題ないですが、常にハイ・パフォーマンスで動作させたり、省エネで動かす場合に設定します. 下記は常にハイ・パフォーマンスの例です. 詳しくは こちら CPU の 動作クロック設定 を ご参照ください.
pi@raspberrypi:~ $ nano ~/.bashrc alias ls='ls --color=auto' alias ll='ls --color=auto --format=verbose' alias la='ls --color=auto --format=verbose --all' alias cp='cp --interactive' alias mv='mv --interactive' alias rm='rm --interactive' alias free='free -h' alias grep='grep --color=auto'
pi@raspberrypi:~ $ echo 0 | sudo tee /sys/class/leds/led0/brightness pi@raspberrypi:~ $ echo 0 | sudo tee /sys/class/leds/led1/brightness
pi@raspberrypi:~ $ echo "dtparam=act_led_trigger=none,act_led_activelow=on" | sudo tee -a /boot/config.txt pi@raspberrypi:~ $ echo "dtparam=pwr_led_trigger=none,pwr_led_activelow=on" | sudo tee -a /boot/config.txt
Google AIY Voice Kit の 説明書 P. 34 からの Chapter Four / Set up the software で “Burn the image to a microSD card using a program like Etcher(etcher.io) on a Mac, Windows, or Linux computer.” という文章がありました.
また Web の リファレンス では Get the Voice Kit SD Image - Assembly Guide に “Write the image to an SD card using a card writing utility (Etcher.io is a popular tool for this)” とあり、 popular tool for this と 気になる記述もあります.
Raspberry Pi 3 と 組み合わせることで、簡易的なスマート・スピーカーを作ることができるキットです. Google の 音声認識を使って指示をさせることができるものになります. ちょうど Google Home が 発売され、Amazon Echo の 招待予約も開始され、スマート・スピーカーが熱い中に、DIY で 作れるキットとなります. さすがに、掛け声で起動とまではいかずボタン押してから話しかけるようですが. とはいえ、この辺はラズパイだからカスタマイズできそうです.
外箱 と 内部の仕切り の 段ボールを組み立てます. ちょっと形が分かりにくいですが、こんな感じに収まります. ラズパイ3とスピーカーがちょうど収まります. この辺は説明書の写真 を よく見ながら作ります. 折り目や順番が書かれていたりしますが、内部の仕切りが難しかったです. 少し先に進んで Put it all together か、下記写真のような組み込み後を確認しながら作りました.
C4 Labs さん で ヒートシンク付きケースを購入した際に、ブレッドボード付きケースも購入しました. これを組み立て Lチカ(LED チカチカ) したいと思います. このケースは Raspberry Pi Zero と Zero W の どちらでも付けることができます. 今回はネットワークの取り回しが良くなる Raspberry Pi Zero W で 作ります.
作業環境
Raspberry Pi Zero W
Raspbian Jessie Lite
Raspberry Pi Zero に GPIO ピン を つける
さっそくケースの組み立てに入りたいところですが、Raspberry Pi Zero W は GPIO の ピンが立っていないモデルになります. GPIO の ピン が 無ければ、ブレッドボードがあっても使えないので、GPIO の ピンをつけます.