Flucardで出来ることのまとめ 2012/04/23版

Flucardのまとめはある程度需要があるみたいなので、記事更新。

前回の記事「Flucardで出来ることのまとめ 2012/04/11版

Flucardとは
2010年に台湾のTREK 2000 Internationalより発売された、SDカードサイズで、WiFiを利用して画像転送を行えるような製品です。
時期的にはEye-Fiよりあとに発売されていますが、東芝のFlashAirよりは、ずっと前、という形になります。

Eye-Fiは撮ったもの全てを転送する、というのが基本方針ですが、FlucardとFlashAirの方は撮った中から必要なものだけを選んで転送する、というのが基本方針です。

Eye-Fiと同様の外部の画像サイトに自動アップロード、という機能を「サーバアップロード」という名称で持っています。
しかし、Eye-Fiにある転送が終わった画像を自動的に削除していく、という機能はありません。

さて、FLUCARDですが、現在までに4種類のFLUCARDが販売されています。

2010年モデルは黒いFLUCARDとなります。これがFLUCARD GEN 1です。

こちらはfirmwareが違うようでアップデータが提供されていません。
たとえ安かったとしても買わない方がいいのではないかと思います。

日本でも発売しているのは白いFLUCARDのうち、黄色(4GB)と水色(8GB)です。
こちらはFLUCARD GEN 2です。

白いFLUCARDのうち、オレンジ(16GB)は日本では発売していません。
FLUCARD GEN 2かGEN 3のどちらかだと思いますが、詳細は不明です。

GEN 2、GEN 3のどちらであっても、サポートページにてfirmwareのアップデータが提供されている。
2012/04/11時点での最新版は「3.65_100R」となる。

Flucardのfirmwareアップデータの特筆すべき利点。
それは単なるzip形式での配布であり、アップデート方法も、zip内のファイルをFlucard内にSDHCカードスロットを経由してコピーすればいい、というだけの単純なものです。
そのためfirmwareアップデートはWindows/Mac OSX/Linuxなど、プラットフォームを選びません。

ただし、プラットフォームは選ばないが、SDHCカードリーダは、認識しないものが結構あります。
具体的な使えないライン、というものが見いだせていませんが、1つの目安としては、SDXC対応を謳ってるかどうか、ぐらいだと思います。

使用できるSDHCカードリーダについて
Flucardをさしても認識しないというSDHCカードリーダが結構あります。

使えないライン、というものがはっきりしていませんが、100円ショップで売っているようなものはほとんどが使えませんでした。使える製品もありましたが、安定して動作しませんでした。

おそらく、通常のSDHCカードと比較した場合にFlucardの消費電力が非常に大きいのですが、安いSDHCカードリーダだと、その消費電力を供給できずに動作しない、ということになるようです。

いま店頭で販売しているものだと「SDXC対応」と謳われているものであれば、消費電力が多少大きくても大丈夫なようで、おおむね認識しているようです。

発熱について
Flucardは、無線で送受信します。そして、無線の電波送信というものは熱を発生するものです。
このため、Flucardで通信を行っている結構な量の発熱があります。

Linux環境をいろいろいじっていたりすると30分以上通信したりしますが、そうすると、触るとかなり熱い、ぐらいの熱となります。
長時間使用する場合はファンをあてて冷却するなどした方が良いでしょう。
(Flucardが想定している通常利用時は、そこまで発熱することはありません)

Amazon Trek2000ストア
楽天 Trek2000ストア
送料無料! Wifi機能付きSDカード ...

送料無料! Wifi機能付きSDカード …
価格:4,700円(税込、送料込)

送料無料! Wifi機能付きSDカード Flucard16GB

送料無料! Wifi機能付きSDカード Flucard16GB
価格:9,890円(税込、送料込)

基本的な使い方
カメラでいろいろ撮影した後、twitterやfacebookに投稿したいと思う画像だけをスマートフォンにコピーする。
というのが、一番基本となる使い方です。

Flucardを買った状態で↑を行うための手順
1. デジカメにFlucardを入れる
2. 撮影する
3. デジカメを画像閲覧モードにする
4. 「設定・写真閲覧」という画像を見つけ、それを削除する

