Google Fitと同期する体重等の身体データを記録するAndroidアプリ

Weight Track Assistantは各種関連情報の入力をサポート(画面に全て表示されていない)

Weight Track Assistantは各種関連情報の入力をサポート

Monitor Your Weightで入力できる関連データの種類は少ない(画面に全ては表示されていない)

Monitor Your Weightで入力できる関連データの種類は少ない(画面に全ては表示されていない)

2年以上使っているソフトバンクの「スマート体組成計 301SI」はソフトバンクの専用サイトにデータを自動でアップロードする機能があるが、その回線契約を解約したため、それが利用できなくなった。 “みまもりが主目的の体重計” でそれに細工をすることで同様の機能を実現するか、ないしは同様の機能を持つ他のスマート体重計の購入も検討したが、結局どちらもやっていない。なので、手作業で301SIの示すデータを記録していくことにし、それためのAndroidアプリを探した。

要件は以下の通り:

  • ソフトバンクの「スマート体組成計 301SI」で得られる各種数値を極力多く保存。製造元のセイコーソリューションズの用意しているこの製品のウェブページを参照すると、以下のデータが得られることになっている。
    測定項目 体重: 0~136kg(ただし体重確定は5kg以上から)
    (5~100kg=100g単位、100~136kg=200g単位)
    体脂肪率:5.0~75.0%(0.1%単位)
    BMI:0~136.0(0.1単位)
    基礎代謝:100~2,999kcal(1kcal単位)
    内臓脂肪レベル:30レベル表示(0.5単位)
    身体年齢:18~80歳(1歳単位)
    骨レベル:10レベル表示(1レベル単位)
    骨格筋レベル:10レベル表示(1レベル単位)
    水分量:5~75%(1%単位)
  • Google Fitと連携。やはりGoogleのサービスにデータを残せるのは安心。
  • Google Fit自身の制限として体重しかGoogle Fitにデータとして残せないので、他の種のデータを含めてエクスポートするか、ないしは他のサービスに同期させる手段が提供されていること。
  • こういうことをやろうとする人は減量目的でやることが多いため、アプリが減量のプラン提供や食事の記録もできるようになっていることが多いが、自分にとってはそれは余計な機能なのでそういうのがない方がむしろ望ましい。

まず、Google Fit単体で体重の記録はできるがその他の数値の履歴は残せない。なので他の情報を残すための別のアプリが必要。

フィットネス/ウェルネス関係のアプリというと、既に使っているEndomondo – Running & Walkingは “weight tracker” ではなく “activity tracker” なので体重を記録するような機能はない。Pulsometer RRは主にheart rate zone trainingが目的であるため、これまた体重を記録するような機能はない。

Weight Track Assistantでは体重と関連データが一画面で入力できる

Weight Track Assistantでは体重と関連データが一画面で入力できる

Monitor Your Weightでは体重と関連データの入力が一気にできない

Monitor Your Weightでは体重と関連データの入力が一気にできない

Google Playで “Works with Google Fit” というタイトル下にGoogle Fitと連携するアプリのリストを提供してくれている。

Weight Track Assistant – BMI(以下WTA)Monitor Your Weight(以下MYW)どちらもGoogle Fitと連携する。

とりあえずはWTAを選択。ソフトバンクの体組成計で得られる数値の多く(全てではない)が入力できる。ただし、WTAでの入力は体重を除いて%単位になっているが、体組成計は必ずしも全てそうなってない(例えば、「30レベル表示(0.5単位)」)ので、換算が必要。MYWで入力できるのはずっと少ない。WTAでも入力できないのは、BMI(ただし体重と身長から自動計算できるものなので不要)、身体年齢(どれほど根拠があるのか怪しいのでそもそも重視してない)、骨格筋レベル(本来の用途とは違うのだろうが”Muscle”として入力することは可能)。スクリーンショットでは含めていないが、基礎代謝はBMR (Basic Metabolic Rate)として記録可能。BMRの単位はいろいろあるようだが、WTAでは特に単位を示していないことだし、301SIの示すKcal(正確にはKcal/日だろうが)単位での数値をそのまま入力すればよいだろう。

入力方法も、WTAは同じ画面で全て入力できるのに対し、MYWは体重とそれ以外に分けて入力しなくてはならないのが微妙に不便。

WTAのバックアップに感しては、Google Fitへのアップロードができる(ただし体重のみ)に加え、専用クラウドへのバックアップおよびそこからのリストアもサポートしている。記録に使う端末を替えるような際には有用だろう。その他、ローカルにバックアップファイルを作成することも可。その際Excelフォーマットを指定することも可。

