Dropbox

MINISO(メイソー)のVRゴーグルを利用して楽しめるコンテンツには2つの種類があります。両眼に別々の画像を見せる立体画像、それと頭の向きを変えるとそれに応じた方向の画像が見られる(いわゆるVR)ものです。

コンテンツはYoutubeでVR、あるいはCardboardのキーワードで検索すると見つかります。またGoogleが提供しているCardboardアプリケーションでも手軽にコンテンツを楽しむことが出来ます。

Cardboard対応画像の場合はCardboardに付いているコントロール・ボタンで操作するようになっています。ところが格安VRゴーグルにはそのためのボタンが付いていません。そこでMINISOのVR GLASSにCardboard互換のコントロール・ボタンを付けてみました。とても簡単ですし、他のVRゴーグルにも応用可能と思いますので紹介します。

必要なのは台所にあるアルミ箔と両面テープだけです。

アルミ箔を使用して下のような形状にまとめます。

固定用の両面テープを貼り付ける。

VRゴーグルの中央、上側に固定します。

以上で完成です。

関連記事: MINISOのVR GLASSは使える

中国通の間にはおなじみのMINISO(メイソー、名創優品)は、なんちゃって日本の会社風な売り込みで中国国内だけでは無く海外にも多数展開している100円ショップ的なお店です。看板や内装はちょっとユニクロっぽく、主な客層は若い女性で化粧品や雑貨を中心に販売しています。それだけではなくモバイルバッテリー、イヤフォン、自撮り棒などガジェット系グッズも次々と新製品を送り出しているので目が離せません。

そんなMINISOがVRゴーグルを出しているのをTwitterで知り、すぐに買いに走りました。

値段は29.9元(500円弱)とお手頃です。箱にはDesigned by Japanese Companyと書かれていますが、ほんとうかどうかはよく分かりません。

一般的なVRゴーグルで内側には2つのレンズが付いています。

ゴーグル上部にあるダイヤルを回すとレンズが動くので見やすい位置に調整します。

携帯電話をはめ込んで使います。

Nexus6を装着したところ。


Redmi4を装着したところ。

6インチのNexus6でも5インチのRedmi4でも問題なく使用できます。

かなり綺麗に見えます。Google Cardboardよりはるかに良いです。もっとも、わたしは近眼で軽く老眼が入っています。そのわたしが裸眼で装着して綺麗いに見えす。すべての人にとって調子良いかどうかはよく分かりません。

関連記事: MINISOのVR GLASSにコントロール・ボタン(Cardboard互換)を付ける

小型のスピーカーを見ると気になって仕方ありません。小米のWiFiスピーカーは手頃な値段でハイレゾDAC搭載、WiFiも5GHzに対応でスベック的にはとても魅力的です。ただ小米の格安スピーカーは購入してから音にがっかりした経験もあるので、上海の小米之家に実際の音を確かめに行きました。店内はうるさいので、ちゃんとした評価は出来ませんが、わりと良い感じで鳴っていました。ということで、後日あらためて通販にて購入。

使用できるストリーミング・サービスを考えると中国専用機ではありますが、簡単に紹介したいと思います。

小型スピーカーには違いませんが、そこそこの重量と大きさがあります。またAC電源のみということで、完全に据え置き型です。小型ながら2wayでバスレフ付きなので、低音がよく響きます。ちょっと低音の味付けが濃すぎる気もしますので、アプリケーションのイコライザー設定を「treble」にしています。音質は気に入っている古いJBL on-tourと比べると、どこか味気なさを感じなくもないですが、ほぼ気のせいレベルです。

[ ハイレゾ対応 ]

DACの種類は分かりませんがwebページによると24bit/192KHz対応と書かれています。一応、手持ちの24bit/192Khz flacなファイルを本体内蔵メモリーに入れて再生は出来ました。残念ながら、何時も調子よく再生されるわけではなく途切れ途切れになることもありますので、あまり期待は出来ません。

[ 操作性 ]

