TP-Link TL-WR703Nで走るOpenWrtのアップグレード

TP-Link TL-WR703NにはOpenWrtをインストールしていたのだが、そのときはベータ版だったAttitude Adjustment 12.09の正式版が公開されていたので、これに今回アップグレードさせた。

アップグレードそのものはWikiで紹介されているsquashfs-sysupgrade.binをLuCi Web UIでアップロードするだけ。ただ、設定を維持する、としていても、それでも自分がインストールしていたopkgパッケージは再インストールしなくてはならないのは要注意。

ベータ版で特に不具合はなかったのに最新版にしたのは理由があった。今まで唯一のUSB端子にUSBメモリスティックを挿していただけだったのだが、将来的に他のUSBデバイスも使えるよう、USBハブ(USB2-HUB4X)を間にかます必要があった。そのときにはどうせ設定変更が必要であろうから、それなら一気に合わせて済ませたかった。

そのUSBメモリスティックは少ない本体メモリを補うために使用していた。そのときは時間がなかったこともあり、何も考えず“How to increase storage on TP-Link WR703N with ExtRoot“をなぞっただけだったが、OpenWrtのアップグレードをし、USBハブを挟んだ上で同様にしようとしてもうまくいかない。後になって考えてみれば、USBメモリの内容は新しいファームウェアのもので置き換えられなければならないのに、全くそういうことをやっていなかったのだから、思うような結果にならず、/tmp/whole_root-disabledにマウントされるだけになっていたのはむしろ当たり前だがすぐは気が付かなかった(どうもチェックサムで整合性をチェックしている模様。芸が細かい)。

今回は“Rootfs on External Storage (extroot)“や”ExtRoot: How it works“を読んだ。外付けストレージをrootfsとして使用するExtRootにはpivot overlayとpivot rootの2方式があり、以前なぞった紹介記事ではpivot rootに則っていた。しかし、“Rootfs on External Storage (extroot)“はpivot overlay方式を勧めているのと、それだとLuCi Web UI上で簡単に設定できるようなので(USBメモリスティックが正しく準備できていれば。その上でLuCi ではSystem->Mount Points->Mount Pointsで設定できる)そちらに鞍替えすることにした。/overylayの説明は”The OpenWrt Flash Layout – OpenWrt Wiki“に。

自分が書いた簡単なスクリプトファイルなど保存が必要なファイルのバックアップを取ってからUSBメモリスティックをExt4で再フォーマットした上で、本体から必要なファイルのコピーを行い、あらかじめ保存しておいた自作ファイルも戻した。後はLuCiで上述の箇所での設定をし、リブートするだけ。

結果としてはハブを介して、別のUSBデバイスを接続しても、USBメモリスティックは同じデバイスとして認識されたので、実はアップグレードしなければ設定の変更は必要なかったようだが、まぁアップグレードはやって悪いことじゃないし、と割り切ろう。自分の理解が正しければpivot overlayの方がpivot rootに比較してメモリ消費が節約されるはずだし。

広告

[Old] Running OpenWRT on TL-WR703N

I wrote below quite a while ago — at least more than a year ago. So some of the info contained herein must be outdated now, if not downright false. It’s just bits of random info — probably not helpful to anybody but me.


1. General

TP-Link’s TL-WR703N

there still seems to be issues with the DD-WRT for this device

TP-LINK TL-WR703N – a tiny Linux-capable device for under $23 delivered

OpenWRT forum

OpenWRT router WR703N smart home automation compared to Rasp

Manual

2. Client Mode

detailed discussion on the client mode of Open Wrt

There were a few resources, but

Routed Client with relayd (Pseudobridge) is the definite one and I should have stuck with this from the get-go.

How To – Relayd shows how to do it with Luci, but missing or not stressing enough a few important points. Install relayd, luci-proto-relay

LAN-side IP has to be static, pretty obvious in hindsight

has to give an IP of a different subnet for relaying

Still not sure how to stop the DHCP server (not client) on the LAN side from Luci, but I made sure I did that with uci.

