Flucard ProはARM Linux搭載でtelnetdを有効にできるなんておもしろそう!


2012/04/24追記: 「Flucardで出来ることのまとめ 2012/04/23版」とか「FlucardにFlashAir互換機能を搭載した 2012/04/19版」とか情報更新がありますので、以下を読んだあと、参照してみてください。
—————————————————-
最近、東芝FlashAirというのが評判です。
Eye-Fiと比較すると使いにくい、というような評判が大きかったのですが、正しい使い方、というものが判明してきたので、評判が上がってきたという感じです。

簡単にいうと
・Eye-Fi = 撮影したものを全部転送する思想
・FlashAir = 撮影したものから必要なものだけを取り出す思想

といったところです。

さて、実はFlashAirと同系統でFlucard Proというものがあります。
こちらはもう発売してから1年たつ先行品です。
日本ではプラネックス取り扱いで販売されています。(2012/10/24追記: 現在はプラネックスでの取り扱いが終了し、Trek2000の直販となっています)

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

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

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

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

この製品、Webで評判を探すと不安定という話ばかりです。
なので、敬遠していたのですが、よくよく調べてみると先月(2012年3月)にfirmwareがアップデートしていました。

firmware.zipをダウンロードして中身を見てみると非常に興味深いことが・・・

$ unzip -l flucardpro-3.65_100R-firmware.zip
Archive:  flucardpro-3.65_100R-firmware.zip
  Length     Date   Time    Name
 --------    ----   ----    ----
        0  03-06-12 16:16   firmware/
      199  10-19-11 15:14   firmware/autorun.sh
  2794656  12-31-11 23:15   firmware/Image
  2731040  02-01-12 15:02   firmware/image3
  2517541  03-06-12 15:36   firmware/initramfs.gz
  2527932  03-06-12 15:33   firmware/initramfs3.gz
   109400  10-15-11 23:34   firmware/program.bin
      120  03-06-12 15:35   firmware/version.txt
      115  03-06-12 15:32   firmware/version3.txt
 --------                   -------
 10681003                   9 files
$

ファイルの名付け方法が非常にLinuxっぽい。
ためしにautorun.shを開いてみると・・・

$ cat autorun.sh
#!/bin/sh
buzzer -t 2
cp /mnt/sd/version.txt /mnt/mtd/
cp /mnt/sd/version3.txt /mnt/mtd/

sync
sleep 1
rm /mnt/sd/version.txt
rm /mnt/sd/version3.txt
rm /mnt/sd/autorun.sh
sync
sleep 1

buzzer -t 5
$

間違い無くUNIX系統であることは確か。

「initramfs.gz」も非常にLinuxっぽい名前であるものの、そのままでは開けない。

$ file initramfs.gz
initramfs.gz: data
$ gzip -d initramfs.gz

gzip: initramfs.gz: not in gzip format
$

中身を確認すると先頭の8bytesに何らかしらのヘッダが付加されており、それ以降は通常のgzip形式である模様。

取り除き方はいろいろありますが、とりあえず標準コマンドのみでやってみた。

 $ ls -l initramfs*
-rw-rw-rw- 1 root root 2517541  3月  6 15:36 initramfs.gz
-rw-rw-rw- 1 root root 2527932  3月  6 15:33 initramfs3.gz
$ expr 2517541 - 8
2517533
$ cat initramfs.gz |tail -c 2517533 > initramfs-tmp.gz
$ ls -l initramfs*
-rw-r--r-- 1 root root 2517533  4月  5 13:22 initramfs-tmp.gz
-rw-rw-rw- 1 root root 2517541  3月  6 15:36 initramfs.gz
-rw-rw-rw- 1 root root 2527932  3月  6 15:33 initramfs3.gz
$ file initramfs-tmp.gz
initramfs-tmp.gz: gzip compressed data, from Unix, last modified: Tue Mar  6 16:29:52 2012
$ gzip -d initramfs-tmp.gz
$ ls -l initramfs*
-rw-r--r-- 1 root root 4515328  4月  5 13:22 initramfs-tmp
-rw-rw-rw- 1 root root 2517541  3月  6 15:36 initramfs.gz
-rw-rw-rw- 1 root root 2527932  3月  6 15:33 initramfs3.gz
$ file initramfs-tmp
initramfs-tmp: ASCII cpio archive (SVR4 with no CRC)
$ 