初期設定および細かい操作はiOSもしくはAndroid上のアプリケーションで行います。一度設定すれば本体の上に付いている操作パネルだけでも使用可能です。アプリケーションで好みのソースにある音楽を組み合わせてチャネルとして登録します。そうしておくと本体の操作パネルのボタンだけでチャネルを切り替えたり、次の曲に飛ばしたりといった具合に操作できます。聞きたい曲をダイレクトに選んだり、チャネル登録操作、チャネルに登録していない音源を聞くにはアプリケーションからの操作が必須です。全波的には良く出来た操作体系だと思います。

[ ストリーミング・サービス ]

5つの音楽配信サービスと5つのストリーミングサービス(今ひとつちゃんと繋がらない)にアプリケーションからアクセス出来ます。その中のインターネット・ラジオや曲を選択して聴きます。良く聞くものはチャネルとして登録します。またアーチスト名や曲名で各サービスを串刺し検索することも出来ます。ひとつのチャネルに複数の音楽配信サービスやメモリー内の曲を混在させることも出来ますので柔軟な再生リストを作る事が可能です。

[ 内蔵メモリー ]

内蔵メモリーは8GBあります。潤沢とは言えないかもしれませんが、とりあえずそこそこの音楽ファイルを入れられます。内蔵メモリーはSMB(サンバ)でアクセスします。携帯電話のアプリケーションで親切にWindowsとmacOSからのアクセスの仕方が表示されますので、それに従いパソコンから接続してファイルの出し入れが出来ます。

[ USBメモリー ]

内蔵メモリーの容量が足りない場合はUSBメモリーを背面に差し込めばOKです。USBメモリーはストリーミングのアイコンに並んで表示されます。最初、ちょっとだけ探してしまいました。これ専用に小型で出っ張りの少ないUSBメモリーをオーダー中です。

[ ミニジャックによる外部入力 ]

背面にステレオ・ミニジャックがあるので、ここに携帯デバイスなどの出力を接続すると自動的にスピーカーから音が出ます。

[ DLNAレンダリング ]

DLNA対応と書かれていたのでDLNAサーバー上のファイルに直接アクセス出来るのかと思いました。それは私の勘違いでDLNAレンダリングをサポートしているのでした。対応アプリケーションを使用すると無線LAN経由で、このスピーカーから音を出すことが出来ます。Airplayの音声出力リストにも、このスピーカーが出てきて鳴らすことも出来ます。これはAirplayとDLNAレンダリングが共通の何かがあるのか、説明書には書いていないだけでAirplay対応スピーカーになっているのかは不明です。何れにせよmacOSやiOSデバイスから接続して音を鳴らすことも出来ました。

[ Bluetooth ]
aptXのような今どきのコーデックのサポートは無く、A2DPのみのサポートです。

iwown i5がとても気に入っていましたが、もう少しメッセージの文字数が多ければ良いなと何時も思っていました。そのうち新製品が出るだろうと気長に待つつもりが何時の間にかi6 pro発売されていることを日本のwebサイトで知りました。ということで、概要やレビューは日本語で探すことが出来ますので、ここではファクトリーリセットの方法について書いて置きます。手順についてはtwitterで別のユーザーさまに教えて頂いたものです。

長時間、携帯電話とi6 proを離しておいたり、朝起きた時など携帯電話との接続が外れていることがままあります。多くの場合は、携帯電話のBluetoothのオフオン、もしくはアプリケーションで接続解除し、再度ペアリングで元に戻ります。再ペアリングは何度か試さないとダメなこともあります。

一度だけ、どう頑張っても接続解除後のペアリングが出来なくなった事があります。i6 pro自体はアプリケーションから見つかるのですが、ペアリングが出来ません。本体の電源オフオン、携帯電話の再起動も効果が無いのでi6 proの電池が放電し切るまで待つしかないかと考えていたところtwitterでリセットの仕方を教わりました。

[ リセット手順 ]
– i6 proの電源を切る (Function->Power off長押し)
– 画面長押しで電源オン、そのまま画面にタッチし続ける、バイブが三回起動したらリセット完了

これでペアリング出来ない状況から回復することが出来ました。

ieast

自宅のDLNAサーバーの音楽ファイルのストリーミング再生環境は概ね整っていましたが、ヤマハのAVアンプRX-V473はflacの場合96KHz/24bitまでは再生出来ます。ところが私のライブラリーにはflac 128KHz/24itの物があり、それが再生出来ない事が不満でした。そこでネットで何か使えるデバイスは無いとかと探してみたところ、唯一かつ完璧に要求を満たすiEAST SoundStream Proが見つかりました。

