SORACOM を使って学ぶ AT コマンド - 2. 準備編
<宣伝>
この記事の内容をまとめてさらにアップデートした内容で「SORACOM で学ぶ AT コマンド入門」という本(電子書籍)にしました。
</宣伝>
前回の記事では、AT コマンドの概要を学びました。
今回は、AT コマンドを実際に実行したりしていろいろ試してみるために、準備を行っていきます。
以下のものを用意しましょう。
- USB タイプのモデム(Huawei MS2131i-8 もしくは Abit AK-020)
- SIM カード
モデム Huawei MS2131i-8 は SORACOM のユーザーコンソールでカバレッジタイプをグローバルに変更してからメニューの「発注」ページで購入します。
こちらの製品は価格が 50 米ドル、送料込で日本円に換算して約7,000〜8,000円程度です(いずれも2017年12月現在)
Abit AK-020 は同じく SORACOM のユーザーコンソールで購入できますが、こちらはカバレッジタイプを「日本」にしてから、メニューの「発注」ページで購入します。
もし SORACOM の SIM カードをまだ持っていない場合は、こちらの AK-020 に SIM カードとクーポン(従量課金のデータ通信量部分に適用可能)がセットになったスターターキットを購入されるとよいかもしれません。
3G USBドングル AK-020 SORACOMスターターキット
- メディア: エレクトロニクス
もし、他の USB 接続タイプのモデムをすでに持っていらっしゃる場合はそちらを使用しても大丈夫かもしれませんが、この記事のこの後のコマンドの実行などの際に文字列を読み替えていただいたりする必要が出てくるかもしれません。
モデムを入手したら、お手元のコンピューター用のデバイスドライバーをダウンロードしてインストールしてください。
Huawei MS2131i-8 の場合はこちらのブログ記事が参考になるかと思います。 https://blog.soracom.jp/blog/2017/11/08/huawei-ms2131i-8/
AK-020 の場合は取扱説明書がついてきますのでその通りにインストールを行います。(Mac の場合は Web サイトから最新版をダウンロードして使う必要があります)
また、コンピューターの USB ポートにモデムを挿して、モデムに付属のダイヤルアップ用アプリケーションなどで正常に接続でき、データ通信ができることも確認しておきましょう。
ここまで確認できたら、AT コマンドを実行できるようにしていきましょう。
macOS の場合
私は macOS 10.12 (Sierra) で動作確認を行いました。
まず、ターミナルを起動して以下のコマンドを実行してみてください。
Huawei MS2131i-8 を使っている場合:
ls /dev/tty.HUAWEIMobile-*
Abit AK-020 を使っている場合:
ls /dev/tty.USB*
注意: 上記以外のモデムを使用している場合や、OS のバージョンが異なる場合はデバイスファイル名が変わるかもしれません。/dev 以下でそれらしい名前のデバイスファイルを探してみてください。
(私が所有している L-05A というモデムの場合は /dev/tty.usbmodem*
という感じのデバイスファイル名でした。)
実行すると以下のような 3 つのデバイスファイルが見つかるはずです。
MS2131i-8 の場合:
/dev/tty.HUAWEIMobile-Diag /dev/tty.HUAWEIMobile-Modem /dev/tty.HUAWEIMobile-Pcui
AK-020 の場合:
/dev/tty.USB Application Port_ /dev/tty.USB Modem Port_ /dev/tty.Speech Port_
次に、以下のコマンドを実行してみてください。
MS2131i-8 の場合:
screen /dev/tty.HUAWEIMobile-Modem
AK-020 の場合:
screen /dev/tty.USB\ Modem\ Port_
これでモデムに接続できて、ターミナルの画面が真っ黒になった(プロンプトなどの表示が消えた)はずです。
(なお L-05A の場合は screen /dev/tty.usbmodem1411
で接続できました)
接続できたらAT
と入力し、Enter を押してみてください。
AT OK
というように OK
というレスポンスが返ってきたら成功です。
つぎに、ATI
と入力して Enter を押してみてください。
MS2131i-8 の場合は以下のようなレスポンスがありました。
ATI Manufacturer: huawei Model: MS2131 Revision: 21.751.19.00.00 IMEI: 86610xxxxxxxxxx +GCAP: +CGSM,+DS,+ES OK
(IMEI はハードウェアの固有の ID ですので念のためマスクしてあります。)
AK-020 の場合は以下のようなレスポンスがありました。
ATI MTK2 AK-020_V05_20160517 OK
もし反応がない場合は、デバイスファイル名を、さきほど ls
コマンドで見つけた他のものに変えて実行してみてください。
なお、screen コマンドを終了するには Ctrl-a
k
と入力します。(Ctrl-a
を押した後、Ctrl キーを離して k
を押します。なお、環境によってはコマンドを起動するためのキーの割り当てがデフォルトの Ctrl-a
から変更されている場合もあります。その場合はそちらを使ってください)
ちなみに、この ATI
は I
という AT コマンドを実行したことになります。
I
コマンドは ITU-T Rec. V.250 の 6.1.3 Request identification information に詳しく定義されていますが、モデムを識別する情報を表示するコマンドです。
メーカーや製品のモデル等によってどのような内容が表示されるかが変わります。
モデムによっては、ATI0
といったように、数値を続けて指定することができます。
Huawei MS2131i-8 も AK-020 もともに数値を指定してもレスポンスが変わりませんでしたが、メーカーや機種によっては指定した数値によってレスポンスの内容が変わる場合があるようです。
最後の OK
は AT コマンド共通の結果コードで、コマンドの実行が成功したことを示します。
何らかのエラーが起こった場合は ERROR
が返ります。
ここまでできたら準備完了です。
次の記事では、いよいよ実践的な AT コマンドを見ていきましょう。