cpioのファイルができたので、普通に展開。

$ mkdir initramfs
$ cd initramfs
$ cat ../initramfs-tmp|cpio -ivd
.
dev
dev/ttyS1
dev/mmcblk0p1
dev/tty1
dev/mmc2
dev/mmc1
dev/gpio_i2c
dev/mtdblock1
dev/random
dev/null
dev/nvram
dev/mmcblk0p2
dev/spidev0
dev/mmc
dev/pty
dev/pty/m0
dev/pty/m1
dev/mmcblk0
dev/mtdblock0
dev/ka_sdsw
dev/sda
dev/spidev1
dev/spi0
dev/ka-pwm1
dev/root
dev/sdb
dev/ram0
dev/console
dev/tty0
dev/mtd0
dev/zero
dev/urandom
dev/ttyS0
dev/loop
dev/loop/2
dev/loop/0
dev/loop/3
dev/loop/1
dev/sda1
dev/tty
dev/ram1
dev/mtd1
dev/fb0
dev/ttyS
dev/ram
dev/ramdisk
dev/spidev0.0
dev/spi0.0
dev/ka-pwm
dev/tty2
dev/ptmx
dev/pts
dev/pts/5
dev/pts/2
dev/pts/0
dev/pts/3
dev/pts/4
dev/pts/1
lost+found
init
tmp
home
home/config.trek
bin
bin/dcraw
bin/logpage
bin/iwevent
bin/iwpriv
bin/production_test
bin/input
bin/lsdir
bin/thumbNail
bin/umount
bin/wifi_setup
bin/output
bin/rev
bin/reformime
bin/ip
bin/mlanconfig
bin/thumbRaw
bin/receiver
bin/mv
bin/iptunnel
bin/dnsdomainname
bin/iostat
bin/ipcalc
bin/date
bin/http_upload
bin/connect_router
bin/powertop
bin/ln
bin/settings_and_review
bin/printenv
bin/cat
bin/hello_trek
bin/upload
bin/ash
bin/status
bin/macaddr
bin/ls
bin/get_config
bin/fsync
bin/mlanevent
bin/playNote
bin/hostname
bin/mount
bin/rmdir
bin/ionice
bin/upload_sd
bin/dmesg
bin/iplink
bin/motion_app
bin/cp
bin/motion_cgi
bin/busybox
bin/lzop
bin/ping
bin/mlan2040coex
bin/photo
bin/vi
bin/iwconfig
bin/startup
bin/set_config
bin/kill
bin/iprule
bin/photolist
bin/pipe_progress
bin/ipaddr
bin/get_uap_ssid
bin/makemime
bin/scriptreplay
bin/htmlcgi
bin/more
bin/iwlist
bin/sender
bin/download
bin/df
bin/thumb_video
bin/sleep
bin/buzzer
bin/pwd
bin/replace_file_content
bin/upload_to_sd
bin/mpstat
bin/echo
bin/localization
bin/base64
bin/iproute
bin/datetime
bin/video
bin/rename
bin/mknod
bin/chmod
bin/mkdir
bin/run-parts
bin/power_up_app
bin/preview
bin/rm
bin/ifrename
bin/folderOpt
bin/flu_app
bin/download_multi
bin/sync
bin/dd
bin/wpa_supplicant
bin/sh
bin/serverUpload
bin/usleep
bin/netstat
bin/touch
bin/pwm
bin/ps
bin/uaputl
bin/connect_uap_sender
var
var/tmp
var/log
var/var
var/lib
var/lib/misc
var/lib/misc/udhcpd.lease
var/lock
var/run
lib
lib/gpio_i2c.ko
lib/ka2000-sdio.ko
lib/firmware
lib/firmware/sd8787_uapsta.bin
lib/ka2000-sdhc.ko
lib/sd8xxx.ko
lib/mlan.ko
sys
mnt
mnt/sd
mnt/mtd
www
www/sd
www/welcome.html
www/mtd
www/script
www/script/login.js
www/script/expand-collapse.js
www/script/input.js
www/script/control.js
www/script/menu.js
www/download.jar
www/image
www/image/browse.jpg
www/image/photos-chin.jpg
www/image/other-chin.jpg
www/image/save-jp.jpg
www/image/help.jpg
www/image/photos-jp_ori.jpg
www/image/download-grey-jp.jpg
www/image/download-grey.jpg
www/image/photos.jpg
www/image/download-grey-chin.jpg
www/image/download-jp.jpg
www/image/other.jpg
www/image/select-all-albums.jpg
www/image/select-all-chin.jpg
www/image/save-chin.jpg
www/image/clear-all-albums-chin.jpg
www/image/videos-chin.jpg
www/image/brought-to-you-by-trek.jpg
www/image/photos_ori.jpg
www/image/save.jpg
www/image/flucard-color1.jpg
www/image/quick-setup-jp.jpg
www/image/clear-all-albums.jpg
www/image/status-jp.jpg
www/image/select-all-albums-chin.jpg
www/image/folder.jpg
www/image/logo.jpg
www/image/logo-chin.jpg
www/image/select-all-albums-jp.jpg
www/image/upload-chin.jpg
www/image/back-jp.jpg
www/image/upload-grey-chin.jpg
www/image/status.jpg
www/image/photos-jp.jpg
www/image/status-chin.jpg
www/image/flucard-color.jpg
www/image/videos.jpg
www/image/select-all.jpg
www/image/next-chin.jpg
www/image/clear-all-albums-jp.jpg
www/image/clear-all-jp.jpg
www/image/next-jp.jpg
www/image/back.jpg
www/image/clear-all.jpg
www/image/blank.jpg
www/image/quick-setup-chin.jpg
www/image/quick-setup.jpg
www/image/select-all-jp.jpg
www/image/upload-grey.jpg
www/image/next.jpg
www/image/download.jpg
www/image/back-chin.jpg
www/image/upload-jp.jpg
www/image/videos-jp.jpg
www/image/upload-grey-jp.jpg
www/image/upload.jpg
www/image/file.jpg
www/image/clear-all-chin.jpg
www/image/help-page.jpg
www/image/other-jp.jpg
www/css
www/css/css_main.css
www/index.html
www/page
www/page/upload_sd.cfg
www/page/OkPage-chin.html
www/page/upload.htm
www/page/BadPage.html
www/page/upload.cfg
www/page/login-jp.htm
www/page/OkPage.html
www/page/quick_setup.htm
www/page/login-chin.htm
www/page/blank.htm
www/page/OkPage-jp.html
www/page/BadPage-jp.html
www/page/upload.log
www/page/login.htm
www/page/BadPage-chin.html
www/page/top.htm
www/page/menu.htm
www/page/upload_sd.htm
www/cgi-bin
www/cgi-bin/logpage
www/cgi-bin/input
www/cgi-bin/lsdir
www/cgi-bin/thumbNail
www/cgi-bin/output
www/cgi-bin/thumbRaw
www/cgi-bin/upload
www/cgi-bin/status
www/cgi-bin/playNote
www/cgi-bin/upload_sd
www/cgi-bin/motion_cgi
www/cgi-bin/photo
www/cgi-bin/photolist
www/cgi-bin/htmlcgi
www/cgi-bin/download
www/cgi-bin/thumb_video
www/cgi-bin/upload_to_sd
www/cgi-bin/datetime
www/cgi-bin/video
www/cgi-bin/rename
www/cgi-bin/preview
www/cgi-bin/folderOpt
www/cgi-bin/download_multi
www/downloadChin.jar
www/downloadJp.jar
usr
usr/bin
usr/bin/sha256sum
usr/bin/cmp
usr/bin/dirname
usr/bin/md5sum
usr/bin/microcom
usr/bin/lzopcat
usr/bin/arping
usr/bin/w3
usr/bin/seq
usr/bin/rcS7
usr/bin/fgconsole
usr/bin/rcS4
usr/bin/tftpd
usr/bin/telnet
usr/bin/env
usr/bin/volname
usr/bin/mount_sd
usr/bin/du
usr/bin/wall
usr/bin/uap
usr/bin/beep
usr/bin/w5
usr/bin/smemcap
usr/bin/lsusb
usr/bin/timeout
usr/bin/w2
usr/bin/udpsvd
usr/bin/xzcat
usr/bin/which
usr/bin/pmap
usr/bin/lspci
usr/bin/hexdump
usr/bin/xz
usr/bin/id
usr/bin/ifplugd
usr/bin/rcS2
usr/bin/dumpleases
usr/bin/pscan
usr/bin/refresh_sd
usr/bin/printf
usr/bin/ftpget
usr/bin/nslookup
usr/bin/tcpsvd
usr/bin/unlzop
usr/bin/flock
usr/bin/wget
usr/bin/clear
usr/bin/rcS6
usr/bin/w4
usr/bin/rcS1
usr/bin/renice
usr/bin/check_sta.sh
usr/bin/uap_sender
usr/bin/rcS5
usr/bin/pkill
usr/bin/mtdf
usr/bin/w2_receiver
usr/bin/copy_control_images_to_nor.sh
usr/bin/sha512sum
usr/bin/w1
usr/bin/w3es
usr/bin/showkey
usr/bin/mtdm
usr/bin/.copy_control_images_to_nor.sh.swp
usr/bin/ftpput
usr/bin/tftp
usr/bin/nc
usr/bin/softlink
usr/bin/unxz
usr/bin/top
usr/bin/autorun.sh
usr/bin/rcS3
usr/bin/restore_all_control_images.sh
usr/bin/readahead
usr/bin/uptime
usr/bin/w0
usr/bin/test_wireless1.sh
usr/bin/test_wireless2.sh
usr/bin/mt
usr/sbin
usr/sbin/setfont
usr/sbin/nbd-client
usr/sbin/dnsd
usr/sbin/flash_lock
usr/sbin/ntpd
usr/sbin/udhcpd
usr/sbin/httpd
usr/sbin/flash_unlock
usr/sbin/inetd
usr/sbin/ftpd
usr/sbin/telnetd
usr/sbin/flashcp
usr/sbin/flash_eraseall
usr/sbin/fakeidentd
usr/sbin/popmaildir
usr/sbin/dhcprelay
usr/sbin/rdev
root
sbin
sbin/tunctl
sbin/arp
sbin/ifdown
sbin/bootchartd
sbin/fdisk
sbin/mdev
sbin/udhcpc
sbin/vconfig
sbin/init
sbin/blockdev
sbin/route
sbin/mkdosfs
sbin/halt
sbin/acpid
sbin/sysctl
sbin/zcip
sbin/ifconfig
sbin/poweroff
sbin/devmem
sbin/blkid
sbin/mkfs.ext2
sbin/insmod
sbin/setconsole
sbin/modinfo
sbin/modprobe
sbin/fsck
sbin/reboot
sbin/depmod
sbin/rmmod
sbin/mke2fs
sbin/ifup
sbin/ifenslave
sbin/mkfs.vfat
sbin/nameif
sbin/start-stop-daemon
sbin/lsmod
proc
etc
etc/uaputl_sender.conf
etc/udhcpd.conf
etc/inittab
etc/uaputl.conf
etc/dnsd.conf
etc/dhcp.script
etc/wpa.conf
etc/init.d
etc/init.d/rcS.e
etc/init.d/rcS
etc/init.d/rcS.p
etc/udhcpd_uap.conf
etc/fstab
etc/wep.conf
linuxrc
8819 blocks
$

