はじめに...
準備編で次の状態であったものが対象になります。
準備編:中華カメラをHack!? / P2P 通信と miSafes D304
C状態:『Misafecam』からカメラの接続が出来なかった。カメラの映像は見えない。または新品の状態。
『Misafecam』サービスが停止したので、**TUTK P2P Server(ThroughTek Co.)**の認証IDは発行されません。
miSafes D304 は使えるのに、、、そこで無理やり動作させてみましょう!!
この記事を見て分からない方は、**こちら**を参照してください。
ここから先は、自己責任でオペレーションです。
概要...
準備編で取得した microSD のファイル『misfaes_D304_config_sportdv_sysenv.out』を**『サクラエディタ』**などで開くと、見事に認証情報が無い...
例
No Wifi Select ・・・WiFi 接続設定は、なし
a8888888 ・・・TUTK P2P 認証ID、パスもなし
No Wifi Select ※ ルーターのSSID名が表示されない
admin
admin
a8888888 ※ TUTK P2P 認証IDが、無い
SY_MCP_IPC
INFOTM
shanghai
Debugモードですが『strings /opt/ipnc/p2ptutk』を実行すると情報があります。
参考:UART接続でコマンドを実行
# strings /opt/ipnc/p2ptutk
:
Note:Now is AP Mode for TUTK debug, guid:"1111111111AAAAAAAAAA" pwd:"a8888888"
wifi.bin
app_qiwo
wifi_pid:%d qiwo_pid:%d
echo 1111111111AAAAAAAAAA > /mnt/config/guid_file ※ TUTK P2P 認証ID
echo a8888888 > /mnt/config/guid_file_pwd ※ TUTK P2P 認証パスワード
/wifi/broadcom_ap6212/ap6212_setup.sh AP & ※ カメラの WiFi を APモードで起動
:
Debug 用の TUTK P2P 認証ID、パスワードを設定して、カメラの WiFi を APモードで起動となります。
しかし、カメラの設置場所とスマホ・アプリ『P2P CamLive』の距離がかせげなければ運用には使えません。
そこで『1. ルーター使用』の状態で運用したいと思います。
ルーター経由で使用しますが、Dubug モードである為 P2P TUTK Server は経由しません。
この為、外出先からカメラの映像は見ることはできません。
『strings /opt/ipnc/p2ptutk』の実行結果ですが、ループ録画する為のプロセスが無いので起動している必要があります。
最低限どのようなプロセス、設定が必要かをザックリ書くと...
プロセス名 | 説明 |
---|---|
/opt/ipnc/avserver_q3.bin | ループ録画する為に必要 |
/opt/ipnc/p2ptutk | TUTK P2P Server との通信に使用、『P2P CamLive』アプリとの通信に使用 |
/opt/ipnc/app_qiwo | qiwocloud との通信に使用、『P2P CamLive』アプリとの通信に使用 |
設定ファイル | ファイルの内容 | 補足説明 |
---|---|---|
/mnt/config/guid_file | 1111111111AAAAAAAAAA | Debug 用の P2P CamLive 認証ID |
/mnt/config/guid_file_pwd | a8888888 | Debug 用の P2P CamLive 認証パスワード |
/mnt/config/reg_info_file | 空ファイルでOK | ファイルがあるとループ録画を実行 |
/tmp/dhcpcd-wlan0.pid | WiFi プロセスID番号 | ※注意 /opt/ipnc/p2ptutk 起動時にチェックされる |
※注意 | ||
『/tmp/dhcpcd-wlan0.pid』を touch、mkfile などで手動作成するとOSが起動しなくなります。 | ||
/wifi/broadcom_ap6212/dhcpcd -d --noipv4ll wlan0 コマンドを実行すると、自動的に作成されます。 |
何が必要か整理してみます...
概要をもとに1~15 を用意して misfaes D304 を動作させてみましょう。
1.telnetd がある、BusyBox を準備 ・・・ busybox-armv7l を microSD に保存
2.WiFi ルーターへ接続する設定 ・・・ wpa_supplicant.conf
3.P2P Debug 用の認証IDを設定 ・・・ /mnt/mmc/P2P_GUID_debug-create.sh を作成
ループ録画・認証ファイルを作成 ・・・ touch /mnt/config/reg_info_file
4.OSをwrite可能でマウント ・・・ mount -w -o remount /dev/root /
5. 判定:1回目であれば、P2P_GUID_debug-create.sh 実行
6.telnet ユーザ作成 ・・・ adduser... Admin
7.telnetd デバイス設定、プロセス起動 ・・・ /sbin/telnetd
8.telnet ユーザが su - root 実行可能にする ・・・ chmod u+s /bin/busybox
9. ループ録画のプロセスを起動 ・・・ /opt/ipnc/avserver_q3.bin &
10.P2P TUTK 接続プロセスの起動準備 ・・・ /tmp/wpa_supplicant.conf
11.WiFi 起動、ルーターへ接続 ・・・ /wifi/broadcom_ap6212/wpa_supplicant
12.WiFi IPアドレス取得、dhcpcd-wlan0.pid作成 ・・・ /wifi/broadcom_ap6212/dhcpcd -d --noipv4ll wlan0
13. p2ptutk 起動前のタイミング調整 ・・・ sleep 60
14. P2Ptutk 起動時にWAN接続が無く、Debugであると偽装 ・・・ route del default
15. P2P CamLive 接続用に P2Ptutk 起動 ・・・ /opt/ipnc/p2ptutk &
misfaes D304 起動ファイルを microSD に作成...
1.telnetd がある、BusyBox を準備
BusyBox公式サイトから、misfaes D304 が使用する『BusyBox v1.21.1』と同じものをダウンロードします。
ダウンロードしたバイナリ・ファイルは、FAT32フォーマットの microSD に保存します。
BusyBox v1.21.1 ダウンロード・リンク
Name Last modified Size Description
busybox-armv7l 2013-07-09 02:02 1.1M ※ microSD へ保存
2.WiFi ルーターへ接続する設定
これから使用する設定ファイル、シェルは**『サクラエディタ』などで編集します。
保存する時は改行コードを『LF(UNIX)』で保存してください。『サクラエディタ』**は『LF(UNIX)』の改行にすると『↓(下矢印)』で表示されます。
wpa_supplicant.conf ファイルの ssid、psk をWiFiルーターの設定に変更して、microSD へ保存します。
ssid="使用しているルーターのSSID"
psk="使用しているルーターのSSIDパスワード"
ctrl_interface=/var/run/wpa_supplicant
update_config=1
ap_scan=1
network={
ssid="Buffalo-G-E320" #### Your router's SSID
pairwise=TKIP CCMP
group=TKIP CCMP
key_mgmt=WPA-PSK
psk="r0ot@dmin" #### Your router's SSID authentication path
}
3.P2P Debug 用の認証IDを設定
『P2P_GUID_debug-create.sh』は変更・修正なしで動作するので、microSD に保存します。
P2P Debug 用の認証IDは、2つのディレクトリにファイルを設定
・バックアップ用のディレクトリ /mnt/backup
・OS起動時に読み込まれる設定 /mnt/config
・このシェルの実行完了の判定用ファイルを作成 touch /mnt/mmc/GUID_create_finish
echo "--- P2P guid create ---------------------"
kill -9 `ps | grep 'testlauncher.sh' | grep -v 'grep' | awk '{print $1;}'`
mount /dev/mtdblock3 /mnt/backup
df -h
echo 1111111111AAAAAAAAAA > /mnt/backup/guid_file
echo a8888888 > /mnt/backup/guid_file_pwd
touch /mnt/backup/reg_info_file
echo 1111111111AAAAAAAAAA > /mnt/config/guid_file
echo a8888888 > /mnt/config/guid_file_pwd
touch /mnt/config/reg_info_file
touch /mnt/mmc/GUID_create_finish
umount /mnt/backup
reboot
echo "-----------------------------------------"
4~15.testlauncher.sh ファイルの作成
『4. OSをwrite可能でマウント』~『15. P2P CamLive 接続用に P2Ptutk 起動』を testlauncher.sh に設定します。
こちらもファイルの変更・修正なしで動作するので、microSD に保存します。
(telnet ユーザ Admin を変更するなどは、皆さんでカスタマイズしてください。)
mount -w -o remount /dev/root /
ls /mnt/mmc/GUID_create_finish || /mnt/mmc/P2P_GUID_debug-create.sh
echo "--- telnet user setup -------------------"
grep Admin /etc/passwd || cp -p /etc/passwd /etc/passwd_original
grep Admin /etc/passwd || cp -p /etc/shadow /etc/shadow_original
grep Admin /etc/passwd || cp -p /etc/group /etc/group_original
grep Admin /etc/passwd || adduser -h / -g "maintenance user" -G root -s /bin/ash -D Admin && passwd -d Admin ''
echo "--- telnet sevrer setup -----------------"
ls /sbin/telnetd || ln -s /mnt/mmc/busybox-armv7l /sbin/telnetd
ls -l /sbin/telnetd
echo "--- telnet access-device setup ----------"
echo "pts/0" >> /etc/securetty
mkdir /dev/pts
mount -t devpts none /dev/pts
/sbin/telnetd
echo "--- Admin user -> su - root command -----"
chmod u+s /bin/busybox
echo "--- microSD /mnt/mmc/DCIM record-start --"
/opt/ipnc/avserver_q3.bin &
echo "--- Needed to start p2ptutk process -----"
cp -p /mnt/mmc/wpa_supplicant.conf /tmp/wpa_supplicant.conf
chmod 644 /tmp/wpa_supplicant.conf
echo "--- wifi manual connect command ---------"
/wifi/broadcom_ap6212/wpa_supplicant -Dnl80211 -iwlan0 -c/mnt/mmc/wpa_supplicant.conf &
sleep 10
/wifi/broadcom_ap6212/dhcpcd -d --noipv4ll wlan0
sleep 60 ## CAUTION P2P timing adjustment
route del default
/opt/ipnc/p2ptutk &
echo "--- SETUP LOG ---------------------------"
busybox ifconfig wlan0 > /mnt/mmc/wifi_network_address.txt
echo "--- Script END --------------------------"
16.microSD 確認
microSD に 4つのファイルがあれば準備完了です!!
busybox-armv7l
wpa_supplicant.conf
P2P_GUID_debug-create.sh
testlauncher.sh
misfaes D304 起動...
『testlauncher.sh』を保存した microSD をカメラに挿入し、POWER OFF/ON するとシェルが自動実行します。
misfaes D304 の起動完了まで、約120秒かかります。
「WiFi 成功につながって(中国語)」、60秒後に「WiFi 成功につながって(中国語)」と2度の音声ガイダンスがあれば起動成功です!!
telnetd も起動しているので、リモート・ログインが可能です。
misfaes D304 のIPアドレスを確認し、TeraTerm などを使用して telnet を実行します。
telnet する IPアドレスの確認例
・ルーターから DHCP クライアントのIPアドレス割り当て
・microSD に出力された『wifi_network_address.txt』
(none) login: Admin ※ Admin ユーザーは、パスワード無し
$ passwd Admin
Changing password for Admin
New password: 新パスワードを設定
Retype password: 新パスワードを再度入力
Password for Admin changed by Admin
$ su - root
su: can't change directory to '/root' ※『can't change directory』は /etc/passwd の誤りにより発生
# cat /etc/passwd
root::0:0:root:/root:/bin/sh ※ root::0:0:root:/:/bin/sh に修正すると、上記警告は表示しません。
修正せず放置でも、問題はありません。
# id
uid=0(root) gid=0(root) groups=0(root),10(wheel)
# /bin/busybox ※ BusyBox コマンド一覧
# /mnt/mmc/busybox-armv7l ※ microSD にある BusyBox コマンド一覧
注意
/etc、/usr、/opt、/tmp などで、ファイル作成・削除を行うとOSが二度と起動しなくなる可能性があります。
/mnt/mmc(microSD)でファイル作成・削除を行うようにします。
TUTK P2P 対応のアプリは...
**TUTK P2P(ThroughTek Co.)**に対応したアプリをインストールして、TUTK P2P 認証を行えば完了です。
テスト動作は確認していますが、探せば他にあると思います。
P2P CamLive
tinyCam Monitor FREE - IP camera viewer
設定例
P2P CamLive では、『LAN内を検索』を実行すると TUTK P2P 認証ID が表示されます。
『パスワード設定』に TUTK P2P 認証パスワードを入力すれば完了です。
例
1111111111AAAAAAAAAA ・・・ TUTK P2P 認証ID
a8888888 ・・・ TUTK P2P 認証パスワード
自宅 WiFi 圏内になりますが、リアルタイムの映像が見ることができます。
microSDに録画された映像を再生する時は、『再生編:中華カメラをHack!? / miSafes D304 録画を再生』を参照してください。