quite easy to get into the failsafe mode Just pressing the reset button will put you in the failsafe mode; you can then continue from here.

Buffalo WZR-HP-AG300H

I wondered if I could also install Open Wrt into Fonera Simpl or Fonera 2405E, but I basically gave it up because it requires soldering, which I am not capable of.

3. Using External USB Memory Sticks to Increase Storage

How to increase storage on TP-Link WR703N with ExtRoot

Rootfs on External Storage (extroot)

Android端末に物理キーを追加するイヤホンプラグ型ボタンiKey

Android端末に物理キーを追加するイヤホンプラグ型ボタンが発売 – AKIBA PC Hotline!」を見て興味をもった(その後「Android端末に物理キーを追加するプラグ型ボタン『iKey』が再入荷 (取材中に見つけた○○なもの) – AKIBA PC Hotline!」 という記事も出た)。 なぜなら自分のメイン端末HTC J ISW13HTにはカメラ・ボタンがないからだ。それならそれで、それに最初から慣れていればそれで済んだと思われるが、その前に使っていたXperia 2台(X10 Mini E10iとAcro IS11S)には専用のハードウェア・ボタンがあり、それに慣れてしまっていたので、ずっと不便に感じていた。それにBluetoothヘッドセットを常用しているので、有線ヘッドセット用のオーディオ・ジャックは全く使用していない。それを利用してハードウェア・ボタンが追加できるのなら万々歳ではないか。

というわけでちょっと調べてみた。

まず、iKeyAndroid.comにはプロモーショナル・ビデオ以外目立ったコンテンツがない。iKeyアプリはPlayストアからも入手できる。

類似品もある。「スマホのイヤホンジャックに付けるアプリ起動用ボタンが登場」で紹介されているのはGalaxyシリーズ用という触れ込み。パッケージに同梱されているQRコードをデコードするとhttp://zhijian.360.cn/download/app.html というURLだった。ケースが同梱されるところはNEW Original Xiaomi MiKey mi key quick button dustproof plug Earphone 360 key Smartkey for XIAOMI Mi2s Hongmi MI3 andriod phones-in Dust Plug from Electronics on Aliexpress.comと同じ。送料無料で$4.10。日本での価格は500円(税抜き)。

New Klick Almighty Button Smart Phone Dustproof Plug for Android Smartphone Hot-in Dust Plug from Electronics on Aliexpress.comは送料無料で$1.72。アプリは快按钮 KlicK。iKeyアプリに対しては英語のレビューがほとんどなかったが、こちらについては結構ある。アプリの表示言語は半分英語で半分「アジア系言語」でわかりづらい、アプリにバグが多い、反応が遅い…などといった苦情。HelloKlick.comのが本家ウェブサイトか。

Tmartの商品説明の中ではiKeyもKlickも一緒くたになっている。

これらデバイスは、要はPressy別のウェブサイト)のパチもんのようだ。いいアイディアだと思うけど、1台$27ねぇ…。

予期してた通りの何の変哲もないパッケージング

予期してた通りの何の変哲もないパッケージング

さて、どれを買うか。値段の安さだけを追求するならKlickだろうが、一応日本で販売されているからにはある程度はしっかりしていると期待できるiKeyにすることにした。とはいえ、980円(税抜き)も出すだなんてありえない。IKEY quick button smart phone dustproof plug for andriod cellphone 3.5mm headphone dust plug in stock Free SG Post-in Dust Plug from Electronics on Aliexpress.comが送料無料で$3.28で注文。今見たら$3.12になってた。

設定アプリでは、ボタンのシングル・クリック、ダブル・クリック、トリプル・クリック、そして長押しの4通りについて、それに対応するアクションが設定できる。HTC J ISW13HTではシングル・クリックだけしているつもりでも、ダブル・クリック用に指定されたアクションが起こったりしていたのだが…今念のためやってみると正しくクリック回数を認識して動作している。なぜだ?

