follow me

Codama ウェイク・アップ・ワードを試す。


音を聞かないと何もワカラナイ動画ですみません。
"Hello Underworld"でピロピロ鳴るだけです。

ウェイク・アップ・ワード(トリガーワード)が自由につけれると云われたらやりたくなりますよね?
"Hello Underworld" とか "ルルーシュ・ヴィ・ブリタニアが命じる" とかを試したくなりますよね?
それができるんです。


Codama (こだま) 発売になりました。
Raspberry Piに挿して使用する音声対話開発キット な訳ですが、AIスピーカーっぽいのを作るキットと云われています。
何が出来るかは、Codamaのサイトをみつつ、搭載されているDSP XMOS XVF3100を見ていただくのが良いでしょう。

ビームフォーミング、ノイズキャンセル、エコーキャンセルは、搭載しているのが当たり前になってきているので、性能差がどうかという事が数字で各社競い合っている訳ですが、各社DSPの表を見ると良い感じに自分のところが良い数字を目立つようにしてる訳でして。。。
ウェイク・アップ・ワード(トリガーワード)をユーザが自由に設定できる点がCodamaの売りなんですよね。
この手の評価キット買っても "Alexa" や他の幾つかのワードでしかウェイク・アップ・ワード(トリガーワード)を試せないのが多かったり、LinuxやAndroidが動いたメインSoCでソフトウェア処理でぶん回して実現したりがほとんど。
ソフトウェアで実現するものでは、Snowboy Hotword Detection KITT.AI等が存在しています。
ソフトウェアの場合、自由度は高いのでプログラムで頑張りたい人には向いているかもしれません。
しかし、リアルタイム性は個人的には鈍いと感じています。(XMOSでSensory社のTrulyHandsfree™キーワード・トリガー・テクノロジーを動かした際の反応を体験してしまうと)

Codamaでは、ウェイク・アップ・ワード(トリガーワード)の処理は、XMOS XVF3100で処理する訳ですが、自由に設定できるといっているのは、ウェイク・アップ・ワード(トリガーワード)を埋め込んだファームウェアを生成するWebサイトが提供されているからです。
codama ウェイク・アップ・ワード作成ツール
PCのマイク、またはCodamaのマイクを利用して録音した音声を元にファームウェアを生成します。
このWebサイトで生成されたファームウェアを書き込むことで、自分の使いたいウェイク・アップ・ワード(トリガーワード)が使えるようになります。
部屋の状態、録音に使用したマイク特性にも影響するので、PCのマイクや、イヤホンマイクや、Codamaのマイク等、複数マイクで試したり、部屋を変えてみたりすると認識精度も変化したりします。
うまくいかないときは、環境を少し変えてみると改善したりするのであきらめずに試してみるのが良いかも知れません。
Raspbianであればブラウザは、Chromiumで動作します。(他のブラウザでは、オーディオデバイスにアクセスできない等もあるので注意が必要です。)


僕に連休が何時来るのか解りませんが、連休に遊んでみてはいかがでしょうか?
Codamaのgithubのセットアップが完了していれば、動画程度のことは数分で実現できてしまいます。
適当にウェイク・アップ・ワード(トリガーワード)検出時に再生するwavファイルを配置して、以下の様なスクリプトで動いてしまいます。
#!/bin/sh

if [ ! -f /sys/class/gpio/gpio27/value ]; then
  echo 27 > /sys/class/gpio/export
fi

TRGWORD=0
while true
do
  if [ "`cat /sys/class/gpio/gpio27/value`" = 1 ] ; then
    if [ $TRGWORD = 0 ] ; then
      aplay -c1 -r16000 -fS16_LE part5.wav &
      TRGWORD=1
    fi
  else
    if [ $TRGWORD = 1 ] ; then
      TRGWORD=0
    fi
  fi
  sleep 0.2
done
follow me

アキバぶら歩き(2018/12/15)

毎週の様にぶらぶらしなくなった街、秋葉原。
たまにぶらぶらするようになった街、アキバ。
2018/12/15(土)、ぶらぶらした戦利品記録です。

青春ブタ野郎。

follow me

アキバぶら歩き(2018/12/08)

毎週の様にぶらぶらしなくなった街、秋葉原。
たまにぶらぶらするようになった街、アキバ。
2018/12/08(土)、ぶらぶらした戦利品記録です。

テクノハウス東映
前回128GBを逃したのだが、また出てきたのを購入。
どんどん入荷してくるから、急がなくてもよさげな感じが出てきてしまった。

follow me

Raspberry Pi Industry User Conference 2018 見てきた

Raspberry Pi Industry User Conference 2018に行ってきました。
前日のASUS Tinker Board User Conference 2018も行ってたりしましたが、そっちは基本撮影不可が多かったので、Raspberry Pi側だけ。


