動かなくなって8年ぐらい?ずっと箱にしまわれていたどころか、そのまま2回も引っ越したうちのウサギロボットくん。こないだ突然「そーいえばプロジェクトどうなったんだろ?」と思いググったのがキッカケで勢いに任せて復活させました(笑)内部のハードがダメかとも思ったけど、生きてました。よかった!
Nabaztagとは
https://ja.wikipedia.org/wiki/Nabaztag
しゃべるウサギロボット。耳がうごく。鼻とお腹と底面が光る。可愛い!
Nabaztaglives
https://www.nabaztaglives.com/
販売元が次々倒産して接続先がなくなってしまい、全く動かなくなってしまったウサギを救出しようと立ち上げられたプロジェクト。元々の規模ではなく、言語や機能もすごく限定されてしまったけども今でもメンテナンスされているようで、私もこれでうちの子に息をしてもらおうとやってみました。記憶では倒産当時ぐらいにソースコードやサーバ構成などがオフィシャル公開されていた気がするけど、フランス語で手が出せず。しばらくしてこのプロジェクトのホスティングサービスを利用していたものの、いつの間にか終了・・・。で多分うちの子を箱にしまったのだと思われます。恐らくその後、このプロジェクトの中の方が更にソースコードの規模縮小して個人単位でホスティングできるように現在の形に整えたようですね・・・。なぜもっと早く見つけなかったんだ私は(笑)
Raspberry Piでホスティング設定
-
Raspberry Pi Zeroのセットアップ
キットを組み立てて起動 物理的に接続するものを接続して組み立て。ケースは後からでも良いけど後からにす ...
Raspberry Pi Zero良いよって書かれていたので鵜呑みにしてやってみました。Raspberry Piのセットアップ終了後、プロジェクトWikiに書かれているインストールコマンドを叩いたらOKなのですが、デフォルトのタイムゾーン設定にAsia/Tokyoがなく、時報機能すらマトモに使えない状態になってしまうので、
git cloneした後にinstallシェル実行する前にNabaztagLives/db/rabbit_pi.sqlの230行目ぐらいに下記を追記した状態でインストールコマンド実行してあげると、セットアップ時のUIで日本時間を設定できるので、時報機能が生きてきます!!
NabaztagLives/db/rabbit_pi.sql
insert into timeZone (name) values('Asia/Tokyo');
ついでに198行目ぐらいに下記も追加しておくと、セットアップ時のUIに日本語を設定できます。(こちらは設定しただけではダメで後々プログラム修正や音声ファイルの追加をしないと実際は日本語にはなりません。あくまでUIの選択肢を増やすだけ。)
NabaztagLives/db/rabbit_pi.sql
insert into language
(name
,description
)
select 'jp'
,'japanese-jp';
サーバにアクセスしてサーバ側の設定をする
サーバにアクセスすると、可愛らしい画面でお出迎え・・・。いよいよ、ウサギが蘇る時も近い!と思いきや時が経ちすぎて、ここからが長く大変だったので記載しておきます。
「Setup New Rabbit」で「Serial #」と「Rabbit's Name」を入れて「Save to Rabbit Hutch」を押せばサーバー設定は完了となり、あとはウサギを接続するだけなのですが、Rabbit's Nameが空だとエラーになります。あとSerial #はウサギ底面のMACアドレスになっていますが、アルファベットは全て小文字で入れましょう。ついでに「Time Zone」をAsia/Tokyoに「Language」をenglish-usにしておきましょう。(先ほどの設定でjapanese-jpを設定していても、実際はenglish-ukがデフォルトでuk扱いになります。)
ウサギをWi-Fiに繋いでサーバに接続する
ここからは、一応製品付属のマニュアルと同じです。がフランス語なんですよねマニュアルが(笑)もう覚えてないよ!!繋ぎ方のマニュアルは一応記載してあるページがあります。
ここでV1ウサギとV2ウサギで異なる様ですね・・・。私のウサギはV2なので、V2の手順を日本語で書きます。
- ウサギの頭のボタンを押しながら電源プラグを差し込む。すると全てのライトがオールブルーになるタイミングがあるのでオールブルーになったら頭のボタンを離す。
- Wi-Fiネットワークの一覧に「Nabaztag●●」が出てくるので、選択してウサギ本体のネットワークに接続する。(●●はSerialの下2桁)
- ブラウザで192.168.0.1にアクセスする。
- 「Click here to Start」をクリックする。
- Wi-Fiの設定を入力して、Advanced Settingsで一番下の方に「Violet platform:」の欄があるので、今回作ったサーバのIPアドレスを入力する。
- 「Update and Start」をクリックする。
- 少し待つとライトが全てオレンジに光り、これがオールグリーンになったら無事接続!!
まず手順1ですが、普通に電源プラグを差し込んでも一部白いランプだったり、なんか違う光り方して全然オールブルーになってくれませんでした。うちのウサギさんが壊れてて?特殊なのかわかりませんが、うちのは電源プラグをコンセントに半分繋いだタイミングでオールブルーになるようでした・・・。(コンセントに完全に差し込まずに電気が流れたか流れてないかみたいな、電気ちょい流しみたいな状態でオールブルーになる模様・・・)一部白いランプだったりする時はボタンを押す時間が長すぎたりするとなったりする様です。
次にWi-Fi設定なのですがものによってはルータ側でWi-Fiの設定を細かく編集しないと接続してくれないかもしれません・・・。接続状況については、お腹から鼻にかけて、オレンジのライトが順番に緑になっていくのですが、それぞれに意味があります。どこで問題が発生しているかの参考にしましょう。
1. ネットワークに接続した(左のライト)
2. IPアドレスを取得した(真ん中のライト)
3. ドメインを解決した(右のライト)
4. サーバが見つかった(鼻のライト)
オール緑になると耳をぐるぐる動かして復活し、底面のライトが呼吸しているように光り始めます。我が子が息を吹き返した瞬間はなんとも言えない感動が。
ひとまず、ドイツ語,スペイン語,イタリア語,英語(イギリス),英語(アメリカ)のどれかでなら喋るNabaztagの復活です。まずは一週間、この状態でホスティングしてみましたがエラー等なく安定していて、サーバの再起動なども不要でした。
ウサギの設定を変える
「Update a Rabbit」の画面で「Idle Behavior」と「Bottom LED Color」を設定しておくと、一定時間ごとに耳が動いたりライトの色が変化したりするので、いかにも生き返った感があります。
ウサギの起きる時間と寝る時間を設定しておけば、その間は音が出たり耳が動いたりしないようになっているので、タイムゾーンさえAsia/Tokyoになっていればスケジューリングも機能します。
時間はhourのみで切り捨てで喋りました。(23時55分でも23時と言う。)
天気は設定すると6種類ぐらいの大ざっぱ分類で喋ります。(風が強い日も雷雨と言う。)
トリガは「ボタン」「スケジューリング」「RFID」の3種が設定できて、RFID(nano:ztagおよびztamp:s)は鼻に一度当てると認識されて画面上に表示されるため、好きな設定を割り当てることができます。
ウサギの今後について
以上です・・・が、RSSとかTwitterとかSpeechとか基本機能が日本語で動かない&実はそのままだと気温の読み上げもされず、本当に毎時の時報と余りにも雑すぎる天気予報しか喋ってくれない悲しい子!!あんなに日本語ペラペラだったのに!
悔しいので、なんとかして日本語にならないか、あわよくば日本語音声を丸ごと当時のまま復活できないか、もはや執念と言わんばかりに調査しました!
こっからが長いので後日別記事で少しずつ記載していこうと思います!
先に結果だけ記述すると、日本語音声の追加&気温読み上げ復活までは出来たので、もうちょい頑張ればRSS,Twitter,Speechあたりも日本語復活できそう。一番痛いのは日本語音声がインターネットアーカイブまで探しても拾えず自前で作るしかないところ。TTSエンジンも当時使われてたやつは有料っぽいし立派すぎて個人利用する感じではなかったので「jp-Tamura」さんの復活は望めないのが残念ですが、言ってられないので自前でちまちま作ってます・・・(笑)