比較のために「ほなみん化」したXperia Acro IS11Sで使用してみると、最初から安定してクリック数が正しく区別された。ちなみに、GBのXperia X10 Mini E10iではアプリそのものがインストールできない。いずれにせよXperiaにはそもそもカメラ用ハードウェアボタンがあるので、iKeyは必要ない。

画面が消灯している状態でも、ボタン押し下げでロックが外れてアプリ(特にカメラアプリ)が起動してくれると嬉しかったんだが、それはできない模様。その他若干のタイムラグがあるとか、不満はあるにはあるが、値段を考えれば十分許せる。満足。

ソフトバンク740SCのアンロック

日本に帰国して最初に自分用の携帯電話として入手したのがソフトバンクのプリモバイル端末サムソン740SC。これをSIMフリー化することについては、「SoftBank 740SCを SIMフリー化してドコモやみまもりSIMを使う方法」に記載があるが、最初の方法としてあげられているNew PC Studioを使う方法はガセの模様。

他の方法としては業者に800円+送料500円で依頼する、とか、SIM下駄を履かすとかいった方法がある(iPhone用SIM下駄)。

届いたSIM下駄。説明書の類は一切なし。

届いたSIM下駄。説明書の類は一切なし。

結局最初の記事に、成功するとして出ているSIM下駄と写真では似通って見える、という単純な理由で、Universal Turbo Unlock SIM Card for Mobile Phone with Anvanced Technologyを注文。送料無料で$9.50。本体SIMロック外しではなく、SIM下駄を使う方法を利用したのは、こちらの方が、他の端末でも使えるので使い回しができそうだから。

SIM下駄の高さのあるチップ部を避けるよう自分で隅をカットしたSIMカードとSIM下駄を740SCのSIMスロットに挿入

SIM下駄の高さのあるチップ部を避けるよう自分で隅をカットしたSIMカードとSIM下駄を740SCのSIMスロットに挿入

配達されてみると、単にSIM下駄を収めた小さい・薄いケースがあるだけで、説明書の類は一切なし。SIM下駄自身が標準サイズのSIMカードと同サイズなので、標準サイズのSIMカードと使おうとすると、切り欠きのある隅にあるチップ部分にあたってしまう。なので、カッターを使って微妙にSIMカードを切断した。

少し苦労したが無事装着でき、みまもりSIMを認識してくれた。格安料金のケータイ電話の完成である。

重要な補足:こうやってSIM下駄を履かせたみまもりSIMを挿入した740SCでは、SMSの送信はできるものの、受信ができない模様。何か自分が見落としている可能性はあるが、今のところ解決策が見当たらない。MMSは送信・受信ともできるが、新たなMMSの通知は内部的にはSMSで行われているようで、SMSが受信できないため、MMS受信の自動通知はなされない。手動で受信する必要がある。

911SHにSIM下駄とSIMカードを合わせて挿入するのは大変

さらに重要な補足:試しに父の古いガラケーシャープ製ソフトバンク911SH別のサイト)に挿してみると…SMSの受信も問題なくできる。よってMMSを受信したことの通知も自動で行われる。

ただし、911SHにSIM下駄とSIMカードを合わせて挿入するのは大変だった。取り出すのはさらに大変で、ラジオペンチを使って引っぱり出さなければならなかった。

さらに重要な補足:740SC自身は結局後日業者に依頼してアンロックしてもらった

USB GSM/UMTSモデムを介したSMSやMMSの送信

USB GSM/UMTSモデムを介してSMSやMMSを送信する方法。

SMS:

MMS:

  • Unix風システム用にはMBuni。オープンソースで無償。上記Kannelに依存。マニュアルはわかりにくいが、”How to get personal CCTV MMS’d to your phone”はまし。
  • ちなみにMMSClientという2003年以降メンテされてないソフトがあるが、これもKannelをベースにしている模様。
  • Windows用にはNowSMS。有償のコマーシャルソフトで価格は問い合わせないとわからない模様。Android端末をモデムとして利用することもできる模様。

 

ANT+準拠の無線心拍計と連携させるAndroidアプリ

Sony Ericsson Xperi X10 Mini E10iと併用するつもりで購入したANT+準拠の無線心拍計が、無事配達されテストでEndomondoアプリの併用してみた