WTAに関して気になるのは広告が表示されないようにするプラグインが512円すること。あと細かい点だが、履歴を削除できないのも困る(テスト目的に入力してみたデータなど)。

Monitor Your Weightは各種スマート体重計と連携する

Monitor Your Weightは各種スマート体重計と連携する

MYWは各種スマート体重計と連携するようであるので、そういうのを使用している人には便利かも。

携帯事業者各社のSIMロック解除手続きのまとめ

NTTドコモロゴ

NTTドコモロゴ

Auロゴ

Auロゴ

ソフトバンクロゴ

ソフトバンクロゴ

ワイモバイルロゴ

ワイモバイルロゴ

自分のための携帯事業者各社のSIMロック解除手続きのまとめ。

まずは公式の情報:

自分が現在所持する端末については以下のようになる:

以下全て契約時から時間が経っているにしろ(一部回線契約解約済み)、基本新品かそれに近いもので今後処分予定のもの。

タブレットホルダ

Huawei製Au Qua Tab 02 HWT31を入手した。台所で料理や洗い物をしながらそれでビデオなんかを視聴できるようホルダーを調達しようと考えた。

これを考える上で大事になってくるのがHWT31のサイズだが、スペック表によると約259 × 156 × 8.6mm。画面サイズは「約10.1インチ」。サイズ的に保持できないホルダが多い。また、既にカバー/ケースが取り付けられているので(これか?)、それを外さずに表面カバーを後ろに回した状態では、厚さが1.5cmを超える。ここをしっかり考慮しなかったのがちとまずかった。

後知恵としては以下のような一製品で完結する製品の方が結局楽な解になったんじゃないかと思う。どちらも、クランプについては、「厚さ15~55mmまでの天板に対応」としているので、厚さ的には問題なし。ただ、クランプの取り付け場所の関係上(後の写真で見て下さい)、接地面が十分広くないことを考慮する必要があっただろうとは思う。

しかし、こういう製品が存在することに最初気づかなかったため、違う方向に進んでしまった。方針として、

  1. 特にタブレットのホルダー(の一部)として利用されることを想定されてない、クランプとフレキシブルなアーム
  2. そのアームに取り付けられるタブレットホルダ

の2種類の製品の組み合わせで実現しようと考えた。

「11インチ フレキシブル マジックアーム+スーパークランプ」を使って、流しの上の棚板に固定させたクランプからアーム経由でスマホを保持。

「11インチ フレキシブル マジックアーム+スーパークランプ」を使って、流しの上の棚板に固定させたクランプからアーム経由でスマホを保持。

1番目のものとしてベストアングル! 11インチ フレキシブル マジックアーム+スーパークランプ(1/4インチ 3/8インチネジ 両対応)を選択し、1,100円+送料300円で購入。同じものがebay.comで安く手に入るのは知っていたが(一例)、今回はあまり待ちたくなかった。

これはカメラやマイクなどを固定するために使われることが想定されていて、カメラの三脚なんかでよく使われる標準の1/4インチサイズのネジで他の機器を接続できるようになっている(他に3/8インチネジにも対応)。

まずはこれを注文してみた。流しの上にある棚の左端にクランプで固定。本棚などと違い、棚板代わりにパイプが数本通してある。左端もフレームだけなので、クランプが締め付けられるだけの幅、厚さがあるか心配したが、大丈夫のよう。もともと用意していた1/4インチサイズのネジ対応で三脚なんかと併用することが想定されているスマホホルダに繋いでみると、スマホを保持することには問題なかった。

アームにタブレットホルダーを接続

アームにタブレットホルダーを接続

このアームがタブレットの重量に耐えられるかが大きな懸念材料だったので、まずはこの設置したアームの上にタブレットを載せてみた。自信がないがなんとか耐えられそう。

タブレットホルダの「爪」に十分深さがないため、タブレットにひっかかってない

タブレットホルダの「爪」に十分深さがないため、タブレットにひっかかってない。生活感溢れまくる写真で失礼。

そのアームに接続できるタブレットホルダーというと、類似製品は他にもあるが、サイズ的に適合するのはドリームスポット-スマートフォン~タブレットPC用アタッチメントホルダー(iPad ・iPad mini・Kindle・iPhone 6対応)ぐらい。これをYahoo!ショッピングで購入。価格が1,580円であることは同じだったが、Yahoo!ショッピングでは送料無料だったのと(アマゾンでは注文の総計が2,000円を超えなければ送料無料にならなかった)、たまたま使えるTポイントがあったのがYahoo!ショッピングでの買い物を決めた理由。