I am using YAMAHA RX-V473 to connect my home DLNA server. It is almost okay. RX-V473 can decode up to 96KHz/24bit flac. However I have 128KHz/24bit flac files on my DLNA server. iEAST SoundStream Pro is perfect answer to play all my music files on the DLNA server.

公式ページは今ひとつなので、簡単に紹介しておきます。

iEAST official page is not so good. Let me introduce the SoundStream pro.

Interface:
– WiFi 2.4GHz IEEE 802.1b/g/n
– Ethernet RJ45 10/100Mbits
– S/PDIF Optical Toslink
– USB for flash drive
– 3.5mm stereo line-out

Power supply:
– 5V 1A Mirco USB

DAC: ESS ES9023
Audio format:
– Up to 192KHz/24bit
– FLAC, WAV, AAC-LC, HE-AAC, MP3, WMA…

特徴 / feature:
– 携帯電話のアプリケーションから複数のSoundStreamを制御することが出来る / iEAST mobile phone application controls multiple SoundStream devices
– 複数のSoundStreamに同じ音楽を同時に鳴らすことも出来る / Multiple SoundStream devices can play same music stream simultaneously also
– Spotifyや各種音楽ストリーミングサービスや色々なネットラジオに対応 / Spotify or other music stream service and various net radio are supported
– Apple Airplayに対応 / Apple Airplay support
– DLNAサーバーに対応 / DLNA server support

[ 設定 / setup ]
説明書通りですが、簡単な流れを書いておきます。
– 電源を入れると設定用のSSID IEAST_xxxxが見えるようになるので接続する(パスワード無し)
– http://10.10.10.254にwebでアクセスすると家庭の無線LANに接続するための設定画面になる
– 希望のSSIDを選択しパスワードを入力する
– 家庭の無線LANに接続されると設定画面の接続は切れる。ただしその後も設定用のSSIDで電波は出続ける、最初はパスワードなしであったが、設定後は家庭の無線LANと同じパスワードが設定される

後はS/PDIFかLINE OUTをアンプに接続すればOKです。

Just need to follow the instruction. Brief setup process is as follow.
– Power on SoundStream pro. Then you can connect SSID IEAST_xxxx withoit password
– Open web browser to connect http://10.10.10.254 to display setup WiFi setup page
– Select you home WiFi SSID and enter WiFi password
– SoundStream Pro will connect your home WiFi and disconnect from setup screen. Original SoundStream setup SSID is still available for use. But it will be password protected. You can use same password for your home Wifi to connect SoundStream pro setup screen

[ 携帯電話アプリケーション / Mobile phone application ]
箱にQRコードがあるのでそれを読み込みばアプリケーションの導入が出来ます。あるいは以下のURLから導入します。
Reading QR code on the box or visit following URL to install iEAST Play.

iOS : https://itunes.apple.com/us/developer/ming-lan/id1038295773
Android : https://play.google.com/store/apps/details?id=com.wifiaudio.iEastPlay

[ 悩ましいアンプとの接続 / Consideration of SoundStream pro and audio amplifier connection ]
古くからAVアンプを使用していましたので何も悩まずにS/PDIF Toslinkの光ケーブルでAVアンプに接続しました。途中でノイズを拾うこと無く良い音がするはずと、しばらく鳴らしていました。が、よく考えるとSoundStreamは高機能な最近のDACによりサンプリング・レート192KHzのデータをデコードしてアナログに変更するのが役割です。それをまたS/PDIFに載せるということは、もう一度アナログからデジタルに変換するということです(さらに言うなら、それをACアンプのDACで再度アナログにして出力する)。再変換に伴う歪を置いとくとしても問題となるのはS/PDIFの規格です。色々と調べてみると最高ではPCM 96KHz/24bitまで行けそうですが実装の方が問題です。

AVアンプ側で調べてみるとS/PDIFで接続している場合は入力ファイルに関係なくSampling 44.1KHzと表示されました。ダウンコンバートが行われていることは間違いようです。

