スマートフォンの機能を使いまくって目覚し時計を作ってみた

よっしゃ、ぎりぎりで間に合っ……って無い……だとっ……
すみません。遅刻しました m(_ _)m

ダウンロード → http://goo.gl/TBd0k


スマートフォンの機能を使いまくって目覚し時計を作ってみた - ニコニコ動画



動画投稿してから1週間も経ってますが、こちらのブログの方でも報告しときます。
以下、裏話など。

なぜこれを作った?

以前ここにも書きました が、昨年末に Android 携帯に機種変更し、年末年始の休みを利用して、アプリを制作し、 AndroidMarket に登録しました。

その際、「微妙に不満な点がある。一つがマナーモードの挙動」と書きましたが、もう一つはアラーム機能だったりします。昔から携帯のアラームを目覚まし代わりに使用していたのですが、IS03のアラームは音が控え目というのもありますが、スヌーズと停止がスライド方向が逆なだけなので、スヌーズしたつもりがねぼけて止めてしまうことがあったりして、微妙に信用ならないという問題があります。(← おもいっきり個人の感想というか、個人差がある所ですが。)

というわけで、元々、アラームを作るつもりはあったので、良い機会と思い、祭の参加に格好をつけてやりたい事をやったという訳です。

正直な所、仕事が一つの山場を迎えていて、プライベートな時間をあんまり取れそうも無かったため、あまり試行錯誤の時間がありませんでした。
そのため、物理的な物を作るのは諦め、自分の一番得意なプログラミング領域に引き込んで勝負をした、という事情もあります。(物理的な時計を作る方のアイデアで最後まで迷ったネタもあったのですが、結果論からいうとネタかぶりしてました。どれと被ったかはヒミツ。)

なぜたこルカを入れた?

前回の動画、 8本足のアイツにアレを踊ってもらった(発想祭出品作) - 玉虫色に染まれ! では、むりやりネタにしましたが、元々想定していた完成形は、サーボと圧電サウンダをつけて自立で音を出して踊る(?)物でした。実は、コードは完成していて、工作に使った AVR にはプログラム済みなので、あのルカさんに電源とサーボや圧電素子を繋げば動くという所までは、前回の動画を上げた時点では出来ていました。ATtiny13というメモリ激少なマイコンなので、コーディングのテクニックとしても多少は面白みがある動画になるかな、という目論見でした。

ところが急な海外出張が入ってしまって、それらを完全な形で動画にする余裕が無くなってしまったため、あのようなネタになったわけです。

そういう事情なので、その気になればすぐに完全版を作ることも出来無くはなかったのですが、完全に時期を逃してしまったため、「次に動画を作る時のネタ」としてストックすることにしました。

おかげで、今回の動画ではアクセントのネタとして有効活用できたのではないかと思います。

動画中のマイコンのネタに関しては、テレビリモコンの赤外線コードの解析と送信や、Bluetooth変換アダプタの送受信は完全に新規のコードでしたが、それらは原理は知っていたのでそんなに苦労はしませんでした。音とか動きになると、本質的では無い所でどうしても試行錯誤が多く入るので、時間がかかってしまうんですよね。

EasyBluetooth (RBT-001) は使える

今回の動画は、普通の視聴者に向けては見て楽しんで貰う事、また、Androidユーザーに対してはアプリで遊んで貰うことを目的としていましたが、裏の目的として、マイコン工作クラスタに対して Bluetooth SPP を布教するという物もありました。

Bluetooth って、いまいち流行らない感じがありますが、さすがに最近の ノート PC なら大抵付いていますし、スマートフォンなどにも付いていますから、アプリを書く事前提でそれらと通信するならハードウェア的には最も手軽な手法の一つといえます。

ZigBeeも凄く良いんですが、省電力はそんなに求めないし繋ぐのもPCと1対1で中継器も無しというなら、Bluetooth SPP もありですよね。何といっても、スマートフォンのような物と無拡張で繋げるのが便利です。

まあ、流行っていないが故の問題として、Bluetooth シリアル変換モジュールが高いってのもあるわけですが。特に日本の場合電波法の壁があって海外の安いモジュールが堂々と使えない、という点もあってなおさら高くなります。

そんな中でも RBT-001 は一応モジュールとして技適も通ってますので、今回は、RBT-001にブレッドボードで使うのに便利なレベル変換+ピッチ変換の基盤がセットになった EasyBluetooth を使ってみました。

マイコンからの制御は、ただの2線式のUARTなので誰でも扱えますし、1個ぐらい持っていても損は無いモジュールなんじゃないかと思います。個人的には。

動画制作ソフト

今回は 動画編集アプリケーションOpenShotについてのメモ(2011/2/14現在・前半) - 試験運用中なLinux備忘録 で紹介されていた OpenShot というソフトを使ってみました。なかなか良くできていていいかんじですね。

SVG のイメージがそのままアルファ付き静止画として取り込めますし、動画の一部に別の動画をオーバーラップするのも出来るので、冒頭のたこルカさん比較動画のような物もサクっと作ることが出来ました。

一部不具合を踏んで謎のノイズが乗ってしまった所もあって、時間が無くて放置してしまったのは多少心残りですが、全体としては凄く良くできたソフトだと思います。

心残り

動画中の画面が崩れる所を修正しきれなかったとか、タイトルのシーンでは裏に写真を貼りたかったのに忘れていたとか、細かい心残りはあるのですが、一番大きいのは時間がギリギリ間に合わなかったことですね。

30分前には仕上げを終えて動画の出力を始めていたのですが、エンコード設定を間違えて100MB 以上の動画になってしまい、受け付けてくれなかった、という失敗をしてしまいました。

慌てて設定を変えて再出力し、アップロードできたのはリミット数分前。タイトル等を入力して、「間に合った!」と思った瞬間、出てきたのは「エンコード中」の文字。サーバー側で再エンコードが走って、処理が完了した時点が投稿時間となるようで、これでめでたく遅刻となりました。

あ、あと、「センサーで振りを検知」なんて事をやっているんですから、どうせならお約束のネギ振りもやりたかったなー、ってのも心残りですね。ルカさんとGPSでネタ要因は揃ってたので、時間に余裕があれば入れたぐらいのネタではあったんですが。

最後に一言

遅刻はいけないと思います。