問題は対応するタブレット厚さが10mmまでだったこと。この点しっかり認識しておらず、写真にあるように、ケースを付けたままのタブレットの厚さ15mm強に対応できない。ここはぬかった。実際試してみると、写真にあるようにホルダの「爪」がタブレットの縁にかかってない。

この路線で行くのなら、「爪」の上に何か接着して、それがタブレットがひっかかるように工作しないといけないだろう。

OpenWrt導入済みルータにUSBオーディオアダプタを介してスピーカ接続

OpenWrt導入済みルータTP-Link TL-WR703NにUSBオーディオアダプタを介してスピーカ接続

OpenWrt導入済みルータTP-Link TL-WR703NにUSBオーディオアダプタを介してスピーカ接続。LEDが眩しい。眩しすぎる

OpenWrt導入済みルータにUSBオーディオアダプタを介してスピーカを接続した。

…といっても “USB Audio Support [OpenWrt Wiki]” に従い、86cで購入したAdroit 2016 New USB 2.0 Virtual 7.1 Channel 3D Audio Sound Card Adapter For PC Laptop WIN 7 For Mac S6095 drop shipping on Aliexpress.com | Alibaba Groupと百均で買ったスピーカと組み合わせただけ。なので出費は合計200円ほど。

上記Wikiページに説明してあることに追加でしたことといえば、aplayコマンドが使えるようalisa-utilsパッケージをインストールしたことくらい。オーディオ出力デバイスはこれしかないので、特にデバイスを指定する必要もなく、機器を接続して再起動した後は普通にraw PCM音声ファイルがaplayコマンドで出力できた。その他 “SoundcardTesting – AlsaProject” も参照。

アクティブ・スピーカではないし、ヘッドフォン出力なので音量は決して十分ではない。が、ふだん静かにしている部屋で使うのなら使い物になるだろう。TL-WR703Nを「USB端子を持つLinux機」と捉えれば何も珍しくなかろうが、本来ポータブル・ルータであったということを思い出すと、こうやって音声出力ができることは不思議な気がする。

こんなことをしたのも、人が家に来たときにそれが家中でわかるようにするため。玄関のIPカメラのアラーム入力端子に接続された「呼び鈴」が押されると、それが「アラームサーバー」(その実態は上記TL-WR703N)に通知され(この辺の話は “OpenWrt BB rc3上のuhttpdのCGIが思うように動作しない” 参照)、それがさらに自分のスマホにSSH接続し、バイブ及び音で知らせるようになっている。一応それで実用にはなっているが、他人だけがうちにいるときにはその人は気づきようがない。そういう状況でもその人に気づいてもらえるようにしたい、というのが本来の動機。ただ、一旦そういうシステムが成立すれば、いわばローカルPAシステムのようなものなので、その他何か面白い使い方ができるかもしれない。

そうすると、ネットワーク越しに音を再生できるPulseAudio [OpenWrt Wiki]の導入なんかも考えることになるのかも。

USBオーディオアダプタがどれくらい待機時に電力消費しているのか興味持って調べてみた。20mA(5V)くらい。

USBオーディオアダプタがどれくらい待機時に電力消費しているのか興味持って調べてみた。20mA(5V)くらい。

追記:USBオーディオアダプタがどれくらい待機時に電力消費しているのか興味持って調べてみた。20mA(5V)くらい。

 

シリアル, TTL, RS-232, UART…等々

今後整理するとは思えないのでこのまま投稿。


今更ながら、だが、ずっと気になってたので。

RS-232 vs. TTL Serial Communication – SparkFun Electronics“そうか、電圧の違いか
Serial Console [OpenWrt Wiki]

Serial communication – Wikipedia, the free encyclopedia
RS-232 – Wikipedia, the free encyclopedia
RS-485 – Wikipedia, the free encyclopedia
UART – Wikipedia” “Universal asynchronous receiver/transmitter – Wikipedia, the free encyclopedia

Serial Console [OpenWrt Wiki]

Lincomatic’s DIY Blog | electronics, 3d printing, hacking, etc

UARTによるデータ通信で気をつけること | hiro345

怪しいけどベンリなUSB-シリアル変換ツール | mixture-art@Q

Serial HOWTO
Serial Programming HOWTO

command line – How to connect to a serial port as simple as using SSH? – Unix & Linux Stack Exchange” “Screen User’s Manual

Fonera Simpl Hacking – Hot Tuna Labs“ではプルアップ抵抗を入れているが、”【Fonera FON2405e でカスタムファームウェア導入】:Royal Windows:So-net blog“では入れていない。しかしコメントでは入れているという人がいる。ピンヘッダの取り付けについては”【Fonera FON2305E で、カスタムファームウェア導入】:Royal Windows:So-net blog“の方に。