spdif

ということで音がよくなっているのかどうかは不明ですがLINE OUTで接続することにしました。3.5mmみにジャックなのが、少々不満です。いっそピンジャック接続できるように改造したいくらいです。

At the beginning, I instantly connect SoundStream pro and AV amplifier by using S/PDIF optical cable. It should be noiseless connection. And provides better sound. But think about the SoundStream pro is using DAC to decode digital sound data to analog. This is the function of SoundStream. If I use S/PDIF interface, analog signal needs to convert digital again within SoundStream pro. Even if I can ignore distortion/noise of decode and encode process, the problem is specification of S/PDIF interface. It seems to me, S/PDIF supports up to 96KHz/24bit PCM. It is acceptable, but implementation would be less than this…

I checked AV amplifier information screen to confirm this. Sampling rate is always showed 44.1KHz.

Anyway, I changed the connection to analog. Unfortunately analog connection of SoundStream Pro is 3.5mm stereo mini-plug. I would like to modify this to RCA pin jack.

xmmini_dlna

小米ルーターminiを全くルーターとしては使用せず純粋にDLNAを使用したメディア・サーバーとして構成してみました。たっぷりと音楽やら動画ファイルを入れるためにちょっと贅沢にIntelのSSDをUSB接続しました。OpenWrtが導入直後の状態ではUSBにデバイスが接続されたことはログを見ると分かりますが、USBストレージとしては認識されません。

[ USBストレージの設定 ]
参考ページ : OpenWrtメモ: USBメモリを使える様にする
# opkg update
# opkg install kmod-usb-storage

やっと /dev/sda が現れます。
# opkg install kmod-fs-vfat
# opkg install kmod-nls-cp437
# opkg install kmod-nls-iso8859-1

これで準備完了です。
mount -t vfat -o iocharset=utf8 /dev/sda2 /mnt
みたいな感じでマウントします。後ほどファイルのコピーやDBの構築でMac OS XやLinuxに接続するため取り回しやすいようにFAT32でフォーマットしました。また、日本語ファイル名を正しく取り扱うためにiocharset=utf8の指定が必ず必要です。英字のみのファイル名だけならば気にしなくても大丈夫です。

またせっかくSSDを接続するので小さなパティションにswapを確保しました。
# mkswap /dev/sda3
# swapon /dev/sda3

今のところswaponとmountはブート後に手動で行っています。fstabとか存在していないので、自動マウントは色々と手順を踏まなければなりません。そのうち気が向いたら試すことにします。

[ DLNAサーバーの導入 ]
opkg install minidlna
これだけで動きます。minidlnaと控えめな名前ですが、わたしの必要としている機能的には十分な内容です。そのまま/mntにメディア・ファイルを置くだけでサーバーとして機能しました。ただし既定値ですと小米ルーターをサーバーとして接続した端末(小米ルーターのOpenWrtからDHCPでIP Adderessを取得する端末)に対してDLNAサーバー機能を提供します。

わたしの場合は、既存の家庭内ネットワークに小米ルーターを接続し、家庭内ネットワークに接続している端末にDLNAサーバー機能を提供するため構成を変更しました。まずはOpenWrtの設定で家庭内ネットワークの無線LANに接続を行いました。ifconfigでインターフェース名を確認します。わたしの場合は2つの別々のネットワークに2.4GHzと5GHzのインターフェースを接続したのでwlan0とwlan1が現れました。-> (注:実際に使用すると2.4GHzの方はデータの流れ的にちょっと厳しいです。5GHzは概ね良好ですが、HDに映像でたまにカクカクします。有線接続が良いかも)

minidlnaの構成ファイル /etc/config/minidlna  の option interface ‘br-lan’ の部分を interface ‘wlan0′,’wlan1’ と書き換え /etc/init.d/minidlna restart を行います。これで目的の構成になりました。

ただし、沢山のファイルを持とうとするとminidlnaサーバーがDBを構築するのに時間がかかったり、不可能だったするそうです。解決するためには、別途Linuxマシンを用意して、そこにUSBストレージ上でDBを構築する方法が公式ガイドに書かれています。

公式ページ: OpenWrt MiniDLNA

