Google Voice Kit をオートスタートさせる

Google Voice Kit も日本での発売から3ヶ月余り経ってようやく日本語化も簡単に出来るようになりました。

ボタンのLEDも光り、起動音も設定し、次は自動起動

ボタンのLEDは標準で光り、起動音を追加したので、次は電源を入れたら自動でVoice Kit が起動するようにしたいですね。

/home/pi/AIY-projects-python フォルダ内にある「HACKING.md」に自動起動について書かれています。

内容を大まかに書くと以下のようです、赤字は使用するデモプログラムにする。

  • /home/pi/AIY-projects-python/src/examples/voice/assistant_library_with_button_demo.py をコピーし
  • /home/pi/AIY-projects-python/src/にmain.py とリネームして置く
  • ターミナル画面で sudo systemctl enable voice-recognizer.service を実行する。

でも、これでは自動起動出来ませんでした、「voice-recognizer.service」の内容が最新のイメージファイルに対応していないようです。

voice-recognizer.service の中身を自動起動出来るように変更する

自動起動出来るように「voice-recognizer.service」の中身を書き換えます。

# This service can be used to run your code automatically on startup. Look in
# HACKING.md for instructions on creating main.py and enabling it.

[Unit]
Description=voice recognizer
After=network.target ntpdate.service

[Service]
Environment=PATH=/home/pi/AIY-projects-python/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ExecStart=/usr/bin/python3 -u src/main.py
WorkingDirectory=/home/pi/AIY-projects-python
StandardOutput=inherit
StandardError=inherit
Restart=always
User=pi

[Install]
WantedBy=multi-user.target

やり方としては、エディタに上記内容をコピーして「voice-recognizer.service」として保存します。
このファイルの場所が /home/pi/voice-recognizer.service とすると。

sudo mv /home/pi/voice-recognizer.service /lib/systemd/system/

として移動します、移動先に同じファイルがありますので上書きになります。
移動できたら再度以下のコマンドを実行し再起動するとVoice Kit が自動で立ち上がるはずです。

sudo systemctl enable voice-recognizer.service
sudo reboot

以上で自動起動設定は完了です。

また、自動起動を停める場合は以下のコマンドを実行して下さい。

sudo systemctl disable voice-recognizer.service

18/08/09 追記

Voice kit の最新版イメージファイルが8月3日付けでアップされています。

オートスタート方法に付いては以前のように HACKING.md に記載されておりませんし voice-recognizer.service ファイルも所定の場所から削除されています。

しかし、上記の方法で /lib/systemd/system/ に voice-recognizer.service ファイルを置けば問題なくオートスタート出来ます。

参 考

Can’t install as a service on official image #295