【FON2305e/2405e のカスタムファームウェアのカーネルコンパイル】:Royal Windows:So-net blog“ Hot Tune Labsに更に手を入れたファームウェア

今さら聞けないハンダ付けの仕方 – N.Kojima

プルアップ抵抗 – Wikipedia
プルアップ ‐ 通信用語の基礎知識

 

OpenWrt搭載デバイスに外部USBメモリで記憶容量を増やす

かつて携帯電話で使われていたであろうmicro SDカードをUSB 2.0アダプタを介してしつこく利用

かつて携帯電話で使われていたであろうmicro SDカードをUSB 2.0アダプタを介してしつこく利用

OpenWrt搭載デバイスに外部USBメモリで記憶容量を増やす方法。もちろん “Rootfs on External Storage (extroot) [OpenWrt Wiki]” を見れば必要な情報は全て得られるのだが、OpenWrtのWikiではコマンドラインでやるように指示があるところがWeb管理インタフェースLuCIで簡単に済ませられるようになっているところがある。ここでは極力LuCIでの操作で済ませ、コマンドラインでの操作は最低限にする手順を示す。OpenWrtのバージョンは15、すなわちChaos Calmerが前提。

USB micro SDカードアダプタを挿してもさほどでっぱりのないNexx WT3020F

USB micro SDカードアダプタを挿してもさほどでっぱりのないNexx WT3020F。テプラが大活躍。

一旦操作不能状態に陥っていながらなんとか復活させたポータブル無線LANルータNexx WT3020Fで実際に自分がやった手順だが、同じくOpenWrt化したバッファロー無線LANルーターWZR-HP-AG300Hでもつつがなく再現できるように記録しておくのがこの記事の最大の目的だったりする。WT3020Fについては、記憶容量追加はついでにやるのに過ぎない。以前携帯電話で使っていたのであろう128MBのmicro SDカードがあったので、2015年初頭に97¢で購入した(現在78¢)USB 2.0 micro SDカードアダプタを使って有効利用したいだけ。このような用途でもなければもはや容量わずか128MBのmicro SDカードなど利用しようがない。WZR-HP-AG300Hについては先日85¢で購入した(現在$1.04)同様のmicro SDカードアダプタ(ただしこちらはSDXCカードにも対応)を別の128MBのmicro SDカードと併用するつもり。現在特に計画はないが、WT3020Fに比較してよりパワフルなWZR-HP-AG300Hでは何か面白いことができるかもしれない。

前置きが長くなったが具体的手順は以下の通り。

  1. Extroot導入前の空き容量

    Extroot導入前の空き容量

    USBメモリはLinux機でext4などでフォーマット。今回はしなかったが、スワップを別途用意するならパーティションを切る。パーティションを切った場合以下の話のデバイスファイル名が変わってくるので注意。

  2. 後で容量が増えたことが簡単に確認できるよう、OpenWrt機のLuCIで System -> Software で空き容量を見ておく(図)。
  3. そのUSBメモリを挿した上で再起動したOpenWrt機にSSHでログインしコマンド・プロンプトで以下を実行(パーティションを切った場合は/dev/sdaではなく/dev/sda1などとなるので適宜読み替えること):
    # opkg update; opkg install block-mount kmod-fs-ext4 kmod-usb-storage-extras
    # mount /dev/sda /mnt ; tar -C /overlay -cvf - . | tar -C /mnt -xf - ; umount /mnt
  4. 再起動。
  5. LuCIにて System -> Mount Points のMount Pointsの項を見ると “UUID:….” という項目ができているはずなので、それの Edit ボタンを押して図にあるような変更をし、Save & Apply ボタンを押す。念のため再起動。

    Mount Entryの設定

    Mount Entryの設定

  6. LuCIで System -> Mount Points のページで /dev/sda が /overlay にマウントされていることを確認(図)。さらに、 System -> Software で空き容量が増えていることを確認(図)。
    マウントが意図したようにされていることを確認

    マウントが意図したようにされていることを確認

    Extroot導入後ストレージ容量が増えていることを確認

    Extroot導入後ストレージ容量が増えていることを確認

  7. 超大容量化に成功したこの自分の偉業にしばし感激に浸る。

以上。以前同様のことをしてそこそこ苦労した記憶があるが、LuCIで大半の作業ができるようになったこともあり、楽ちんになった。

スワップについては、今回WT3020では設定しなかった。WZR-HP-AG300Hについてはやっておく価値があるかも。