このページのChaos Calmer Tips以下を忠実に実行すればLinuxマシンでのDB構築が出来ます。あまり頻繁にファイルを更新しなければ、この方法で大丈夫でしょう。同じ環境をLinux上に作成しファイルの入れ替えとDB再構築後にrsyncで同期するみたいな運用が楽で良いかも知れません。

[ DLNAクライアント ]
– VLC : 使いやすいです。macOS, iOS, Androidで使用しています。
– KODI (旧XBMC) : 定番ですが、ちょっと使い方に癖があります。Android STBで使用しています。VLCがテレビ対応すると楽なんですが、まあKODIがあれば大丈夫。日本語のタイトルが表示できない(KODIの問題では無いかも)。
– YAMAHA RX-V473 : 愛用のお値打ちAVアンプ。残念ながら動画の再生は出来ませんが、音楽再生には一部適していると思います。
– YAMAHA BD-S473 : ブルーレイディスク・プレーヤーです。最近あまり使っていないのでEthernetケーブルを接続してみました。動画だけ再生できて音楽はダメ。タイトルの表示が遅いし、たまにハングして電源コードを抜かなければならなくなる。期待はずれでした。

[ トラブル ]
時々、小米ルーターmini自体がハングして電源コードを抜かなければならなくなります。ちょっと無理してるのかも知れません。ただいま原因の切り分け中ですが、OpenWrtでのDLNA構成例という意味では有効と思われますので、原因が判明する前に記事を公開することにしました。

追記) ハングの原因は小米ルーターminiのUSBポートの電力不足でした。IntelのSSDを直挿しするとマウントしなくても数時間放置するとハングします。電源付きのUSB Hubを使用することで安定稼働することが出来ました。ちなみに小米ルーター3にIntel SSDを直挿しした場合は24時間以上安定稼働します。

小米ルーターmini + OpenWrt + Softether VPN/StoneでRaspberry Pi3の置き換えを狙いましたが、残念ながら性能的に及ばす断念しました。普通に動画とかを見ることは十分に出来ますので、Raspberry Pi3設置前であれば納得して使用していたと思います。

小米ルーター青春版よりはかなり速くなりました。Softether VPNでの実環境で、もの凄く大雑把な数字で比較すると以下のような感じです。

Raspberry Pi3 1MB/s : 小米ルーターmini 700KB/s : 小米ルーター青春版 560KB/s

[ 電波の飛びが悪い問題 ]
小米ルーターmini + OpenWrtにおいてWiFiのチューニングに問題があります。実測したところ5GHzは問題ないようですが、2.4GHzの電波はオリジナル・ファームウェアに比べるとかなり弱いです。Raspberry Pi3と同じくらいの電波の強さですので、使えないことは無いです。OpenWrt Pandraboxというファームウェアを使用すると大丈夫のようですが、ちょっと古いです。OpenWrtように作ったStoneは動きましたので、何かしら自分のアプリケーションを動かすことは可能ですが、今ひとつわたし的なメリットは無さそうです。

これまた大雑把ですが、2.4HGzでオリジナル・ファームウェアで-40dBm出ている環境でOpenWrtにすると-70dBmになってしまいます。

小米ルーターminiの使いみちは検討中。

小米ルーターminiにもSoftether VPNとstoneを導入しました。小米ルーター青春版に入れたバイナリーは使えませんので改めてビルドしました。

ただし小米ルーター青春版で使用したSDKではターゲットがうまく設定出来ませんでした。何かしら方法があるのでしょうが、もっと簡単な、というかより正しいSDKの導入方法が見つかりました。といっても公式ガイドに書かれている方法なんですが、メモとして書き残しておきます。

OpenWrtのUsing SDKページに書かれているように各プラットフォーム別のビルド済SDKがあります。小米ルーターminiはramips/mt7620のページ以下にルーターに導入するバイナリーと共にビルド済のSDKが置いてあります。

使用したのはOpenWrt-SDK-15.05.1-ramips-mt7620_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64.tar.bz2です。

これを展開した後は、targetの選択が必要が無い以外は以前の記事と同じ手順です。