5. Flucardからビープ音が10回ぐらい鳴る
6. スマフォからWifi AP検索を行うと「Trek_FLUCARD_WiFi」というAPがあるので接続する
7. スマフォのブラウザで「http://192.168.1.1/」もしくは「http://flu.card/」にアクセス
8. 画像を閲覧して欲しい画像を見つけ、ダウンロードする
9. デジカメの電源を切る
10. スマフォで画像を編集して、投稿する

なお、上記手順6~9の間はスマフォからインターネットアクセスができなくなりますので注意してください。
(3G回線接続している場合でも、そうなります)

デジカメで画像を見た時に、もしかすると、画像がちゃんと表示できない、ということがあるかもしれません。
そのような場合は、サポートページにある「FLUCARD NIKON PATCH」を適用します。
パッチといっても、画像を新しいものに置き換えるだけのものです。
(firmwareアップデートでは画像は変更されないので、画像がちゃんと表示できない場合は、こちらのパッチが必要です。)

外部サーバに画像転送
普通の無線(WiFi)APを使用してネットワークに接続し、外部のサーバに画像を転送することもできます。

初期firmwareでは、Flucard Portalしか対応していません。
ただ、初期firmwareが対応しているFlucard Portalはftpでアップロードするものだったらしく、その後Portal側がアップデートして、ftpではなくなったようです。

そんなわけで、現状サポートしているのは以下の3種類
・Flucard Portal(新版)
・ftpサーバ
・Gallery 3 API対応のサービス

Gallery 3 APIというのはEye-Fiでも使っているAPIであるため、Eye-Fi対応を謳っているサービスを転送先として設定することも可能かもしれません。

どういったところに、どうやってアップロードするかについては、Flucardの管理Webから設定を入力します。

設定完了後、実際にアップロードする場合は、「サーバアップロード」の画像を削除すると、アップロードが開始されます。

結構、長々とビープ音が続くので、ほんとにアップロードできてるのかな?と心配になるような感じです。

Gallery 3 APIについて
Gallery 3 APIについて、FAQでは「Gallery3:API:REST」を参照すること、ぐらいの記述しかありません。

上記サイトのトップページは、Gallery Your Photos on your websiteで、タイトルにあるとおり、自分のWebに、自分専用の画像アップローダを作ることが出来るソフトウェアを提供しています。
実際、Linuxのphp/MySQL webサーバ上に簡単に構築できました。

Eye-Fi対応と謳っているサービスで、Flucardが使えるかどうか、という点は、現状はまだ調べていません。

FlashAirっぽく使う
東芝のFlashAirは、Flucardと同じコンセプトで作られている製品です。
FlashAir用にリリースされているアプリケーションをFlucardで利用することもできます。
具体的には当ページで公開している「FlucardにFlashAir互換機能を搭載した 2012/04/19版」です。

簡単に言えば、FlashAirを操作するためのCGIと同じ機能をFlucardに載せて、FlashAir用のアプリケーションを使用できるようにしました。

Linux的な使い方について
ARM Linuxなので、いろいろできますが、いくつか注意が必要な点があります。

・CPUはKeyASIC社のKA ARM9 Reference Platform(mach-ka2000)
・アーキテクチャはARM926EJ-S。旧版ながらARM926EJ-S テクニカルリファレンスマニュアル 日本語版がある
・Linux kernel 2.6.32.28
・組み込み系によくあるようにbusyboxを使って容量削減
・システムパーテーションはinitramfsで作られているため
いろいろ書き換えても電源入れ直すと元の状態に戻る
・書き換えたファイルが残るのは /mnt/mtd/ のみだが、容量が少ない
・書き換えられる設定ファイルは /mnt/mtd/config/config.trek のみ
・「/mnt/sd/」がFlucardをSDカードとして見た場合のディレクトリ
・Flucard起動時に「/mnt/sd/autorun.sh」を必ず実行する

