ReSpeaker Core v2を試してみる【前編】

https://statics3.seeedstudio.com/seeed/file/2018-03/bazaar764738_img_5997a.JPG

ReSpeaker Core v2を使わせて頂く機会がありましたので体験記をメモ。SeeedさんのReSpeakerシリーズといえば…

uepon.hatenadiary.com

という辛い思い出もあったので、今回はどうなっているのか。かなり気になるところです。(まあ名前にv2とついているので実は安心していたりします。)

今回使用するデバイス

ReSpeaker Core V2.0 - Speech Recognition - Seeed Studio

wiki.seeedstudio.com

となります。スイッチサイエンスさんでも販売しているので問題ありません!(何が?)

www.switch-science.com

ドキュメントを見ながら設定をしてみる

このデバイスのスペックに関してはSeeedさんのページを見てもらえればいいかなと思いますが代表的なスペックとしては

  • OS DebianAndroidのサポート
  • CPU Quad-Core Cortex-A7,up to 1.5GHz(Rockchip RK3229)
  • GPU Mali400MP, Support OpenGL ES1.1/2.0(現状ではすべての機能が使用できるわけでは無いらしい)
  • Memory 1GB RAM
  • Grove I2C(DigitaL)Socket x 1
  • Audio 6 Microphone Array、3.5mm Audio Jack
  • Networks WiFi b/g/n; BLE 4.0; Ethernet
  • Others 12 x RGB LEDs、8 GPIO pins

こんなところかなと。前回使用していたReSpeaker 4-Mic Array for Raspberry PiはRaspberryPiに接続するのが前提のHATなデバイスでしたが、今回のデバイスはデバイス そのものにOSをインストールする形です。オンボードFlashにOSをインストールすることもできますし、MicroSDカードにOSを入れることもできます。

ピンアサインなどは以下を参照してください。(というかこのページだけでも完結しそうな気もします)

wiki.seeedstudio.com

Githubのドキュメントページへ

基本的には以下のドキュメントページの順におっていけばいい感じでした。

github.com

microSDカードにOSイメージを焼き込む

まずはインストールするOSのイメージをダウンロードし、SDカードに書き込みます。公開されているOSイメージは【iot / lxqt】と【flasher / sd】組み合わせた種類があります。

  • iot … GUIなし
  • lxqt … GUIあり

  • flasher … オンボードFlashへインストールするタイプ

  • sd … SDカードにOSイメージを配置するタイプ

これらの組み合わせを考えることになりますが、公式ページではlxqtsdの組み合わせのイメージがおすすめされていました。

以下のサイトから該当するイメージをダウンロードします。

https://ibschoolnz-my.sharepoint.com/personal/baozhu_zuo_vace_co/Documents/Forms/All.aspx?slrid=5ff38e9e-60ad-0000-1073-70d262a67058&RootFolder=%2Fpersonal%2Fbaozhu_zuo_vace_co%2FDocuments%2Frespeaker&FolderCTID=0x0120009E00B7C13B0C174BA0DB998ABD011E0F

URLにアクセスするとOneDriveのファイル共有ページへ移動します。

f:id:ueponx:20180915204253p:plain

このなかから新しい日付のフォルダを選択して(このエントリー現在は20180801が最新なのでそれを選択)

f:id:ueponx:20180915204437p:plain

f:id:ueponx:20180915204844p:plain

今回はこちらのイメージファイルをダウンロードして使用します → respeaker-debian-9-test-lxqt-sd-20180801-4gb.img.xz

Etcherでイメージを焼き込みましょう。(Win32DiskImagerでも大丈夫だと思います)

f:id:ueponx:20180921062645p:plain

Etcherを起動して…

f:id:ueponx:20180921062810p:plain

イメージファイルと書き込み先のSDカードを指定すればOKです!【Flash!】ボタンをクリックします。

f:id:ueponx:20180922125917p:plain

すると、書き込みがスタートします。

f:id:ueponx:20180922130258p:plain

完了すると以下のような画面になるのでそれそ本体のmicroSDカードのコネクタに挿します。SDカード挿す向きには注意してください。

f:id:ueponx:20180922131154p:plain

この向きで挿入します。

f:id:ueponx:20180923111756j:plain

ReSpeakerを起動する

micoroSDを挿入したら電源を入れます。microUSBUSBケーブルはOTGと書かれてる方に挿します。隣にPWR_INと書かれたのmicroUSBコネクタに挿しても電源供給は行われますが、WiFiの設定を行うためにはまずはシリアル接続可能なOTG側で接続してください。

https://github.com/respeaker/get_started_with_respeaker/raw/master/img/hardware.jpg

microSDとmicroUSBを挿して起動を行い、USER1のLEDが安定して点滅をすると接続可能になります。ターミナルソフト(Teratermなど)でシリアル接続を行います。 Windows10、MacLinuxでは特にドライバをインストールする必要はありませんが、Windows7などではドライバが必要になります。以下からドライバをダウンロードしてインストールを行ってください。以下はインストールが終わったところからの作業になります。

github.com

Teratermを起動したら、新規接続のダイアログから【Serial】のラジオボタンを選択し、接続してから現れたシリアルデバイスをプルダウンから選択して【OK】ボタンをクリックします。

f:id:ueponx:20180922140606p:plain

【OK】ボタンをクリックするとダイアログは消えますが、ウインドウには何も表示されません。

f:id:ueponx:20180922140839p:plain

ここでリターンキーなどを押すとログインできるようになります。

f:id:ueponx:20180922141355p:plain

