2014/09/14

Jolla: LTE接続らしきものについて

6月のエントリでJollaがLTE Band3を掴んでるっぽいって書いた。
なんだけど、「4G優先」の設定で置いといても自然には掴んでくれないっぽいし、一度強制的に4Gを掴ませておいても一旦3Gに落ちると4Gに戻れない状態みたいだった。これはUpdate 8が来ても同様。

なんでだろーなーと思っていたんだけど、8月9日に行われた第4回東京変態端末オフ in 八王子での発表で(おいらは行ってないけど、当日行ってた@ktaros2さんのツイートによると)どうやら3G(WCDMA)に接続した状態からBand3の接続へ直接移行することができない(間に一度Band1に接続しないとダメ)らしいということが・・・

ただ、上の話はあくまでも「遷移」なので、最初からLTEの電波を探しに行く限りにおいてはダイレクトにBand3へ接続しに行けるっぽい感じ(そうじゃないとJollaで4G接続になれる理由が説明できないよね?)。じゃあ、どーやったら「LTEの電波を探しに行く」状態にできるのか・・・そこいらへんがちょい問題。

基本的にはツールやコマンドによって「強制的にLTE接続させる(LTE接続のみを許可する)」方法がある。知ってる限りでは下の3つ。
  1. CSDツール(ダイヤアラを起動して"*#*#310#*#*"で起動)の4G接続テストを使う。
  2. ターミナルからコマンドで強制的にLTE接続を呼び出す(ココを参照)。
  3. 2の方法をアプリ化した"Radio Switcher"ツールを使う。
ただしこの方法、ちと問題がある。
ここ最近「VoLTE」なんてものが話題になってるので知ってるヒトも多いはず(?)だけど、フツーのLTE対応端末だとデータはLTEで流れても通話は3G使ってるのよね。で、強制的に4Gにする方法ってのは基本的に「4G接続のみ」の状態になるらしく、通信できても通話の発着信ができなくなっちゃう。データ専用のSIMで運用してればこれでもOKなんだけど、通話SIM使ってると結構残念な感じになっちゃう。

手元で試した限りでは、docomoとb-mobile(スマホSIM)のSIMだと、「4G優先」に設定した状態でBand3のエリア内で起動(再起動)すると掴んでくれて、この方法だと(いちいち再起動分の時間を待つことになるけど)発着信可能な状態で4G接続してくれる。
ただ、どっちにしても一旦3Gに落ちると(遷移する経路であるBand1に対応してないので)自力で4Gに復帰することはできいっぽい。

ちなみに前者(強制接続)の場合は、4G接続が確立した後「設定」→「システム」→「モバイルネットワーク」→「ネットワークモード」を一旦「2G」にしてから「4G優先」に戻してあげると、発着信が可能になる。が、やっぱりちとめんどくさいよねぇ・・・

そんなことをふと思いながら上の2のコマンドの情報を見ていたら、接続の設定に"any"ってのがあるんだけど?みたいな情報があった。コメントの部分からリンクをたどってドキュメントを読んでみると、まぁ要するにその時接続可能なものを自動的にチョイスしてくれると、って話。

・・・まてよ?もしかしたら強制接続の後ちゃんと「any」に設定変更しておけば、発着信とかも可能になるんじゃないの??と思って、何度かコマンドによる切り替えをしてみたら、どうやらちゃんと動きそうな雰囲気。試しながら「多分、そうなんじゃないかなー」とTwitterで呟いてたら、@atmosfereさんから「その通りになるっぽいよー」という声もかけて頂いた。
なるほどイケそーじゃん?
さぁ、あとはこれを実現するには・・・上で紹介したRadioSwitcherで4Gを呼び出した後にanyに切り替えるコマンドを追加すりゃーいいんじゃね?ってことでいろいろ調べて試してみた。
RadioSwicherのソースは以下で公開されてた。

GitHub: RadioSwitcher

よく見るとPull Requestで同じ問題(アプリで4Gに切り替えると発着信できなくなる)を指摘してパッチが送られてるんだけど、このパッチでは日本での接続問題は解決しない感じだった。あと、このツールの作者はJollaのファームが正式に4G接続に対応したことで、「このツールの意味はなくなった」としてそれ以上の作業を停止しているようなので、パッチも放り出されたままっぽい。

とはいえ、少々いじれば動くとこまでは確認したんだけど・・・
4Gのあとanyにすると当然電波状況によっては3Gに落ちる。4G設定のままなのに3Gに落ちちゃってて、そこから設定を切り替えようとすると一旦(すでに3G接続されてるのに)3G接続に切り替えてから4Gに変えないといけない。なんかいまいちだよなあ?

多分、そもそも
  • 国内は2G(GSM)に対応してないので、2Gに切り替える機能は要らない。
  • 発着信さえできれば4Gからわざわざ3Gに切り替える必要性はあまりない。
  • つまり、現在どっちに接続してるのかを表示する機能と、4Gへ切り替えるスイッチさえあればOK。
ってことだよね?
というワケで、ほとんどの部分をRadioSwitcherからパクって来てを参考にしてツールを作ってみた。

harour-lte-switcher-0.1-1.armv7hl.rpm

手元ではうまく動いてるっぽいんだけどね。
端末が壊れるようなことはないはずだけど、これ使えば必ず4G接続できるとか、その後ちゃんと発着信するとかはなんも保障できないので、使おうなんていう奇特なヒトが居たらその辺りはよろしくね(ハート)。
発着信は、発信の方はほぼうまくいってる気がするんだけど、着信の方はタイミングによってはうまく行かない感じがする。理由はよくわからないけど、ネットワークへのレジストとかの問題なのかなぁ・・・?

Jollaを国内でちゃんと「電話」として使いたいなら、おとなしく3G優先にして4Gはあきらめるのが吉な気がするけど、万が一使ってみて面白いとか便利とかあったら教えてくださいな(笑)