Raspberry Piの産業利用、確かに仕事でも使う事が増えているのだけれど、意外な処でも使われてて驚き。
確かにuSDと電源さえ注意すれば使えないことは無い。
交換してしまって惜しくない価格というのは破壊力がありますね。
貴重な話を聞けた気がします。
産業利用されてるされてると云われていても、具体的にどこに入ってるんだ?どんな風に使われてるんだ?がなかなか見えないので。
follow me

アキバぶら歩き(2018/11/25)

毎週の様にぶらぶらしなくなった街、秋葉原。
たまにぶらぶらするようになった街、アキバ。
2018/11/25(日)、ぶらぶらした戦利品記録です。

テクノハウス東映
128GBは売り切れてたので64GBで我慢した。
32GBはARM板確認用に数枚入手。A1だから速くなることを期待した訳だが、予想以上に快適だった。
たんなるclass10に戻ることはできなさそうだ。
follow me

アキバぶら歩き(2018/11/17)

毎週の様にぶらぶらしなくなった街、秋葉原。
たまにぶらぶらするようになった街、アキバ。
2018/11/17(土)、ぶらぶらした戦利品記録です。

オリオスペック
あまり秋葉原に行かないので、久々にカレンダー入手しました。
もうクリスマスシーズンですか。

follow me

OSC2018 Tokyo/Fall 参加してきましたよっと

10/27(土)-28(日)にOSC2018 Tokyo/Fall 参加してきましたよっと。

参加者数を見ると落ち着いた感ですね。
「とらのあな」とか登場するとかOSCも変わったなぁ。
最近惰性で生きてる感が強くなっていたので、展示参加してきました。
あれでよかったのかはワカランがとりあえず、OpenWrt始めた人も居る様なので良しとしましょう。(次は沼に引き込みますかね。)

1日目展示風景。

ごくごく一般的なOSCの風景だったと思ってます。
follow me

アキバぶら歩き(2018/10/06)

毎週の様にぶらぶらしなくなった街、秋葉原。
たまにぶらぶらするようになった街、アキバ。
2018/10/06(土)、ぶらぶらした戦利品記録です。

つくもたん 12号店
12号店だけなんの店かわからない店になってますが、つくもたんです。
しかしつくもたん貰えません。
SDとかSIMとかスマートカードとかもろもろのリーダーを買って終了。
何気に使えそう。

follow me

open-vm-toolsをOpenWrtで使う

ESXiでOpenWrtを使うケースはあると思います。
その際に悲しい思いをした人は多いに違いない。
vmtoolsが無い。というか、glibcではなくmuslがデフォルトのOpenWrtではvmtoolsを入れるのは難しい。(というか入るのか怪しい。
なので、open-vm-toolsパッケージ作りました。
野良パッケージなので、ビルドしてください。
muslで動きますので、パッケージさえビルドすればOpenWrt本家でダウンロードできるイメージにも入ります。
https://github.com/srchack/custom-packages/tree/master/open-vm-tools


ESXi 6.7で動作確認しました。
ネットワーク情報は取れてます。シャットダウン/再起動系も機能しています。
正常に動いているかテストを全パターン試しておきたいが何か方法ないものか。。。
まぁ、OSシャットダウンが一番やりたかったことなので個人的目的は達成してはいるのですが。


ビルドするのが面倒な人用にパッケージ置いときました。
r7332-2163b49でビルドされています。
18.06環境であれば動くでしょう。(依存関係弱いので
open-vm-tools_10.3.0-1_i386_pentium.ipk
open-vm-tools_10.3.0-1_i386_pentium4.ipk
open-vm-tools_10.3.0-1_x86_64.ipk


open-vm-toolsのOpenWrtでのビルドについて、
open-vm-toolsのビルドオプションは、Makefileを見ていただくとおり、ほとんど無効化されています。
ライブラリ依存だったり、デフォルトでOpenWrtには入っていない機能に依存しているものは落としています。
filesディレクトリ以下は、起動スクリプトと設定ファイルです。shutdownはOpenWrtに足りないのでダミーです。
patches以下は、musl対応になります。(なんでlibc判別のための"__MUSL__"って存在しないんですかね?と愚痴ってみる)
musl対応系は、途中まで書きつつOpenEmbedded向けのパッチを見つけたので、ほぼそっちのパッチを調整しただけです。
follow me

PQI Air Penのath79対応

以前、OpenWrtに対応させたのですが、ar71xxはath79に移行される事になったので、どこかで書き直さないといけないわけですがサボってました。
ar71xxは、今のkernelバージョンで終了の様子なので、ath79移行は今後OpenWrtで使えるようにするには必要なことになります。
とりあえず少し古いけど、手元の開発環境でパッチを書いてみた。
r7995-967d646_ath79_pqi-air-pen.patch


ath79対応してみたものの、恩恵を受けないですね。ar9330では正直あまりメリット無いですね。
Kernelでかくなってしまったし、Flash小さいからますますメリット無いですね。


起動ログ貼り付けておきますね。
とりあえず動作問題なさそうなので、最新にパッチ作って送りますかね。