デフォルトのログインのユーザネームとパスワードはともにrespeakerなのでそれでログインを行います。

f:id:ueponx:20180922142553p:plain

無事にログインできました。

WiFiの設定

では、WiFiの接続設定を行います。以下のコマンドを入力します。 sudの権限で実行するので、パスワード(respeaker)を入力します。

respeaker@v2:~$ sudo nmtui

【パスワード入力待ちの画面】 f:id:ueponx:20180922143846p:plain

すると以下のような画面になります。

f:id:ueponx:20180922145623p:plain

このメニュー上で【Activate a connection】を選択して、Enterキーを押します。

f:id:ueponx:20180922145828p:plain

すると、WiFiのアクセスポイント名が一覧になってみえるので、接続するアクセスポイントを選択し、パスワードを入力します。

f:id:ueponx:20180922150122p:plain

パスワードを入力すると接続が行われます。選択したアクセスポイントの左側に【*】が付きます。Tabキーでメニューの【Back】までカーソルを持ってきてEnterキーを押します。

f:id:ueponx:20180922150607p:plain

メインメニューに戻ったら【Quit】を選択して設定ツールを終了します。

f:id:ueponx:20180922152139p:plain

では、IPアドレスが取得できているか確認しましょう。以下のコマンドでIPアドレスを確認します。

respeaker@v2:~$ ip a

すると、成功していれば以下のような表示がされます。インターフェースのwlan0にアドレスが設定されていれば大丈夫です。

f:id:ueponx:20180922153606p:plain

これでWiFiの設定は完了です。

IP経由での接続設定

sshでの接続

先程調べたIPアドレスssh接続をしてみます。先程は【Serial】でしたが今回は【TCP/IP】にラジオボタンを設定し、確認したIPアドレスを入力して【OK】ボタンをクリックします。

f:id:ueponx:20180922155207p:plain

ユーザIDとパスワードを入力してログインをします。【OK】ボタンをクリック。

f:id:ueponx:20180922160348p:plain

無事にログインができました!

f:id:ueponx:20180922160736p:plain

VNCでの接続

使用したOSのイメージがlxqtのものを使用していればXも設定されています。VNCで接続すればそのままで画面接続ができます。 VNCのクライアントがすでにインストールされていれば、そちらを使用してもらえればいいのですが、もし入れていないようであれば Chrome拡張のVNCViewerをしようしても問題はありません。Chrome拡張を以下のリンクからインストールしてアプリを起動してください。

[https://chrome.google.com/webstore/detail/vnc%C2%AE-viewer-for-google-ch/iabmpiboiopbgfabjmgeedhcmjenhbla?hl=en:embed: cite]

f:id:ueponx:20180922161303p:plain

起動すると以下のようなダイアログ表示されるのでIPアドレスを設定して【Connect】ボタンをクリックします。

f:id:ueponx:20180922162257p:plain

接続中に通信が暗号化されていない旨のメッセージが表示されますが、今回はこのまま進めていきます。【Connect】ボタンを再度クリックします。

f:id:ueponx:20180922162411p:plain

パスワードを入力して【OK】ボタンをクリックします。

f:id:ueponx:20180922162525p:plain

無事に接続ができました。

f:id:ueponx:20180922162628p:plain

特にX Windowをつかわなければならないと言うわけではないのですが、AVS(Alexa Voice Service) などの認証にGUIが必要になることもあるので、GUIはあると便利だと思います。

蛇足

VNCはインストールしたくないなあということもあったので、xrdpをインストールすることでWindowsデフォルトのリモートデスクトップ接続でもGUI接続可能じゃないかと思いました。ということでxrdpをインストールしてみます。以下のコマンドでOKなはずなのですが…

respeaker@v2:~$ sudo apt update
respeaker@v2:~$ sudo apt install xrdp
respeaker@v2:~$ sudo systemctl start xrdp
respeaker@v2:~$ sudo systemctl enable xrdp

実際に接続するとX側から以下のようなエラーメッセージがでて接続ができません。

f:id:ueponx:20180923073023p:plain

RaspberryPiではこのままでいけるのですが…デフォルトでインストールされているパッケージが違うようで、 パッケージがもう一つ必要のようでした。そのパッケージはvnc4server以下のコマンドでインストールします。

respeaker@v2:~$ sudo apt install vnc4server

リモートデスクトップ接続を行って、ReSpeakerのIPアドレスを入力し、【接続】ボタンをクリックします。

f:id:ueponx:20180923080327p:plain

以下のようなダイアログがでるかもですが、【はい】ボタンをクリックします。

f:id:ueponx:20180923080352p:plain

VNC側の接続画面が表示されます。

f:id:ueponx:20180923080452p:plain

【Session】のプルダウンをXvncに設定を変更してユーザーIDととパスワードを入力して【OK】ボタンをクリックします。

f:id:ueponx:20180923080602p:plain

リモートデスクトップ接続に成功しました!けど?あれ?

f:id:ueponx:20180923080847p:plain

壁紙がなくなっちゃいまいしたが、まあブラウザもコンソールも動いているのでこれもありかなと思います。(ちなみにVNCViewerでの接続でも壁紙がなくなってしまいましたw)

f:id:ueponx:20180923082453p:plain

残りは後半へ

設定に関しては、問題なく終わりましたというかIPの設定ぐらいしかしていません。ただ、OSのイメージとハードウエアが一対一で用意されているので セットアップでそのまま行けるのは結構便利ですよね。今後やAVSやSnowboyなどの実験などを行ってみたいと思います。

/* -----codeの行番号----- */