また、今回はパーティションを切らなかったが、後々考えてみると切って別途データ領域を用意するのは賢明なことだったかもしれない。OpenWrtはシステムのアップグレードをする際、何もしないと管理者による設定等は保存されない。それでも一応その方法はあるにはある。しかしopkgパッケージ・マネジャーを使用せずに、完全に自力でインストールしたアプリケーションについては、管理者にバックアップとリストアが全て委ねられる。ならば、そういったものはUSBメモリ上の専用領域にインストールするようにしておけば、OpenWrtのシステムアップグレード後、必要があればリンクを張り直すだけで回復できるはず。そのアプリケーションがOpenWrtの更新に耐えられることが条件。もっとも、今回のようにたかだか128MBしか容量がなければあまり意味がなかろう。もう少し大きな容量のものを使う際には意味を持ってくるであろう考慮点。

ちなみに、OpenWrt上のテキストエディタとしてEmacsクローンのzileを使っているが、ターミナル情報が不足して動作しない場合はterminfoパッケージをインストールすると使えるようになる。

先日購入したUSB 2.0 Micro SD/SDXCカードリーダ。85¢。以前のものよりさらに小型化されてる。なくしそう…。

先日購入したUSB 2.0 Micro SD/SDXCカードリーダ。85¢。以前のものよりさらに小型化されてる。なくしそう…。

追記: 上記の先日85¢で購入した(現在$1.04)同様のmicro SDカードアダプタ(ただしこちらはSDXCカードにも対応)が到着した。上のアダプタより更に小型化している。

ポータブル無線LANルータNexx WT3020Fを復活させた

ダイソーで購入した糸ハンダ

ダイソーで購入した糸ハンダ

うかつなことにポータブル無線LANルータNexx WT3020Fを使えなくしてしまったが、なんとか復活させた。

自力でシリアル接続がどうしてもできなかった。ダイソーで糸ハンダ(写真)を購入し、”ハンダ付け職人のはんだ付け講座 無料“なんかを参照しながら、父が残していったハンダゴテでハンダづけを試みるものも無残に失敗。ついに自力での解決を諦めて、人に助力を求め、単に導線を端子に押し付けるようしてもらっただけで、あっけないほど簡単にシリアル通信成立。 “Howto flash OpenWrt on Nexx WT3020” を参照してファームウェアの書き換えに成功。

さて、ブートローダーをU-BootからBreedなるものに置き換えておけば今後再度しくじったときのリカバリーが簡単だというので、それもインストールしようとした。”Nexx WT3020 [OpenWrt Wiki]“に説明があるが、mtd_writeコマンドが見当たらない。mtd OpenWrt packageで代用できるだろうと思ったが、

root@OpenWrt:/tmp# mtd unlock mtd0
Could not open mtd device: mtd0
Could not open mtd device: mtd0

…となってうまくいかない。そういえば、上記Wikiでも”Uboot can be flashed like this (only if mtd0 is writable, on stock it’s possible, on openwrt mtd0 is usually read-only in dts)”と但し書きがあるので、それが理由なのだろう。

Howto flash OpenWrt on Nexx WT3020” でU-Bootからブートローダーの書き換えができることはわかっていたので、再度シリアル接続をして、U-Bootに提示されるメニューで9を選び以下をインストール。

http://breed.hackpascal.net/breed-mt7620-reset1.bin

Breedブートローダーについては英語や日本語でのまとまった説明文書がないのが残念だが、以下の文章が参考になる。

利用者としては、リセットボタンを押しながらWT3020を起動すると

  • telnet 192.168.1.1、ないし
  • ブラウザでhttp://192.168.1.1をアクセス

でBreedにアクセスでき、そこで必要ならファームウェアの書き換えなどができる、というところが非常にありがたい。つまり、今後OpenWrtの設定でしくじっても、殻割りしてシリアル接続する必要はもうない、ということ。ちなみに、この際LEDが消灯状態になるので動作しているのか不安になるが、ちゃんと動作している。

オープンソースソフトウェアではないので、中で悪さをしていないかは心配だが…。

追記:Nexx WT3020 U-boot mod? (Page 1) — Hardware Hacking — OpenWrt“を見るとBreedブートローダーなどについてよくわかる。どうも他の人のOSSコードをクレジットもなくぱちって作られたようだ、ということや、そのくせ自分のコードはオープンにしていない、ということは気になる。それでもBreedブートローダーを利用するのであれば、Nexx WT3020購入後、ストックファームウェアの状態でBreedブートローダーをインストールし(この時点ではmtd0に書込み可能なので)、次にそれを利用してOpenWrtをインストールする、というのがもっとも楽ちんな手順なようだ。