まぁ、良くあるinitramfsの中身、という感じ。
そして、wpa_supplicantとかbusyboxとか、ある意味おなじみのものがずらずらと・・・

/etc/inittabを見ると、/etc/init.d/rcS を起動している。
rcSからではいろいろ処理をやっているが、流れとしては以下の様な感じ。
・/usr/sbin/rcS1(=telnetd)を呼び出している。
・/usr/sbin/rcS2(=httpd)を呼び出している。
・SDカード上(=Flucard上)のautorun.shを実行。
・WiFiの設定をする

ただし、2012/03時点でのfirmwareでは、/usr/sbin/rcS1内のteletd起動はコメントアウトされているので、標準ではtelnetdが起動していない。

さて・・・ここまでの調査結果で言えることは・・・
・アップデータ自体に細工をすることは、おそらく可能
・initramfsを変更することでシステムファイルを置き換えることができる
・initramfsの書き換えに失敗して起動しなくなった場合の復旧方法は不明
・autorun.shは起動時に実行される。
・autorun.shは意図的に削除しない限り残るので毎回実行される
・ソフトを追加したいのであればautorun.shを使って処理をさせるのが一番

といったところか。

無線LANの接続性問題が出てきたりしたら、以下のようなバイナリを出力させれば置き換えも可能そうなので、なんとか対処しようがあるかなぁと楽観視。