・ストレージモードと、ネットワーク接続モードの2種類がある
・ストレージモードは、普通にアクセスした場合のモード
 デジカメ/SDカードリーダ上は、普通のSDカードとして見えるが、
 Flucard上ではネットワーク接続が無い状態でLinuxが動作している。
 autorun.shは、ストレージモードとして起動した段階で実行されている。

・ネットワーク接続モードは、ストレージモード時に特定のファイルを削除することで移行する
 内部的にはストレージモードで起動すると、「flu_app」という監視アプリが起動し
 特定ファイルの存在チェックを行っているようだ。
 ファイルが削除されたことを検出すると、決められた動作を行いWiFi接続をしたりする。

・telnetdについて
 初期firmwareでは有効になっていたが、途中から無効になった。
 autorun.shを利用してtelnetdを有効にしたbusyboxを起動させることで対応可能。
 autorun.shが存在していると、Flucardの自動WiFi起動が使えないいが、
 autorun.shの中で/usr/bin/w3のスクリプトを動かすと同等の動作をさせることもできる。

・telnetd/sshd経由で/mnt/sd上のファイルを直接編集した場合、「sync」を実行しないと、変更分が消える
 Flucardの仕組み上、明示的なshutdownというものができず、
 毎回、電源ぶちっ!の停止しかないためですね。

改造の例
・とんすけblogのFlucardでプログラムとかCGIとか
 ruby, perl, php, sshdが配布されています。

・当blogのFlucardにFlashAir互換機能を搭載した 2012/04/19版
 とんすけblogのプログラムを流用してFlashAir互換機能を搭載しています。

・当blogのFlucard firmware ver3.65でtelentdを有効にする方法

・とんすけblogのFlucardのコントロール画像をカスタマイズしてみた
 Flucardの動作を制御する画像をカスタマイズする方法についての概論です。

Firmwareの詳細について
Flucard ProはARM Linux搭載でtelnetdを有効にできるなんておもしろそう!
firmware.zipのばらし方と、その中身について解説

Flucardのfirmware変更履歴
ざらっと調べた限りでのFlucard firmwareの変更履歴

Flucard firmware ver3.65でtelentdを有効にする方法
最新firmwareではtelnetdが無効にされているので、有効にする方法
関連としてFlucardのautorun.shを編集

・Flucard上のコマンドを実行したりしたメモ
Flucardでコマンドをいくつか実行してみた
Flucardのbuzzerコマンド
Flucard busyboxの持ってる機能比較

Xperia X10 mini proのカスタムROM事情 2012/04/23版

2012/12/26現在は、「Xperia X10 mini proにMiniCM10(Android 4.1.2)を入れた」で紹介したMiniCM10を入れて使っています。

また、カスタムROM全般の話は「Xperia X10 mini proのカスタムROM事情 2012/09/30版」で更新しています。


2012年2月からのXperia X10 mini proのカスタムROM事情について、まとめ。
なお、前回は2012/02/08版です。

トピック
・統合軍なXMP登場
・無難なMiniCM7
・ICSは徐々に進行中
・kernelはnAa kernelかXMP kernelの2択

統合軍なXMP登場
TheMiltos21さん主幹で、いろんな人が関わっている、XMPというカスタムROMが出てきました。

[ROM]XMP V12 18/04/2012 CyanogenMod 7.2 RC1

「メモリが87MB空くよ!」とか「内蔵ストレージの空き領域が175MBだよ!」とか、
2個前のV10だと「配布のzipサイズが65.9MBしかないよ」とか省スペースなことを謳っています。

最初のうちは、XMP kernelという専用のkernelについても推奨していたのですが、最近はあまり前面に出しておらず、nAa kernelと組み合わせるような感じです。

無難なMiniCM7

nobodyAtallさんのMiniCM7は、現段階でも無難な選択肢です。
[ROM] MiniCM7-2.2.0 [29/3/12]Gingerbread 2.3.7/CM7.2 unofficial port for the pro

nAa kernelと組み合わせて使いましょう。

ICSは徐々に進行中
paul-xxxさんにより、Xperaia X10 mini pro向けのICSの開発が進んでいます。

