Wio BG770A + SORACOM Air で LTE-M に繋ぎ、電波品質を確認する方法

Wio BG770Aは、LTE-Mモジュールを搭載した小型のマイコンで 日本ではSORACOMにて販売されています。

この記事では、実際にWio BG770AにSORACOM Air SIMを挿してLTE-Mで接続し、 掴んでいる周波数(Band)・オペレーター・電波品質(RSRP / SINR)を実測する方法を紹介していきます。

情報取得に使用するATコマンドの詳細・コードの全体構成・電波品質指標(RSRP/SINR)の読み方は1NCE接続の記事で解説しています。 この記事ではSORACOMとの差分(APN・PDP認証)を中心に説明します。

使用機材・環境

使用した機材は以下の通りです。

機材詳細
IoTデバイスWio BG770A(Seeed Studio)
SIMSORACOM Air(plan-D)
開発環境PlatformIO + VSCode

Wio BG770AはQuectel製のLTE-Mモジュール(BG77xシリーズ)が内蔵されており、 LTEアンテナとSIMを挿すだけで通信できます。LTEアンテナは本体に付属しています。

Wio BG770AとLTEアンテナ
Wio BG770A本体とLTEアンテナ(付属品)

SORACOMとは

SORACOMは、IoT向けのSIMサービスや通信プラットフォームを提供する日本の会社です。現在はKDDI傘下です。 今回SORACOMとの接続に使用するplan-Dは月額385円〜でNTTドコモの通信網に繋がります。

このSIMは、SORACOM GPSマルチユニットに付属していたものを流用しました。

Wio BG770AをSORACOMに接続する

1NCEとの差分はAPNとPDP認証の2点だけです。

APNsoracom.io を使います。

PDP認証(AT+CGAUTH) はPAP認証(type=1)を使います。デフォルトのID/PWは sora / sora です。

// 通信方式:LTE-M(eMTC)に固定
static constexpr auto SEARCH_ACCESS_TECHNOLOGY = WioCellularNetwork::SearchAccessTechnology::LTEM;
// BAND:全LTE-Mバンドを許可
static constexpr const char* LTEM_BAND = WioCellularNetwork::ALL_LTEM_BAND;
 
// APN:SORACOM Air 共通
static constexpr const char* APN = "soracom.io";
static constexpr int PDP_CONTEXT_ID = 1;
 
// PDP認証:SORACOM は PAP(type=1)+ ID/PW(sora/sora)
static std::string BuildSoracomPdpAuthCommand() {
  return "AT+CGAUTH=" + std::to_string(PDP_CONTEXT_ID) + ",1,\"sora\",\"sora\"";
}
WioCellular.powerOn(POWER_ON_TIMEOUT_MS);
WioNetwork.begin();
WioCellular.executeCommand(BuildSoracomPdpAuthCommand(), CGAUTH_TIMEOUT_MS); // AT+CGAUTH
WioCellular.executeCommand("AT+COPS=3,2", COPS_TIMEOUT_MS);                  // oper形式をMCC+MNCに

電源投入・接続確認の手順とコードは1NCE記事と同じです。APN・PDP認証設定のみ差し替えてください。

実際の接続ログ

それでは、実際にSORACOM SIMでNTTドコモの通信網に接続した際のログを見ていきます。 以下は、電源投入後の実際のシリアルログです。

Waiting network... elapsed=10075/180000ms state=Searching
Waiting network... elapsed=20075/180000ms state=Searching
...(中略)...
Waiting network... elapsed=140075/180000ms state=Searching
Attach OK: periodic status every 10s
Radio t=164s net=Connected epsReg=1 ps=1 oper=44010 rat=eMTC band=LTE BAND 19 ch=6100 rssi=-75 rsrp=-90 rsrq=-13 sinrDb=0.0
Radio t=175s net=Connected epsReg=1 ps=1 oper=44010 rat=eMTC band=LTE BAND 19 ch=6100 rssi=-77 rsrp=-92 rsrq=-15 sinrDb=-2.0
Radio t=185s net=Connected epsReg=1 ps=1 oper=44010 rat=eMTC band=LTE BAND 19 ch=6100 rssi=-77 rsrp=-92 rsrq=-14 sinrDb=-2.0
Radio t=195s net=Connected epsReg=1 ps=1 oper=44010 rat=eMTC band=LTE BAND 1  ch=276  rssi=-81 rsrp=-90 rsrq=-9  sinrDb=6.0
Radio t=205s net=Connected epsReg=1 ps=1 oper=44010 rat=eMTC band=LTE BAND 1  ch=276  rssi=-66 rsrp=-90 rsrq=-11 sinrDb=4.0

電源投入から Attach OK まで約140秒かかりました。 その後 Radio ログに net=Connected が表示されれば接続成功です。

t=185s から t=195s にかけて BAND 19 → BAND 1 に切り替わっています。 どちらもドコモがLTE-Mで使用するバンドです。

Band周波数帯特徴
BAND 19800 MHzドコモのプラチナバンド。建物内に入りやすい
BAND 12.1 GHz都市部の主力バンド。容量が大きい

モジュールが自動的に電波状況の良い基地局を選択した結果、BAND 1 に切り替わったと考えられます。 切り替えと同時に SINR が -2 dB から 6 dB へ改善しています。

oper=44010 の場合はNTTドコモです。 MCC 440はすべて日本国内のキャリアを表し、MNC 10がNTTドコモに割り当てられています。 これは総務省が公表する電気通信番号に記載されています。

plan-Dはドコモ回線に直接接続する

SORACOM Air plan-D は epsReg=1(ローミングなしの国内接続)でした。 plan-D では無線とセッション管理はNTTドコモ、データ通信はSORACOMを経由します。 どちらも国内の事業者なので、データは国内で完結します。

一方、1NCE SIMは epsReg=5(ローミング)でした。 1NCEはドイツテレコムのグローバルSIMで、デフォルトではデータがドイツのゲートウェイを経由してインターネットに出ます(詳細)。

製造業・医療・金融など、データの国外経由が問題になる業種では、この違いがSIM選定に直結します。

サンプルコード

この記事で紹介したSORACOM接続のフルコードはGitHubで公開しています。

wio-bg770a-soracom-connect — iotbuilds-samples

Wio BG770A + SORACOM Air LTE-M 接続サンプル(PlatformIO)

github.com

まとめ

この記事では、Wio BG770AにSORACOM Air SIMを挿してLTE-M接続し、 電波品質と接続先の情報を確認する手順を紹介しました。

1NCEと接続する場合との違いは、APNを soracom.io に、PDP認証をPAP(type=1、sora/sora)に変えるだけです。

Wio BG770AはSORACOMから販売されているため、公式ドキュメントや事例が豊富で、 詰まったときの情報量が多い点はSORACOM SIMを選ぶ現実的な理由になります。

また、epsRegの値からSORACOMの日本カバレッジ(plan-D)は、NTTドコモのコアに直接接続していることが確認できました。

関連記事