– 「小米ルーター青春版 + OpenWrtにSoftether VPNを導入する
– 「小米WiFiルーター青春版 + OpenWrtにstoneを導入する」 ひとつだけ訂正があります。 STAGING_DIR指定するのはopenwrt/staging_dir/以下のtargetから始まるディレクトリにしました。わたしの場合は”openwrt/staging_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2″です。

xiaomiyouthmini

小米ルーター青春版とmini

またまた小米ルーターで遊んでいます。小米ルーター青春版はモバイルバッテリーでも稼働できる手軽さはあるが性能的に限界があるし小米ルーター3にはOpenWrtが出ていないので今度は小米ルーターminiで再度Raspberry Pi3の置き換えに挑戦します。

まずはOpenWrtの導入編です。

ただし、小米ルーターmini+OpenWrtは普通には使えていますが、電波の飛びが弱いようです。これについては、改めて検証します。

[ 開発版ファームウェアの導入とSSHの有効化 ]
OpenWrtのガイドにはURLを使ったtelnetの有効化が書かれていますが最新の開発版ファームウェアでは使えませんでした。おそらく、OpenWrtのページにある古い開発版ファームウェア入れれば大丈夫でしょう。わたしは素直に小米の公式に従ってSSHを使用できるようにしました。

– AndroidもしくはiOSの小米アプリから小米ルーターminiに一度アクセスして小米アカウントとルーターを関連付けます。
公式ページから開発版ファームウェアをダウンロードします。わたしの場合はバージョン2.11.25でした。
– ガイドに従いUSBメモリーにmiwifi.binというファイルネームでコピーし、ルーターに挿入しリセットボタンを押したまま電源オンで書き込みます。
– 開発版ファームウェアで立ち上がったら、次はSSHモジュールの導入です。
https://d.miwifi.com/rom/ssh からSSHモジュールをダウンロードする。
– これもUSBメモリーにmiwifi_ssh.binというファイルネームでコピーして、ルーターに挿入しリセットボタンを押したまま電源オンで書き込みます。
リブートするとsshでrootログイン出来るようになります。パスワードはファイルをダウンロードしたページに書かれています。

[ OpenWrtの導入 ]
特別なことはなく公式ページに従えば導入出来ます。
ssh root@192.168.31.1のようにしてルーターにログインします。
# cd /tmp
# wget <公式ページにリンクがあるバイナリーファイルのURL>
# cat /proc/mtd でOS1バティションがあることを確認する
# mtd -r write <バイナリーファイル名> OS1

以上でOpenWrtが起動します。例によってパスワードは無しWifiはオフで立ち上がります。青春版の時とは違いGUIインターフェースであるLuCIは最初から入っています。

以前、小米ルーター青春版をリピーターとして簡単に構成した時はかなり遅くて使う気になりませんでした(数値は取っていませんが)。

もうちょっと改善しないものかとrelaydを使用した構成を試してみました。速度もだいぶマシになりましたので、構成方法についてメモを残しておきます。

公式ガイドに従いますがOpenWrtのレベルの差によるものか、多少アレンジが必要でしたので全ての投入コマンドを書いておきます。

前提としてファームウェアの初期設定状態から構成を開始するものとします。

操作はPCからEthernetケーブルを白いEthernetコネクターに接続し”ssh root@192.168.1.1″でログインして行います。

[ wifiの活性化 ]
# uci set wireless.@wifi-device[0].disabled=0
# uci commit wireless
# wifi

[ 接続先のWifiネットワークの確認 ]
公式ガイドにあるiwlist scanの方は動かなかったです。
# iw dev wlan0 scan

[ wwanインターフェースの構成 ]
# uci set network.wwan=interface
# uci set network.wwan.proto=dhcp
# uci commit network

/etc/config/networkに該当のセクションが作成されます。

[ Wirelessネットワークを既存のWifiルーターに接続する ]
# uci set wireless.radio0.channel=11
# uci set wireless.@wifi-iface[0].network=wwan
# uci set wireless.@wifi-iface[0].mode=sta
# uci set wireless.@wifi-iface[0].ssid=xmff-relay
# uci set wireless.@wifi-iface[0].encryption=psk2
# uci set wireless.@wifi-iface[0].key=secret-key
# uci commit wireless