ポータブル無線LANルータNexx WT3020Fを使えなくしてしまった

Ethernetポートからアクセスできなくなってしまったので原始的方法で結線してシリアル接続しようとしたがうまくいかない

Ethernetポートからアクセスできなくなってしまったので原始的方法で結線してシリアル接続しようとしたがうまくいかない

OpenWrt化済みバッファロー無線LANルーターWZR-HP-AG300Hのブリッジ運用法を開始した。それにあたって、それを理解する上で必要なVLANについても少しばかし勉強した

ここで欲を出してしまった。以前、WANポート1つ・LANポート1つ・USB 2.0ポート1つのポータブル無線LANルータNexx WT3020Fを入手し、これにOpenWrtをインストールしたものの、ブリッジとして使うための設定をどうしてよいかわからず、ほっぽりっぱなしにしていた。本来の自宅内LANの整理計画では考えてなかったが、せっかくOpenWrtでのブリッジの設定のしかたもわかった(…とそのときは思った)ことだし、ついでにこいつも片付けとくか…。”Nexx WT3020 [OpenWrt Wiki]“を見て確認した上で以下の最新の安定版をインストールし作業にかかった。

https://downloads.openwrt.org/snapshots/trunk/ramips/mt7620/openwrt-ramips-mt7620-wt3020-8M-squashfs-sysupgrade.bin

が、簡単だとたかをくくっていたブリッジ設定はそうではなかった。後で詳しく述べるが、eth0とeth1からなる簡単な構成なのだろうと思っていたら、物理イーサーネットポートは1つ(etho0)で、内部的にスイッチがあり、LAN用とWAN用に別々にVLANを形成していた(eth0.1とeth0.2)。

ここで他の人がやっているように単にそのeth0.1とeth0.2を単にブリッジするだけで基本目的は達成されたのだと思うが、「Dumb AP / Access Point Only [OpenWrt Wiki]” の “For devices with switch only, e.g. WRT54GL“の項に相当するのでは、ならもっと簡略にできるんじゃ」、とVLAN機能を切って(それでも存在するデフォルトの)VLAN #1だけでやろうとしたのが運の尽き。理由が今となってはわからないがイーサーネットポート経由では全くアクセスできなくなってしまった。

しかし、OpenWrtにはありがたーいFailsafe機能が組み込まれており、設定でしくじってもこれでたいがいの場合復旧が可能。FailSafeモードで立ち上がったなら、telnet 192.168.1.1でログインした上で、Wiping JFFS2 file system (‘Factory reset’ to default config)にしたがってそれまでの設定のリセットも可能。逆にいうと、FailSafeモードで立ち上がったときには、暫定的にイーサーネットポートを介してルーターにアクセスできるようになっているだけで、それまでの設定はそのまま残っている。ハードウェアボタンでオールリセットできる仕様になっていればありがたかったが…。

ところが、今回はそのFailSafeモードすら利用できなくなった。正確には、FailSafeモードで立ち上がってはいるのだが、イーサーネットポートが然るべき設定になってないようで、ポート自身が生きてないような感じ。おそらくは”#18768 (Nexx WT3020 Failsafe does not work) – OpenWrt“が関係しているのではないかと。つまり、VLAN機能を切ってしまったのが仇になった模様。パッチは存在するがChaos Calmerには適用されてないという。

何かあってもFailSafeモードが使えると思っていたので慎重さを欠いたが、後になって考えると、それに頼り切らず、自分の設定がうまくいかなくても何らかの他の手段でルーターをアクセスできる手段を可能なら残しておくべきであった。例えば今回Wifiの設定はまだしていなかった。OpenWrtのインストール直後はwifiは無効化されているからだ。だが、もしwifiをlanとブリッジせず、独自にアクセスできるようにしておけば、Ethernetポート経由でのアクセスが不可能になってもwifiでアクセスできたはずだ。

また、”Nexx WT3020 [OpenWrt Wiki]“に記載があるBreedブートローダーについては詳細がパッとわからなかったので特にインストールしなかったが、”adventures in console window: Uboot alternative – Breed.“によればWebインターフェースを持つU-Boot亜種のようだ←独自ブートローダーのようだ。インンストールしておけばよかった…。以下Breedを使ったファームウェアのインストールの様子。