[X10 Mini Pro][ROM] Old Xperia Project Latest (CyanogenMod9) – 002

nAa kernelと組み合わせて使います。
カメラが動作しない、グラフィックのアクセラレーションの動作が完全ではない、という問題はありますが、3G通信も動作しました。

WifiのDHCPは動作しませんでしたが、その他は、一通りきちんと動作はします・・・・が、実用するには、さまざまな場面でのレスポンスが遅すぎてつらいと思います。

やはりICSは荷が重いようです。

kernelはnAa kernelかXMP kernelの2択

現在、Xperia X10 mini pro向けとしては、基本的には、nAa kernelを利用。
XMP kernelは、XMPを使用する時にのみ利用、という感じです・・・が、あまりXMP側でも強く推奨していない模様。

[KERNEL] nAa-11 [11/2/12] Custom Gingerbread kernel + CWM Recovery
[ROM]XMP V12 18/04/2012 CyanogenMod 7.2 RC1

なお、XMP kernelは単独では配布されていないので、上記のXMP本体内からtftファイルを拾い出してください。

covia Voguというタフネス携帯はSynQe OEM?

coviaからタフネスAndroid端末 Voguが登場、だとか。

読み方は「ぼうぐ」=防具なのかな?

どこのOEMなのかなぁ?と「android MIL-STD-810G」とかでぐぐって見て、発見。

製造元は中国のSynQe Electronics (北京宝讯电子有限公司)である模様。
こちらのページには該当する製品が掲載されていないが、フランスのNICONIXというベンダから販売されている「NICONIX Q2」やイギリスのM-Tech PrintersのSynQe Q2 Android Terminalの外観がまさにそのもの。

そして、NICONIX Q2のページに掲載されているpdfを開くと「SynQe」のロゴが確認できますし、M-Techの方にはSynQeのリンクもあります。

よって、covia Vogu = SynQe製造、ということがほぼ確実です。

M-techのページの方には「2012年5月発売予定」と書いてあるので、いまの時期にMSM7227 800MHzとか言っても型落ちモデルとかを販売しているわけじゃなく、最新モデルを販売するようです。

また、NICONIXのpdfだともうちょっと詳細スペックが書いてあります。
それによると、日本国内では意味をなさないですが、Dual Sim仕様が基本スペックで、オプションによりSIM1枚仕様に対応とのこと。coviaがどちらの仕様でで発注しているのかどうかが気になります。
あと、FOMAプラスエリア(800)を対応させるのかも。

とりあえずは、各種の手続きに時間がかかるので3Gモデルは秋リリースで、まずはWifiモデルのみ発売ってことになってるんでしょうね。
果たして3G対応版はどういった仕様で出てくるのやら・・・

以下はNICONIX Q2のスペックシートより抜粋したものです。
3G回線のサポート
Dual Sim Standby ( 物理的にSIM 1枚のみにすることも可能だがオプション )
・SIM Card1: WCDMA/HSPA850/1900/2100, GSM/GPRS/EDGE 850/900/1800/1900
・SIM Card2: WCDMA/HSPA850/1900/2100, GSM/GPRS/EDGE 850/900/1800/1900
ただし、3Gが使えるのは1つ。もう片方は2G(GSM)のみとなる。

CPU
Qualcomm MSM7227 Turbo 800MHz

液晶
3.2インチ 480×800(WVGA)
静電式タッチパネル

ストレージ
ROM 512MB/RAM 512MB + miroSDHC 32GHzまで

カメラ
500万画素オートフォーカス+30万画素フロントカメラ

OS
Android 2.3.5

MediaTek MT6575T? MT6577

そういや以前、AMT-7001とJz4770系の違いに言及したimp3.netのフォーラムの紹介記事を書いたなぁ、最近、AMT系ってどうなってるんだろう?とフォーラムの記事を書いた人が最近どんなことをやってるのかを確認してみると、「联发科将推6575T A9双核处理器,与高通分庭抗礼。」というのを書いていた。