で、Endomondoで心拍数を定期的に読み上げてくれない、と思って下線以下を延々と書いたのだが、実はできることがわかった(なんという労力の無駄…調べ方が甘かった)。欲を言えばきりがないが、これで自分の基本的な目的は達成される。

惜しまれるのは、運動の種類にかかわらず音声読み上げの設定が一種類しかないこと。屋外で走っているときには、スピードや時刻も知りたいが、屋内のジムでウェートトレーニングをしているときには心拍数だけでいい。別々のプロファイルで設定できるといいようなものだが、それができないようだ。

後、表示項目を減らすことで、表示する項目の文字サイズを大きくできるとよかったが…。

 


 

それで基本的に動作することは確認できたが、これからどのアプリと併用するかが問題になる。ANT/ANT+に関するポータルThisIsAnt.comで検索するとANT+無線心拍計と連携できるAndroidアプリが16掲載されている。

自分のアプリに対する要求項目をあげると以下のようになる:

  • 一番大事なのは心拍数。心拍数帯によって「ゾーン」分けした、いわゆるゾーン・トレーニングがしたい。
  • なので、心拍数を随時表示して欲しいが、表示よりも重要なのはそれを適宜TTS (Text-To-Speech)で読み上げてくれること。老眼で文字表示だと見づらい(特にX10 MiniのQVGA画面では)、というのも理由であるし、そもそも画面を見ないでいいように済ませたい、というのも理由。
  • この手のアプリにはGPSでログを取る、スピードを測定する、あるいはナビさせる、といった、ランナーや自転車乗りをターゲットにして生まれたものが多い。そういう機能はもちろんあって困るものではないし、自分が走った軌跡を地図上で見たりできるのは楽しい。しかし、自分に取ってはそれはあくまでおまけ的機能。インドア・ジムでウェイトトレーニングすることもあるし、そこで役に経たなければ意味がない。
  • そうやって得られたデータを自動的にアップロードするなどしてウェブサイト上でも見られるのが望ましい。人に見せる必要はないが、X10 MiniのQVGA画面上でしか見られないのは辛い。

既に購入済みのEndomondo Sports Tracker Proが上記項目を満たしていればそれでめでたし、めでたいし、だったし、そうだと期待していた。が、心拍数を音声で告げてくれるとか、予め指定したゾーンから外れたらそれを知らせる、とか、そういう機能は、それに対するリクエストがたくさんあるところを見ると、実装されてない模様。

Premium版ではゾーンごとの統計が取れるが、アプリ単独ではなされず、専用ウェブサイト上で表示されるだけ。つまり、ゾーン・トレーニングそのものはできない…と思われる。これでは自分の目的には適わない。 そもそも月~$4、あるいは年~$30はこういったアプリにしては高い。サブスクリプション制で課金されるとずっと使い続けるとかなり高くつく。

他のアプリを探さなければならないようだ。

いずれにせよ無線心拍計をサポートしていることが必須だが、Bluetoothのものしかサポートしていないものは当然選から外さざるをえない。これで外したのはiCardioRunware Heart Rate MonitorCardio TrainingCardiometer ANT+ Heart RateHeart Tracker。これらの開発者にはANT+心拍計をサポートするようリクエストしたのだが、Cardio Trainingアプリの作者からは返事があり、近々サポート予定とのこと。

ANT+のサポートは一般的には(というかSamsung機において?)Android 4.x?からなので、それを要求しているアプリはそれだけでGingerbreadベースのROMを積んでいるX10 Miniにはインストールできないが、できてもANT+心拍計は利用できない。これが理由で外したのはCardiometer ANT+ Heart Rate appHeart Rate LoggerSportsTracker (by STL)

特にSportsTracker (by STL)Web上のヘルプ )については残念で、もしGBをサポートしていればこれを選んだろう。音声による状態読み上げが細かく指定できるようでよい。ANT+準拠の無線心拍計をAndroid 4以降でサポートしている。実際、4.3を載せた父のGalaxy Note 3ではその通り利用できる。サポートのBBSにGBもサポートするよう要望を出してみたPro版は452円