$ file busybox wpa_supplicant
busybox:        ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, stripped
wpa_supplicant: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, stripped
$

そんなわけで、とりあえず、発注してみました。
届くのが楽しみです。

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

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

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

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

MT6573(MTK6573)チップ搭載3G Android携帯firmwareのメモ 2012/04/05版


MTKのMT6573チップ搭載の中華3G Android携帯。
いろいろでてますが、firmwareの入手先についてのメモ書き。
アップデート手法については過去記事「MTK6573搭載のAndroidスマートフォンのOSを書き換える」を参照のこと。

(2012/10/08追記: MediaTekのAndroid向けCPUチップにて他のCPUについて書いています)

ACER Users/ETEN Users Forum-ACER Tempo-ETEN – Acer Tempo DX900 – Two Souls In one
ACER DX900(WindowsMobile 6.5)を扱うフォーラムの中になぜか中華androidのスレッドがいくつか・・・

・MT6573系
HD7 3G / HD7 3GS
HD7 3G (MT6573) / HD7 3GS (MT6573) support thread
xda: [ROM] MTK6573 / Hero H7300 / HD7 Clone / T9299 Cooked ROM

G11i / G11i Pro
G11i (MT6513) / G11i Pro (MT6573) support thread

T9199+
T9199+ (MT6573) support thread

