WioLTEは携帯電話回線を利用したIoTモジュールです。WioLTE基盤に様々なセンサをつけ、WioLTEで通信を行うことによって比較的容易にIoTを実現できます。
Wio LTE JP Version – IoT プラットフォーム 株式会社ソラコム
WioLTEなのですが時としてなぜか携帯回線に繋がらない時があります。そういった時、用意された関数のみならずWioLTE本体の処理についてデバッグコードをいれたくなります。そうすることで何が原因でバグが起きているかより詳細な段階で知ることができます(用意されている関数では”失敗した”ことしかわからない)。
WioLTEはWioLTE開発者のためのコードが埋め込まれています。これを利用することでデバッグが可能です。最も重要なのはライブラリWio_LTE_for_Arduinoの中の/src/WioLTEConfig.hにある次の設定の変更です。
// #define WIO_DEBUG を #define WIO_DEBUG にする
これでデバッグモードの機能が解放されます。特に目立つのはシリアルポートにデバッグメッセージを出力する部分でしょう。これのおかげで”今、WioLTEの起動中”としかわからなかった部分が”今、WioLTEのLTEモジュール準備完了待ち”などと詳細にわかる様になります。次図は元よりある各所のデバッグコードに”これはいつどこのデバッグコードである”と情報を付与したデバッグコードの出力です。デバッグコードのおかげでLTEモジュールとマイコンモジュールの接続がタイムアウト(WioLTEのソースコードでは12000ms以内に接続できないと落ちるコードに作られている)したことによって携帯回線に接続できなかったことがわかります。