24 Replies to “Google Voice Kit をオートスタートさせる”

  1. いつも参考にさせて頂いております。
    Google Voice Kit オートスタート
     何とかたどり着けました。
    Google Voice Kit 購入しても、英語で何を問えば良いのか?
    質問の表現から悩んでいたのが・・・・・
    嘘のようです。
    有難うございました。

    1. Mehikariさんこんにちは

      オートスタート出来たようですね。
      私もVoice Kitを手に入れて、起動したとき英語しか喋らなかったのには愕然としました(^_^;)。

  2. だいちゃんさん、オートスタートも上手く行きました。ファイルの置き場を間違えて少しハマりましたが、、
    ありがとうございました。

  3. 初めまして、ソーセイジと申します。
    クレウエタンさんのブログからきました。
    ここを参考にオートスタートさせることに成功しました。若干不安定ではありますが…
    私はローカルコマンドの使えるデモファイルを使い、リブート、シャットダウンも
    声で出来るようにしたので、完全に単体で使えるようになりました。有難うございます。

    1. ソーセイジさんこんにちは、コメントありがとうございます。

      こちらもローカルコマンドで、リブート・シャットダウンすることは出来るのですが、応答音声がデカすぎではないですか?
      open-jtalk で日本語応答させていますが音量を下げるのが課題です、何か良い方法はありませんかね。

      1. そうですよね、いきなり違う音質の声でびっくりです。でも、解決策は?
        個人的にはしょっちゅうリブートもシャットダウンもしないので、このままでもいいかと思っています。それにリブートする時って多分自作プログラムを確認するときぐらいだと思うので、それは端末から操作するだろうし、いいかなと思います。

        1. こんばんは

          そうですね、一瞬の事ですから我慢できないこともないですが
          とりあえず起動音だけでやってます、この問題はあちこちで上がっているようですので、そのうち解決策も出てくるでしょう。

  4. こんにちは、最近リブートもシャットダウンも英語の大きな声がしなくなり無音状態です。
    何故かわかりませんが、この状態が続くのであれば、起動音のように違う音を再生させてもいいかなぁと思います。

    1. こんにちは

      このところVoice Kit から離れていたので気づきませんでしたが応答音声が無音ですか?

      久しぶりにVoice Kitの電源を入れ確認しましたが、応答しています。
      Open J-Talk で日本語にしているからかもしれません、声は相変わらず大きいですが。(^_^)

      次期のイメージアップデートで、ボリュームコントロールが出来るようにしたいとVoice Kitメンバーがコメントしておりました。
      何時になるのか分かりませんが期待したいと思います。

  5. GWに入りやっとじこじこ触れる時間になり
    Google Voice Kit オートスタート出来るようになりました。
    ありがとうございます。

    以下、別件です。ご存じでしたら申し訳ありません。
    assistant_library_with_button_demo.py の def _process_event(self, event) の
    event 種類を資料読んでたら EventType.ON_RECOGNIZING_SPEECH_FINISHED と言うのがあり
    event.args もあると。おおw

    elif event.type == EventType.ON_RECOGNIZING_SPEECH_FINISHED and event.args:
    self._strSpeech = event.args[‘text’]

    て入れて、その後
    if self._strSpeech.Find(“ほげほげ”) > 0:
    でボイス→テキスト化→コマンド実行に繋げられる事がわかりました\(^_^)/

    1. ほげほげ0907さん おはようございます
      コメントありがとうございます、voice→text化⇒command実行に繋げられる件、貴重な情報ありがとうございます。
      早速やってみたいと思います。

      voice kit の新しいイメージファイルが本家にアップデート(4/13)されていますがこのファイルで試されましたか?
      この最新イメージをインストールしてみましたが、ボタンでは応答しますがOK_Google には応答しませんでした、私だけかな?

      1. 本家 aiyprojects-2018-04-13.img.xz を使用してます。
        特に支障なく「おーけー、ぐーぐる」で応答開始しています。
        日本語応答も問題なしです。

        ボイスコマンド「プロセス終了」→voice-recognizer.service 停止
        ボイスコマンド「システム再起動」→/sbin/shutdown -r now
        ボイスコマンド「システムシャットダウン」→/sbin/shutdown -h now
        ボイスコマンド「ボタン無効」→Google Voice Kit ボタン無効化 & LED PWM 点灯制御停止
        ボイスコマンド「ボタン有効」→Google Voice Kit ボタン有効化 & LED PWM 点灯制御開始
        等々出来るようになって来ました。

        応答は「わかりません」「もっと勉強して改善します」「お役に立てそうにありません」等々ですが
        ボイスコマンド「システムシャットダウン」には気分で「わかりました。会話をとめます。」と
        来るときありますw

        1. こんにちは

          最新イメージで問題なく使用できているようですね。
          ボイスコマンドいろいろ試されているようで頑張って下さい、また良い情報がありましたらお知らせ下さい。

          バックアップしておいた前のイメージに戻しましたが、再度ダウンロードしてインストールしてみます。

  6. メールにて、起動音及び自動起動の案内を頂きましたので、試してみました。
    記事の中で、起動音が最大でビックリと在りましたが、私の場合起動音の大きさは
    応答音声の70%位で鳴っております。
    Linux用audacityはインストールしましたが、編集は行っていません。
    原因は分かりませんでした。
    尚、自動起動もうまく行きました。有難うございました。

    1. shinwaさん こんばんは

      アップした起動音のファイルは予めこちらで音量を下げたものです、ですからそのまま使えます。
      オートスタートもできたようですね、コメントありがとうございました。

  7. 私の環境では、自動起動して、ボタンやLEDは機能するものの、マイクとスピーカは機能せず、/usr/bin/python3 /home/pi/AIY-projects-python/src/main.pyを行なうと正常に実行するような感じでした。
    以下のサイトを参考にして
    https://github.com/google/aiyprojects-raspbian/issues/295
    [Service]セクションに
    Environment=DISPLAY=:0
    を追加したら、自動起動で正常に動作するようになりました。
    画面無しでSSHだからかもしれません。

    1. canさんこんにちは

      貴重なコメントありがとうございます。
      同じような事象の方には参考になりますね。

      私の場合はVNCでVoice Kitと接続していますが問題なく動作しています
      SSHでは動作確認しておりませんでした。

  8. OSイメージが8月3日にUPDATEされており、フォーマットしてやり直してみました。
    自動起動にするため、voice-recognizer.serviceを書き換えようとしたことろ、voice-recognizer.serviceが存在しませんでした。
    ここから分からない状態です。教えていただけると嬉しいです。よろしくお願いします。

    1. hiraさん こんにちはコメントありがとうございます。

      voice kit の新しいイメージが出たんですね、気が付きませんでした。
      そんなわけでまだ新しいイメージでの動作確認はしておりません。

      ちょっと所用がありましてすぐには試せませんが動作確認してみます。
      ボリュームコントロールが効かなかったのが新しいイメージで改善されていれば良いのですが。

      暫くお待ち下さい。

      1. hiraさんおはようございます

        Voice Kit の最新版(8/3)をインストールしてみました。
        この記事に追記として入れましたが、 /lib/systemd/system/ に voice-recognizer.service ファイルを置けば問題なくオートスタート出来ました。

        特に変更する箇所はありません、お試し下さい。

  9. 8月8日 以降忙しくてさわってませんでした。
    お忙しいところ申し訳ありません。
    voice-recognizer.service ファイルをnanoコマンドでコピーして作成しました。
    しかし、enable , reboot 後 ボタンはゆっくり点滅していますが、”OK Google”やボタンを押して質問しても応答がありません。
    ターミナルからデモプログラムを実行すると正常に動作しています。
    何がダメなのか手がかりがありません。よろしくお願いいたします。

    1. hiraさんこんにちは

      voice kit のボタンは点灯しても応答が無いようですね、hiraさんはモニターとキーボードを使用して設定をしているのか、VNCまたはSSHにてPCから操作しているのか分かりませんが。

      私の場合、モニターにキーボードまたはVNCでラズパイに接続しています、私の環境での場合ですが、hiraさんと同じ症状も起きています、その場合再起動しボタンの点滅が始まってから暫く時間をおいた後、ボタンを押すなり、ホットワードを言えば応答しました。

      SSHでラズパイに接続している場合は、canさんのコメントにもあるように、以下の記事を参考に設定してみて下さい、私の場合この方法では自動起動しませんでした。

      https://github.com/google/aiyprojects-raspbian/issues/295

      お試し下さい。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です