全般的傾向として、アプリに無償版と有償版がある場合、心拍数の単なる表示・記録は無償版で対応していても、ゾーントレーニングのサポートは有償版でのみサポートされていることが多いようだ。必要な対価を支払うのにやぶさかではないが、サブスクリプション型のは避けたい。実際に使ってなくてもどんどん課金され続けてしまうからだ。どうせ有償なら一回の支払いで済む形式のものが望ましい。

Google謹製My Tracksは、設定で心拍計と接続できることを確認しようとしたができなかった。それでもともかく記録を始めてみたらそこで初めて心拍計と接続を試みた。Wikipediaによると2014年にオープン・ソースでの開発を取りやめることになった。いつか”spring cleaning”とかいう名目で開発が打ち切られるのではないか。

そうでなくても機能的に不満が残る。記録をGoogle Driveに残せるのだが、位置データしかない模様。心拍計の推移など、自分がもっとも興味ある部分は、アプリ内で提示されるグラフを見るしかない。

BigFontで表示文字を強制的に大きくした状態でQVGA画面のX10 MiniでSelfloopsを走らせると悲しい表示に

BigFontで表示文字を強制的に大きくした状態でQVGA画面のX10 MiniでSelfloopsを走らせると悲しい表示に

SelfloopsはANT+をサポートしているのだが、TTSがMiniCM 7上ではついぞ動かせなかった。何度見ても設定画面にそれらしい項目がない。何か自分の操作が悪いのだろうか。4.3のGalaxy Note 3ではできたのに残念。

知人に教えてもらったOruxMapsは恐ろしく多機能な、自転車乗りを主なターゲットにしたアプリ(OruxMaps.com)。「神アプリ」と呼ぶ人がいるようだがそんなたいそうな名にも恥じない出来。219円の寄付もできるが、そうでなくても無償で全機能を使用できる。オフラインマップの使用が大きなウリで英文PDFマニュアルではその作成方法に大きな割合が割かれている。データ通信もできないような山奥などまで自転車で行くような人には全くうってつけだろう。

ANT+心拍計はサポートしているしTTSによる読み上げ機能もあるが、残念ながらその間隔が距離でしか指定できない。つまり、あくまで場所を移動しながらの使用が前提になっているため、残念ながら自分の目的にそぐわない。

IpBike ANT+™ Bike Computerも基本はOruxMaps同様自転車乗りをターゲットにしていて、負けず劣らず高機能な模様。ただし、無償版では機能制限があり、機能制限を外すには599円かかる。心拍計の連動させるには、まずIpSensorManというアプリを追加でインストールすることを求められた。

ただ、自分がどう設定しても心拍数の読み上げをさせることができなかった。

ちなみに、父のSamsung Galaxy Note 3にプリインストールされているS Healthというアプリでは、あっさり心拍計を認識して、使えるようだった。

ランナー向けに有名なのはEndomondo, Runtasitc, Runkeeper

その他;

  • ANT+ Heart Rate Grapher いわば公式デモアプリ。単にグラフにするだけ。開発元は同種のアプリを、対象スポーツ競技ごとに出している。
  • Heart Rate Monitor Ant+ 原始的。
  • Fitbeat Heart Rate monitorは”5.3K heart rate chest belt (Polar, Fitcare etc)”と連携する、と言っているので、ダメだろうと思いつつ念のため試したらやはりダメだった。

EndomondoアプリとANT+心拍計を連携させる

Endomondo Sports Tracker Proでも問題なく接続

Endomondo Sports Tracker Proでも問題なく接続

うまくいくか心配だったが、Sony Ericsson Xperi X10 Mini E10iと併用するつもりで購入したANT+準拠の無線心拍計が、無事配達され、試してみると無事正常に動作した

Endomondo Sports Tracker Proを以前アプリ10円キャンペーンだかのときに購入していたので、早速それと心拍計を併用して、運動をしてみた。