・MSM7227系
HD958
HD958 (MSM7227) support thread

・MT6516系(WCDMAなし)
HD9
HD9 (MT6516) support thread

ワコムの技術が入っているタブレットで使えるペン


Galaxy Noteでもワコムタブレットの技術が入っているので、ペンを流用したい!
という話が上がってくるかもしれません。
また、ASUS EP121を買ったけどペンが壊れたので新しいのが欲しい!なんて場合もあるでしょう。

でも、そのような場合に使えるペンについて、ワコムの製品別オプションページでははっきり記載されていません。

2012年4月現在、ワコムの技術が入っているタブレット、という触れ込みで販売されているものでは、一般向けでメインであるところの「intuos」「Bamboo」のペンは使えません。
「CintiQ」のペンもほとんどが使えません。(CintiQの超初期モデルだけ使える可能性があるそうです)
(もし、intuos系のペンが使える製品がワコム以外から出てたら教えてください)

基本的に、使えるものはArt PadII/UDIIシリーズのオプションであるUP型番のペンが利用できます。

お薦めは「hp PL800A」と「Lenovo 41U3143」です。
現状、一番流通していていて、安くて、消しゴム機能付きのペンだと思います。
ebayが大丈夫、というか英語が大丈夫な人は、「Motion Computing UP-714-37A」を買ってみるのがいいかもしれません。
(ちなみに、ネタ元としては、ASUS Eee Note EA800関連の国内外サイトを巡って情報を集めました)