残る手はボード上に出ているUART端子を利用してシリアル接続し、U-Bootブートローダーに指示してTFTPでファームウェアを送り込んで焼かせるしかない。”Howto flash OpenWrt on Nexx WT3020” にシリアル接続のしかたが出ている(特に重要なのはTx, Rx, GNDの位置を示す図)ので、それを参照にしつつ本稿最初にある写真のように、USB TTLアダプタ(多分6Pin USB 2.0 to TTL UART Module Serial Converter CP2102 STC Replace Ft232 Moduleと同型)を利用してシリアル接続を試みてみたが、うまくいかなかった。はんだ付けのスキルはないので、テープで固定でなんとかならないかと思ったが、そうは問屋がおろさなかった。

なお、結局シリアル接続に成功してないので、確かなことは言えないが、このUSB TTLアダプタについては、”Serial Cables [OpenWrt Wiki]“にある以下の記載が当てはまるんじゃないかと思った。

Please note that some USB serial adapters (The CP2102-based one in the Amazon link above, for example) have the RX and TX connectors labelled according to what you should connect them to, not what they actually do. If connecting TX → RX and RX → TX doesn’t work for you, try switching to TX → TX and RX → RX.

↑が当てはまらないことが確認できた。

なお、OpenWrtのNexx WT3020用デフォルト設定はOpenWrtのWikiに記載されているが、より見やすいLuCIでの画面キャプチャを以下に載せておく。

Nexx WT3020FにOpenWrtをインストールした直後のスイッチにVLAN

Nexx WT3020FにOpenWrtをインストールした直後のスイッチにVLANが2つ用意されている

 

LANはVLANの1を含む

LANはVLANの1を含む

WANはVLANの2を含む

WANはVLANの2を含む

追記: その後人に手伝ってもらい無事回復させることができた


以下はNexx WT3020を購入した頃に書き着替えてた記事のドラフト。もう完成させることはないがそのまま載せておく。OpenWrtについては今回インストールした最新版についての話ではないのでそこは要注意。

[古記事]玄関やトイレにWifi電波が届くよう、ブリッジ接続でプラネックス製ちびファイMZK-RP150Nを設置 | あくまで暫定措置としてのブログ

プラネックス製ちびファイMZK-RP150Nのファーム置き換えたが多分それは失敗 | あくまで暫定措置としてのブログ

どうしようか迷った。うちは鉄筋コンクリート造りなのでwifi電波が思うように透過してくれない。これは変わらぬ事実。しかし、自分が使うスマホ(や父が使ってたスマホ)については、最近のものは2010年頃製のものと比較すると言うまでもなくいろんな面で進化している。その一つの改善点として、wifi電波の感度もよくなっている気がする。したがって、以前使っていたスマホならwifi接続が間違いなく切れていたような場所でも、今使っているものならかろうじて繋がり続けていることが多い。「ほとんど切れない」では不十分で、必ず常時繋がってもらわなければ困る監視用IPカメラ2台については、いろいろ工夫したが結局は有線で繋げておりもはやwifi電波が到達する・しないは問題ではない。

もちろん接続スピードが速いのに越したことはない。5GHzがサポートされていればよいし、11acがサポートされているのもよい。が、自分の経験上、後でつぶしがきくという意味ではUSBポートが用意されていることの方がずっと重要。

ところが、日本のこの手の製品にはUSB端子を持つものが見当たらない。

Nexx WT3020 [OpenWrt Wiki]

[Old] Running OpenWRT on TL-WR703N | あくまで暫定措置としてのブログ
TP-Link TL-WR703N [OpenWrt Wiki]よりスペックは上

ちなみに、いくつか亜種があるが、WT3020AだけUSBポートがなく(他はある)、フラッシュメモリも4MBしかない(他は8MB)のでこれだけ避ける必要がある。

USB 3GモデムをサポートするというWT3020Fを$15.97で注文。

オリジナルファームウェアでもtelnetできる

OpenWrtをインストールするなら既にバイナリが用意されているが、インストール後telnetできないというバグがあるとかないとか。もしインストールするならそれが解消されてからのほうが無難。”nWorld: WT3020HをOpenWrt化してみた。“によるとOnionWrt.linkにある2014年10月22日づけのバイナリでは問題がないようだ。”nWorld: WT3020のUSB速度低下問題

他のファームウェアNexx WT3020 U-boot mod? (Page 1) — Hardware Hacking — OpenWrt” オリジナルファームウェアも掲載

古いモデル【上海問屋】通販サイト | 【メール便配送(送料216円)対象商品です】 Wi-Fi 無線LAN ルーター : NAS機能搭載 11n/g/b 150Mbps対応 手のひらに収まるコンパクト設計 小型 wifi ルーター 上海問屋 DN-84749 [エコ] [メ02] 税込み1,999円 Wi-Fi 無線LAN ルーター 11n/g/b 300Mbps対応 コンパクト wifi ルーター 上海問屋 DN-11042 [エコ]の通信販売【上海問屋】 | 上海問屋 税込み2,199円

