沖縄で、Wio LTE M1/NB1(BG96)を使っていると、通信可能になるまで、電源投入から2分近くかかっていたりします。同じ通信方式を使っているあのボタンとかは、沖縄でも、8秒ぐらいで、サーバに通知されるんだから、もっと速くなってもいいのではないか?
ちなみに、SORACOM Plan KMのSIMを使っての検証です。
基地局サーチするのに時間掛かっているのか?ということで、何か使えるATコマンドはないか?と『BG96 AT』みたいなキーワードで検索してみると、ATコマンドマニュアルを発見したので、AT+QCFGコマンドあたりで高速化できそうなので、試してみたら、高速化ができました!
早速、ソースコード
(おまじないって書いてある部分が追加分)
#include <WioCellLibforArduino.h>
WioCellular Wio;
void setup() {
delay(200);
SerialUSB.begin(115200);
SerialUSB.println("");
SerialUSB.println("--- START ---------------------------------------------------");
SerialUSB.println("### I/O Initialize.");
Wio.Init();
SerialUSB.println("### Power supply ON.");
Wio.PowerSupplyCellular(true);
delay(500);
SerialUSB.println("### Turn on or reset.");
#ifdef ARDUINO_WIO_LTE_M1NB1_BG96
Wio.SetAccessTechnology(WioCellular::ACCESS_TECHNOLOGY_LTE_M1);
Wio.SetSelectNetwork(WioCellular::SELECT_NETWORK_MODE_MANUAL_IMSI);
#endif
if (!Wio.TurnOnOrReset()) {
SerialUSB.println("### ERROR! ###");
return;
}
SerialUSB.println("### おまじない start ###");
while (SerialModule.available() > 0) {
SerialUSB.write(SerialModule.read());
}
SerialModule.write("AT+QCFG=\"band\",0,20000,0"); // B18固定
SerialModule.write(0x0d);
delay(300);
while (SerialModule.available() > 0) {
SerialUSB.write(SerialModule.read());
}
SerialUSB.println("### おまじない end ###");
SerialUSB.println("### Connecting to \"soracom.io\".");
if (!Wio.Activate("soracom.io", "sora", "sora")) {
SerialUSB.println("### ERROR! ###");
return;
}
SerialUSB.println("### Setup completed.");
}
void loop() {
// put your main code here, to run repeatedly:
}
どのくらい速くなったのか?
20:15:03.288 ->
20:15:03.288 -> --- START ---------------------------------------------------
20:15:03.288 -> ### I/O Initialize.
20:15:03.288 -> ### Power supply ON.
20:15:03.764 -> ### Turn on or reset.
20:15:09.100 -> ### おまじない start ###
20:15:09.421 ->
20:15:09.421 -> OK
20:15:09.421 ->
20:15:09.421 -> +QIND: SMS DONE
20:15:09.421 -> ### おまじない end ###
20:15:09.421 -> ### Connecting to "soracom.io".
20:15:12.001 -> ### Setup completed.
ってことで電源ONから9秒で、接続完了しています。
以上、ご参考までに