– “ssid=”には自分のWifiアクセスポイントのSSIDを記入します。
– “encryption=”はサンプルではpskになっていましたが、わたしの場合はpsk2にしないとダメでした。
– “key=”には自分のWifiアクセスポイントのパスワードを記入します。

構成は/etc/config/wirelessに反映されます。

# wifi down; wifi
で構成を有効にします。しばらくしてifconfigを投入するとwlan0に既存のwifiルーターから割り当てられたIP addressが確認できます。

[ relaydの導入 ]

小米ルーターが既存のwifiルーターを経由してインターネットに接続されたのでrelydモジュールを導入します。
# opkg update
# opkg install relayd

ルーターのブート時にrelaydが起動するようにします。
# /etc/init.d/relayd enable

[ relay用のインターフェースを作成 ]
# uci set network.stabridge=interface
# uci set network.stabridge.proto=relay
# uci set network.stabridge.network="lan wwan"
# uci commit network

/etc/config/networkに変更が反映されます。

[ インターフェースLANにgatewayと dnsを設定 ]
# route -n | grep UG
これは既存のルーターのgatewayアドレスの確認ためです。分かっている場合は必要なし。

# uci set network.lan.gateway=192.168.1.1
# uci set network.lan.dns=192.168.1.1
# uci commit network

192.168.1.1の部分は自分のWifiルーターのIP addressに変更します。

[ DHCPを無効にする ]

既存のWifiルーターのDHCPを使用しますので小米ルーターのDHCPは無効にします。

# uci set dhcp.lan.ignore=1
# uci commit dhcp

[ firewallを調整 ]
# uci set firewall.@zone[0].forward=ACCEPT
# uci set firewall.@zone[0].network="lan wwan"
# uci commit firewall

ここまでの設定で白いEthernetコネクターに接続したPCから既存のWifiルーターを通してインターネットに接続可能です。引き続きWifiアクセスポイントを設定し、WifiからWifiへのリピーターとして機能するようにします。

[ Wifiアクセスポイントの設定 ]
# uci set wireless.@wifi-iface[1].device=radio0
公式ガイドでは上のようなコマンドで設定するようにガイドされていますが、”uci: Invalid argument”と言われてしまいます。正しいコマンドが分からなかったので構成ファイルを直接編集しました。
# vim /etc/config/wireless
以下の設定を追加しました。
config wifi-iface
option device 'radio0'
option mode 'ap'
option ssid 'RepeaterWirelessNetwork'
option encryption 'psk2'
option key 'RepeaterWirelessPassword'
option network 'lan'

‘RepeaterWirelessNetwork’と’RepeaterWirelessPassword’は、適当に変更します。

[ 設定の有効化 ]
/etc/init.d/dnsmasq restart
/etc/init.d/firewall restart
wifi down; wifi

[ 小米ルーターのIP address変更 ]
わたしの場合は必要ありませんでしたが、もし既存のWifiと小米ルーターのIP addressサブネットが同じ場合は以下のコマンドで違うサブネットに変更します。
# uci set network.lan.ipaddr=192.168.2.1
# uci commit network
# reboot

[ 小米ルーターへのログイン ]
Wifi、Ethernet接続ともにDHCPで既存のWifiアクセスポイントからIP Addressが割り当てられます。このため、そのままでは元々小米ルーターが持っているIP Addressにはアクセス出来ません。わたしの場合は2つの方法でアクセスしています。
– PCのIP Addressを手動で小米ルーターのサブネットに合わせて設定する。わたしの場合は192.168.1.10に設定してssh root@192.168.1.1を実行しています。
– 小米ルーター自身もwlan0が既存のWifiルーターからDHCPでIP Addressを取得しています。ここに対して別のPCからsshでアクセスすることも出来ます。Wifiルーターなどで静的にIP Addressを設定できれば、この方法が簡単で良いです。

[ パフォーマンス ]
決して速いとは言えませんが、それを承知の上で使用すれば実用的に使うことは出来ます。iPod touchのSpeedtestで試したところ、直接既存のWifiアクセスポイントに接続して30Mbpsくらい出ている状態で小米ルーター青春版のリピーターから接続すると10Mbpsくらいが限界のようでした。