写真を見るとanonaboxもハードウェアはNexx WT3020を使っている模様。”nWorld: WT3020にTorを入れてanonabox化してみた。“で実際

192.168.8.1 ユーザネーム、パスワード共admin 最初からUI言語が英語になっていたのはよかった

パッケージリストがアップデートできない。リポジトリのURLが変更されてしまったからのようで、どうせならファームウェアをアップグレードすることに。https://downloads.openwrt.org/snapshots/trunk/ramips/mt7620/

 

root@OpenWrt:~# df
Filesystem           1K-blocks      Used Available Use% Mounted on
rootfs                    4800      1268      3532  26% /
/dev/root                 2048      2048         0 100% /rom
tmpfs                    30676       460     30216   1% /tmp
/dev/mtdblock6            4800      1268      3532  26% /overlay
overlayfs:/overlay        4800      1268      3532  26% /
tmpfs                      512         0       512   0% /dev
root@OpenWrt:~# df -h

#17299 (mount as overlay storage for block-extroot does not work) – OpenWrt“にあるようにSDカードが/overlayにマウントされるようにしてもうまくいかない。おそらく、それ以前に/dev/mtdblock6がそこにマウントされてしまうからだろう。

#18795 (pivot_root / pivot_overlay not working on chaos calmer r44053) – OpenWrt“にあるように強制的に/etc/mtblock6のマウント・ポイントを変える方法もあるのだろうが、”Rootfs on External Storage (extroot) [OpenWrt Wiki]“にある

  • Another possibility to consider and try is to include in /etc/rc.local the commands: export PREINIT = 1;mount_root, as described in 14946 ticket, which in the case of running Chaos Calmer r44266 in the Comtrend AR-5387un, has been the only thing that allowed me to achieve extroot.

がこれもだめ。

Bridged AP [OpenWrt Wiki]

Dumb AP / Access Point Only [OpenWrt Wiki]

TL-WR1043ND: Convert WAN Port into 5th LAN port (Page 1) — Community Documentation — OpenWrt

Dumb AP / Access Point Only [OpenWrt Wiki]

Network configuration [OpenWrt Wiki]

IPカメラが壊れたかと思った

ACアダプタを取り替えた後無事動作を再開したIPカメラ

ACアダプタを取り替えた後無事動作を再開したIPカメラ

台所に設置してたIPカメラが突然動作しなくなった。動いたの3年くらいか?アラーム入出力端子つきのもので、ビデオ監視よりも、大阪ガスの煙・ガス不完全燃焼探知機ぴこぴこの同報機能で通知を受け取り、それを電子メールなどで自分や父に通知できることが主たる目的だった。父がまだ存命中に設置したもので、ゆくゆくは不用意な彼がコンロの火をつけっぱなしにしたりしたら、それを画像処理で検知できるようにしたいなどと思っていたが、それは企画倒れに終わった。彼が脳梗塞を起こしてここには住まなくなったので。

今ある知識では、その目的のためにアラーム入出力端子を持つIPカメラを利用するという手段がある、というのはほぼ自明なのだが、最終的にこれに到達するまでには何気に手間隙かかってる。LAN接続するのさえ、今は結局ここまでずるずるEthernetケーブル(UTPケーブル)を引っ張ってきて有線で接続しているので安定しているが、当初はwifiで接続しようとし、しかし鉄筋コンクリートづくりのこの家では思うようにwifi電波が通らず、それだけでも頭痛の種だった。そうやって苦労して曲がりなりにも1つの解に到達したら、もうそのことは忘れてしまいたい。なのにまた手をかけなければいけないのかと考えると正直気分が滅入った。

が、ふと、ひょっとしてイカれたのはIPカメラ本体ではなくてACアダプタの方では、と思い取り替えてみたら…動作した!しかし!「新しい」ACアダプタは実は、かつて一人暮らしのおばのみまもりが娘がしやすいようにと用意した他のIPカメラに付属していたものだった。しかも今回壊れたのと同型。

さらに、この「新しい」ACアダプタも、既に壊れたと思って代替品を用意したものだった。新たに単品で入手した新しいものではなく、置き換えられた、少なくとも当時は故障していると思っていたものだ。

なんともはや、そんな経緯があったので結果として「古い」ACアダプタの代替品が手元にあった。ただ、今は一応使えている「新しい」ACアダプタも、「古い」のとおそらく同型であるので同様にいずれ壊れてしまうかもしれない。なにしろ、既に一度は壊れたと判断したものだったのわけだし。