— 2012/04/04 追記 start —
ワコム・ペナブルテクノロジー(Wacom Penabled Technology)のロゴが入っているものなら大丈夫ではないかと思っています。
EMR Pen Technologyというpdfにていろいろ紹介されています。また、ワコムのアメリカのページにペン一覧がありました。
— 2012/04/04 追記 end —


・ワコム純正

UP-801E
UP-811E / UP-811E-00H
UP-241
UP-401
UP-421
UP-501

・ワコム純正のおそらく使えるもの
UP-911E-01DD (液タブC-1500X(G)用)
UP-911E-02DD (液タブC-1700SX/DTU-710用)
UP-813E-00A (PL550用)
UP-7110E Grip Pen
UP-710E
IP-110 (液タブ DTI-520U用)
IP-100 (液タブ DTI-520U用)

・ASUS
型番: UP-610EA-93B-1 (Aee Pad EP121附属)
型番不明: Eee Note EA800附属

・富士通
型番:FPCPN28AP? (Lifebook T5010附属)

型番:CP323611-01 / UP-814E-66A (Lifebook T4200附属)

・Gateway (牛のマークのアレ)
型番: UP-7114E-69A (E-155,E-155C, C-120X, S-7125C, C-5815, C-5817C用)

・hp
型番:PL800A ( tc4400附属 )

・Lenovo / IBM
型番:41U3143 ( ThinkPad X60 Tablet/X61 Tablet/W700 用)

・SAMSUNG
型番: ET-S100EBEGSTA (Galaxy Note / SC-05D 附属のS Pen)

・SONY
VAIO LX附属

・東芝
型番: PA3316U / PA3316U-1ETC / PA3316U-3ETC

海外系
Motion ComputingのM1200/M1300/M1400用ペン
「UP-714-37A」という型番でebayを検索すると$40ぐらいで出てくる。

・Axiotron modbook
Macbookを魔改造してタブレットにしちゃう、というAxiotron modbookのペンのAxiotron Studio Pen (AXT-DPS01-0A01)がASUS EA800で使えるらしい、という話が海外サイトに・・・真偽は不明
(牛さんの情報でEP121で使えるとのこと。なので他でも使えるでしょう。購入方法についての解説があります)

不明
・PBJ Slate デジタイザ クロスペン CP510CS-02WX-OP
つぶれたPBJというパソコンメーカの出していたSlate Pen SIDP15B(ITmediaの記事)の附属ペンが画像を見る限りでは同等品のようにみえる。

・Wacom ペナブルクロスエグゼグティブペン CP510CS-02W
ワコム、“クロス”とダブルネームのタブレットPC用電子ペン『ペナブル クロス エグゼクティブペン』の販売を開始」などの記事によれば、「対応機種は、タブレットPCで、(株)東芝のdynabook SS 3500/M200、富士通(株)のFMV-STYLISTIC TB80/TB10、日本ヒューレット・パッカード(株)のHP Compaq TabletPC TC1100、 シャープ(株)の“Mebius MURAMASA”PC-TN1-H1W、日本エイサー(株)のTravelMate C100/C110、日本電気(株)のVersaPro タブレットPCなど。」というペンらしいので、使える可能性が高い。
また、「CP510CS-02W」という型番的には上記のPBJ Slate デジタイザ クロスペン CP510CS-02WX-OPと同系列っぽい、というのもある。