联发科将(MediaTek/MTK)のMT6575系チップに関する記事で、現状「MT6575」と「MT6575M」があるが、2012年Q2に開発向け、2012年Q4に量産出荷開始予定で「MT6575T」というものが出てくるというもの。

MT6575Tは、Cortex A9のDualコアで、クロック1GHz、40nmプロセスで製造されるらしい。
性能的にはQualcommのMSM 8225(Coretex A5 Dualコア,1GHz,45nmプロセス)より高性能・安価とのこと。

他にも情報を探していたら「MT6577」という製品名も出てきた。
商戰 – Mediatek 聯發科 vs Qualcomm 高通」という記事が一番良さそうですが、4/17付けの台湾のニュースとして同様のニュースがあり、そこには「MT6575TはMT6577に改名した」的なことが書いてあります。
性能的にもだいぶ違いそうですから、改名は妥当なところかもしれません。

なお、MT6575Mについての情報は、うまいこと出てこなかった。
GigabytesのスマートフォンGSmart M1320に採用されているらしいという話があるが公式ページで製品情報が見つからない。
おそらくは、MT6575とさほど変わらないものでありそうである。

ちなみに、Qualcomm MSM 8225についてはプレスリリース「クアルコム、Snapdragon S4プロセッサを普及価格帯向けスマートフォンに拡大、クアルコム・リファレンス・デザイン開発プラットフォームとエコシステムプログラムを拡充」を参照のこと。

— 2012/07/01 追記 —
MediaTekからの公式リリースが出ました。
MediaTek Launches Dual-Core MT6577 Smartphone Platform

2012Q3に最初の搭載製品が出てくる、というあたり、若干予定より早くなっている感じがありますね。

FlucardにFlashAir互換機能を搭載した 2012/04/19版

FlucardにFlashAir互換機能を載せました。

載せたことにより、以下の様な感じでAirShowからFlucard内のデータを見れるようになりました。

[手順]
1. zipを入手→ flucard-20120419.zip
2. Flucardを普通に起動してWiFiを有効にする
3. WiFi APのSSIDを「flashair」という名前が入っているものに設定する
「flashair_flu」とかそんな名前で
4. WiFi AP設定のKEYも入れる
5. 1回、Flucardの電源を落とす(スロットから抜くなどで)
6. パソコンにさす
7. autorun.sh,fluroot,DCIMをFlucardにコピー
8. zipを展開
9. DCIM/122_TREK/fluconfig.txtを変更
機能のon/offを制御できます
10. 1回、正規の手段でFlucardを取り外す
11. Flucardを起動してWiFiを有効にするとFlashAir互換になる。

なお、手順の詳細は説明しません。
わからない人は使わないでください。

また、FlashAir互換用に作成したCGIは、不正な行動に弱い構造をしています。
これはセキュリティを考慮したプログラムにすると処理が重くなってしまい、非力なFlucardのCPUだと大変なことになるためです。
不正なCGIの引数でも受け付けてしまいますので、くれぐれもインターネットに直接接続しない環境で使用してください。

[fluconfig.txtの解説]
REPLACEBUSYBOX=yes # busyboxのリンクを独自コンパイルのbusyboxに張り直し
INSTALLSHAREDLIB=yes # 共有ライブラリをインストール
INSTALLPERL=yes # perlをインストール
INSTALLRUBY=no # rubyをインストール
INSTALLPHP=no # phpをインストール
REPLACEFTPD=no # ftpdを独自コンパイルのbusyboxに置き換え
REPLACETCPSVD=no # tcpsvdを独自コンパイルのbusyboxに置き換え
REPLACEHTTPD=yes # httpdを独自コンパイルのbusyboxに置き換え
ENABLEFTPD=yes # ftpdを起動
ENABLETELNETD=yes # telnetdを起動
ENABLESSHD=yes # sshdを起動
ENABLESSHD2=no # sshdを起動(dropbear 2012.55うまく動かなかった・・・
ENABLEFLASHAIR=yes # FlashAir互換機能を有効にする

なぜか、「INSTALLSHAREDLIB=yes」
と「ENABLETELNETD=yes」が共存できない。