アプリは、ちょっと最初まごつく感じがあるがしばらくすると心拍数を表示し始めた。だが、残念ながら、そうでなくても2.55インチ、QVGA (320 x 240)の画面しか持たないX10 Miniでは、文字が小さすぎて普通には読めない。何につけ老眼は惨めな気分にしてくれる。

実は見えないのはそもそも計算のうちで、代わりに音声で知らせてくれることを期待していたのだが、このアプリにその機能はない模様 その機能はちゃんとある。走りに関する、走行距離やら、1km当たりの所要時間とかは言ってくれるんだが。

Endomondoアプリによる記録をEndomondo.comで見ると表示されるグラフ

Endomondoアプリによる記録をEndomondo.comで見ると表示されるグラフ

Endomondoアプリはエクササイズのログデータを自動でサーバーにアップロードしてくれる。それをEndomondo.comウェブサイトで閲覧するとこのようなグラフが提示される。

今回はテスト目的だったので、1. 自宅からジムまでの軽いジョグ, 2. ジムでのウェートトレーニング, 3. その後親戚宅へ徒歩で移動, 4. 親戚宅で談笑, 5. 親戚宅から自宅まで徒歩、ただし途中でダイエーで買い物、という、運動以外の期間も合わせて記録させてみた。ジムでのウェートトレーニング中にはGPSは無意味なので切ったが、その後すぐ再度オンにしなかったため、本来はGPSによる一記録が意味のあるフェーズでも記録されてないところがある。グラフの真ん中に、高度 (altitude)に変化のない長い部分があるのはそのためである。この間スピードが徐々にしろ上がったことになっているのは謎。

トレーニングを行ったジムの様子

トレーニングを行ったジムの様子

30分過ぎまでの最初の山はジムまでのジョグの様子を示している。その後、エアロバイクを30分強こいだ。この間に最高心拍数185bpmを記録している。その後、ウェートマシンでウェートトレーニングしたのだが、心拍数の推移を見ると強度はさほど強くなかったようだ。記録を開始して2時間を過ぎたあたりでジムを出て、親戚宅に徒歩で向かったのだが、この間も心拍数が150程度で維持されたのが自分には興味深い。坂道だったからか。

ログを取っていた端末とは別の端末上のEndomondoアプリでもログを見ることができる

ログを取っていた端末とは別の端末上のEndomondoアプリでもログを見ることができる

ログを取っていた端末とは別の端末上のEndomondoアプリでもログを見ることができる。左のグラフはHTC J ISW13HT上のEndomondoアプリで同じデータを見てみたときの表示。ただ、X10 Mini上ではこのグラフをアプリは表示してくれない。Androidのバージョンに起因するアプリの動作の違いの表を見ても、サポートされるはずなんだが…。

嬉しかったのはXperia X10 Miniの電池が家を出て家に帰り着くまでのほぼ4時間の間単独でもったこと。モバイルバッテリと併用という手はもちろんあるが、そうするとせっかくの優れた携帯性が損なわれてしまう。最近は2000mAh超えの容量の電池を持つ端末はもう普通なのに、なにせX10 Miniの内蔵電池の容量はわずか950mAh。しかも、電池の取り替えが(簡単には)できないので、購入当初のもののままだ。1年ほどは自分がメインの端末として使っていたのだから、電池は確実にヘタってる。

Wifiは切っていたし、SIMカードも挿してなかった。GPSも必要ないときには切るようにした。これらが貢献したのだろう。MiniCM 7のundervoltingの機能も有利に働いたのかもしれない。本格的に使いはじめるときにはSIMカードを挿すつもりなので、そうすると電池の持ち時間は減ると予想されるが、そもそも4時間もつ必要はない。

自分としては大いに愛着のあるX10 Miniをこのまま引退させるのは忍びないと思っていたが、思いっきり有効利用できそうで非常に嬉しい。BLE以前のBluetooth心拍計なら頻繁に充電しなくてはならないところ、BLEと同レベルの、ボタン電池1つで1年持つというこのANT+心拍計にも非常に満足している。