読者です 読者をやめる 読者になる 読者になる

まめ畑

ゆるゆると書いていきます

Chumbyが届いたので遊んでみた

Chumby

先週の金曜の夜に注文したChumbyが今日とどいたので早速遊んでみました。
2営業日で発送された模様です。


まずは開封


もうすこし開封

麻袋に入っています。


さらに開けると

こんな感じで、小さな麻袋にはACアダプタ、青い袋にはチャームが入っています。
あと、英語版の説明書も入っています。
こういう梱包から遊び心を感じますね。

全部出すと。


まずは、話題の情報端末 『chumby(チャンビー)』の世界へようこそから登録をします。
右上のリンクからアメリカのサイトにいきます。
登録は現在のところ英語のサイトでしか出来ません、国を選ぶところでメッセージが出ますが問題ありません。
Chumby自体の設定は付属の説明書通りにやれば簡単に終了します。
無線LANのつながる環境で行う必要があります。
アクティベーションはサイトに表示されている黒丸の位置をタッチすることで行います。
正常に完了すると、サイトにChumbyのIDが表示されます。


Chumbyウィジェットはネット上で登録を行います。
すでにたくさん登録されているので、すくなものをADDします。
その後、ChumbyのCHANNEL→RELOADをタッチして更新します。

自分の作ったものも登録出来ます。
その際に、100Kb以下のサイズのswfファイルにする必要があります。
しかし、USBから読み込ませることで600Kbくらいまで読み込ませることが可能です。
現在では日本語フォントが内蔵されていないので、Flashに埋め込むのですが、そうすると容量が大きくなってしまいます。
年内に対応予定らしいのでそれまでがんばるしかないですね。


ChumbyではFlash Lite3が動作するので、いまどきのケータイアプリと同じ感じです。

Supported Features:

  • Flash video (FLV) encoded with ON2 and Sorenson Spark codecs
  • Video, NetStream and NetConnection classes
  • Internal PNG Transparent (PNG-24)
  • Internal GIF Transparent
  • External MP3 files
  • External PNG, GIF, non-progressive JPEGs


Not supported:

  • Bitmap caching, bitmap effects or enhancements
  • Filters
  • Blend modes
  • Stylesheets
  • non-default code pages
  • Focal gradients
  • Progressive JPEGs
  • External GIF Transparent

こんなスペックです。
FLVもいけますね。


さて、早速アプリを動かしてみました。
これはUSBからの起動です。

ニワンゴちゃんがバウンドします。
バージョンが夏なのは、これを作ったのがその時期だからです。
インターンの時にFlasherの「うきょう」にFlashを教えてもらったので、ちょびっとだけやってみました。
ケータイ待ち受けに活躍してたのですが、こいつでも動きます。

ログインしてみよう

実はChumbyは隠しモードでSSHでログイン出来るように出来たり、CGI動かしたり、Fileマネージャ的なものがつかえたりします。

のSETTINGから

πマークをタッチすると、そのモードに入れます。


ログインすると

こんな感じでお出迎えしてくれます。


rootでログインするのですが、パスワードがないので使い終わったらさっきのモードからOFFにするのがいいかもしれません。
再起動するとOFFになります。
起動時に自動的に起動させたい場合は

touch /psp/start_sshd

でおk。
起動させないようにするには、このファイルを消すだけです。


自作ウィジェットを起動するにはUSBにサムネ画像とswfファイルと以下の形式のXMLファイルをprofile.xmlとして保存します。
この時、USBをWindowsでフォーマットすると認識しません。
パーテションが消えてしまうのが原因です。
Linux上でフォーマットしたものはおkです。

Chumby tricks - ChumbyWikiから引用していますが、大事なのは「thumbnail」と「movie」タグ。
そこのファイル名を変更します。
このファイルに複数のアプリの情報を書き込めます。「」idを変更します。
widget_parameters」は設定情報なので、ない場合はこのセクションは書かなくても大丈夫です。

<profile>
  <widget_instances>
    <widget_instance id="1">
      <widget>
        <name>My Widget</name>
        <description>This is my widget</description>
        <version>1.0</version>
        <mode time="30" mode="timeout"/>
        <access sendable="false" deleteable="false" access="private" virtualable="false"/>
        <user username="myusername"/>
        <thumbnail href="file:////mnt/usb/mythumbnail.jpg" contenttype="image/jpeg"/>
        <movie href="file:////mnt/usb/mywidget.swf" contenttype="application/x-shockwave-flash"/>
      </widget>
      <access access="private"/>
      <mode time="30" mode="timeout"/>
      <widget_parameters>
        <widget_parameter>
          <name>zipcode</name>
          <value>90210</value>
        </widget_parameter>
        <widget_parameter>
          <name>phonenumber</name>
          <value>867-5309</value>
        </widget_parameter>
      </widget_parameters>
    </widget_instance>
  </widget_instances>
</profile>


後は、直接実行。

chumby:/# stop_control_panel
chumbyflashplayer.x -i /mnt/usb/fileName.swf

こんな感じです。
ただ、この方法では、コントロールパネルを停止させるので上のボタンを押しても戻りません。

なので、アプリを終了させたら。

chumby:/# start_control_panel

で起動させます。


スクリーンキャプチャも取れます。
隠しモードでFBCGIをONにしておきます。
ブラウザから

http://アドレス/cgi-bin/custom/fb0
http://アドレス/cgi-bin/custom/fb1

にアクセスすると5秒間隔で更新されます。
前者が、ウィジェット
後者が、コントロールパネル用です。

こんな感じで撮れます。


もろもろ

コントロールパネルも自作出来るのでいろいろできます。
内部リソースにアクセス出来ないのです。。


加速度センサーなどの情報もASから取れるので色々ハックしてみたいです。。
Flash始めます。


あ、ウィジェットの設定はウィジェット登録時にサイト上で行います。

色々出来るハック用おもちゃなのでいじり倒します。

中身

chumby:~# uname -a
Linux (none) 2.6.16-csb #1 Thu Jul 24 11:14:11 PDT 2008 armv5tejl unknown
chumby:~# df   
Filesystem                Size      Used Available Use% Mounted on
/dev/mtdblock5           33.0M     33.0M         0 100% /
none                     30.2M     12.0k     30.2M   0% /dev
none                     32.0M    564.0k     31.4M   2% /tmp
none                     32.0M     64.0k     31.9M   0% /var
none                     32.0M         0     32.0M   0% /mnt
/dev/mtdblock1            2.0M    108.0k      1.9M   5% /psp
/dev/sda1                62.0M     64.0k     61.9M   0% /mnt/usb