telnetdをどうしても使いたい場合はINSTALLSHAREDLIB=noで
ひとまず起動し、あとで共有ライブラリをコピーすると、動く
そのためのCGIを用意してあるので、以下のURLをアクセスすると良い
http://flu.card/cgi-bin/perl.cgi

Amazon Trek2000ストア
楽天 Trek2000ストア
送料無料! Wifi機能付きSDカード ...

送料無料! Wifi機能付きSDカード …
価格:4,700円(税込、送料込)

送料無料! Wifi機能付きSDカード Flucard16GB

送料無料! Wifi機能付きSDカード Flucard16GB
価格:9,890円(税込、送料込)

[詳細情報]
Flucardの標準設定のままではFlashAirだと認識できないので以下の変更が必要です。

(1) WiFi APのSSIDに「flashair」という文字列を入れる
これはFlucardの標準的な設定画面で変更します。
うちでは「flashair_flu」という名前でテストしています。

(2) WiFi APのKEY設定
KEY設定がないとうまくFlashAirだと認識してくれなかったので
何か設定を入れる。
これもFlucardの標準的な設定画面で変更します。

ここまではFlucardの設定画面で変更できる項目です。
以下の(3)~(7)は設定ファイルの直接編集が必要です。
autorun.shで編集するようになっていますので、
実際には、特に気にする必要はありません。

(3) IPアドレスの変更
・FlucardのIPアドレス: 192.168.1.1
・FlashAirのIPアドレス: 192.168.0.1

FlashAirのIPアドレスである「192.168.0.1」に変更
/mnt/mtd/config/config.trek を書き換える。
config.trekは設定を変更すると書き換わるものなので、sedを使って「192.168.1.1」があったら「192.168.0.1」に書き換える、という単純処理を行っている。

(4) DHCPサーバが配布するIPアドレス帯の変更
IPアドレスが192.168.0.1に変わったことにより
DHCPサーバの設定も変更が必要になる。
/etc/udhcpd_uap.confを編集します。
このファイルは変更されることが無いので編集済みファイルをコピーしている。

(5) DNSサーバの名前解決情報を変更
「flu.card 192.168.1.1」と返しているDNSサーバを
192.168.0.1と返すように変更。
/etc/dnsd.conf を編集。
このファイルは変更されることが無いので編集済みファイルをコピーしている。

(6) FlashAirで使う機能の搭載
/command.cgi, /thumbnail.cgi を使うので、それを模したものを作成。
以下の情報を参考にした。
https://github.com/cho45/flashair

また、Airshowではindex.htmlから画像リストを拾っている、ということであったので、autorun.shを使って起動時に、/www/index.htmlと/mnt/sd/DCIM/各ディレクトリ/index.html にFlashAirの画像列挙用に「wlansd[0]=~」などの必要なエントリを追加している。
このため、画像ファイルが多くなってくると処理が重くなる可能性がある。

サムネイル画像はjheadコマンドの機能をそのまま流用しているので、結構ちっちゃい画像となっている。
処理に時間がかかるので/mnt/sd/fluroot/cache/に一度生成したサムネイル画像を蓄積させている。
自動削除はさせていないので、手動で消すこと。

(7) busyboxの標準的なhttpdを改造
busyboxのhttpdは/cgi-bin/にあるCGIのみを動作させます。
それを/command.cgi, /thumbnail.cgiでもCGIで動作できるように変更。

[flurootディレクトリについて]
DCIMディレクトリの中にバイナリがあるのもアレだったのでflurootという形で独立させました。
個人的趣味により、機能毎にディレクトリを分けています。

shared, perl, php, ruby, sshディレクトリ
Tonsukeさんの2012/04/10版から持ってきています。

busybox
/cgi-bin以外でも一部のCGIが動作するように改造したbusybox 1.19.4

ssh2ディレクトリ
dropbear 2012.55
ただし、うまく動作を確認できていない

flashairディレクトリ
jhead はTonsukeさんの2012/04/10版から持ってきています。
command.cgi, config.cgi, thumbnail.cgiは独自作成です。