この文書の現在のバージョンと選択したバージョンの差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
mae3xx_ope:manage_kym11:start [2016/01/22 12:52] admin [使用方法 (コマンド)] |
mae3xx_ope:manage_kym11:start [2021/11/22 10:47] admin [使用方法 (コマンド)] |
||
---|---|---|---|
ライン 1: | ライン 1: | ||
+ | ====== LTE モジュール (KYM11/KYM12) の管理 ====== | ||
+ | MA-E350/KL(AD) には、京セラ製 LTE モジュール [[https://biz.kddi.com/service/iot-lte/product/|KYM11/KYM12]] を搭載しています。\\ | ||
+ | AT コマンドが標準的な規格に準拠しておらず独自コマンド体系なため、モジュールの各種情報を取得するライブラリおよびそれを利用するコマンドを準備してあります。 | ||
+ | |||
+ | [[http://www.kddi.com/business/mobile/m2m-solution/domestic-m2m/product/kym11/|{{http://media3.kddi.com/extlib/business/mobile/m2m-solution/cdma-module/product/index/img_05.jpg|KYM11}}]] | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ===== 使用方法 (コマンド) ===== | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util | ||
+ | usage: kym11util [command] [args..] | ||
+ | command: | ||
+ | get_datetime: get date/time from KYM11 (AT$31?) | ||
+ | get_pktstat: get packet status (AT$36?) | ||
+ | get_tempprotect: get Temperature Protection status (AT$39?) | ||
+ | get_version: get module version (AT+GMR) | ||
+ | get_simstat: get SIM registration status (AT$20?) | ||
+ | get_telno: get SIM telephone number (AT$21?) | ||
+ | get_iccid: get module ICCID (AT$19?) | ||
+ | get_imei: get module IMEI (AT$10?) | ||
+ | select_sim [0|1]: select SIM (0: internal / 1: external) (AT$18=m) | ||
+ | OTA: perform OTASP (AT@30) | ||
+ | get_status: get all status | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | ※ v4.4.8rc3 から | ||
+ | |||
+ | <code> | ||
+ | usage: kym_util [command] [args..] | ||
+ | command: | ||
+ | get_datetime: get date/time from KYM1x (AT$31?) | ||
+ | get_pktstat: get packet status (AT$36?) | ||
+ | get_tempprotect: get Temperature Protection status (AT$39?) | ||
+ | get_version: get module version (AT+GMR) | ||
+ | get_simstat: get SIM registration status (AT$20?) | ||
+ | get_telno: get SIM telephone number (AT$21?) | ||
+ | get_iccid: get SIM ICCID (AT$19?) | ||
+ | get_imei: get module IMEI (AT$10?) | ||
+ | get_reason: get disconnect reason (ATS86?) ※ 追加 | ||
+ | get_error_report: get error report from module (AT$59) ※ 追加 | ||
+ | select_sim [0|1]: select SIM (0: internal / 1: external) (AT$18=m) | ||
+ | get_sim: get selected SIM information (AT$18?) ※ 追加 | ||
+ | OTA: perform OTASP (AT@30) | ||
+ | firmup: perform Firmware Update (AT@40) ※ 追加 | ||
+ | get_status: get all status | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | |<60em 7em 20em 10em 15em>| | ||
+ | ^ Command ^ 動作 ^ 発行する AT コマンド ^ 備考 | | ||
+ | |get_datetime|現在の日付情報の表示| AT$31? | | | ||
+ | |get_pktstat|パケットステータスの表示| AT$36? | | | ||
+ | |get_tempprotect|温度プロテクション状態表示| AT$39? | | | ||
+ | |get_version|モジュールのファームウェアバージョンの表示| AT+GMR | | | ||
+ | |get_simstat|顧客登録状態の表示| AT$20? | | | ||
+ | |get_telno|電話番号の表示| AT$21? | | | ||
+ | |get_iccid|ICCID 表示| AT$19? | | | ||
+ | |select_sim|SIM カード、組込 SIM 優先モード切替| AT$18=[m] | | | ||
+ | |OTA|OTASP 起動要求 (利用開始登録)| AT@30 | | | ||
+ | |||
+ | ※ 通信中は使用できません((コマンドが 『ATコマンドモード』 でないと動作せず、『ATコマンドモード』か確認およびモードを変更するコマンドがモデムポート(通信に使用)でしか動作しないため、通信中は使用できません )) | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== 現在の日付情報の表示 ==== | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util get_datetime | ||
+ | 2014/09/19 15:52:53 | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | ※ LTE 網へアタッチが完了し、基地局から時刻情報の取得ができるまでは不正な日時(2000/01/01 00:00:00)が返ります。 | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== パケットステータスの表示 ==== | ||
+ | |||
+ | モジュールの通信状態の表示を行います。 | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util get_pktstat | ||
+ | Idle (3) | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | |<33em 7em 22em>| | ||
+ | ^ Result ^ Information | | ||
+ | |Detached (1)|LTE Detach 状態 (システムに在圏していない状態)| | ||
+ | |Idle (3)|LTE Attach 状態、かつ無線接続なし| | ||
+ | |Connected (4)|LTE Attach 状態、かつ無線接続あり| | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== 温度プロテクション状態表示 ==== | ||
+ | |||
+ | 温度プロテクション機能によりプロテクション状態となっているかを表示します。 | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util get_tempprotect | ||
+ | Normal (0) | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | |<33em 7em 22em>| | ||
+ | ^ Result ^ Information | | ||
+ | |Normal (0)|通常状態| | ||
+ | |Protected (1)|温度プロテクション状態| | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== モジュールのファームウェアバージョンの表示 ==== | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util get_version | ||
+ | 010101 | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== 顧客登録状態の表示 ==== | ||
+ | |||
+ | モジュールの契約状態および電波送受信可能な状態であるか否かの表示を行います。 | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util get_simstat | ||
+ | Registered, Ready (1) | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | |<38em 15em 22em>| | ||
+ | ^ Result ^ Information | | ||
+ | |Not registered (0)|未登録 (灰ロム状態)| | ||
+ | |Registered, Ready (1)|登録 (黒ロム) + 電波送受信可能状態| | ||
+ | |Registered, Not ready (2)|登録 (黒ロム) + 電波送受信不可能状態| | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== 電話番号の表示 ==== | ||
+ | |||
+ | モジュールの電話番号を表示します。 | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util get_telno | ||
+ | 08065xxxxxx | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== ICCID 表示 ==== | ||
+ | |||
+ | ICCID の表示を行います。 | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util get_iccid | ||
+ | 898xxxxxxxxxxxxxxxx | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== SIM カード、組込 SIM 優先モード切替 ==== | ||
+ | |||
+ | SIM カード、組込 SIM 優先モードの切替を行います。 | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util select_sim 1 | ||
+ | OK | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | |<33em 7em 22em>| | ||
+ | ^ Parameter ^ Info | | ||
+ | | 0 |組込 SIM 専用| | ||
+ | | 1 |SIM カード優先| | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== OTASP 起動要求 (利用開始登録) ==== | ||
+ | |||
+ | 無線を介して加入者情報を書き込む OTASP の起動を行います。\\ | ||
+ | 本コマンドは、灰ロム状態でのみ実行可能です。 | ||
+ | |||
+ | === 成功 === | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util OTA | ||
+ | OTASP started. | ||
+ | OTA progress: 1 | ||
+ | OTA progress: 2 | ||
+ | OTA progress: 3 | ||
+ | OTA progress: 4 | ||
+ | OTASP completed. | ||
+ | OK | ||
+ | user1@plum:~$ echo $? | ||
+ | 0 | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | === 失敗 === | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util OTA | ||
+ | OTASP started. | ||
+ | OTA progress: 1 | ||
+ | OTA progress: 2 | ||
+ | Commit Response message not received. | ||
+ | Fail | ||
+ | user1@plum:~$ echo $? | ||
+ | 1 | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | === 利用開始済み === | ||
+ | |||
+ | <code> | ||
+ | user1@plum:~$ sudo kym11util OTA | ||
+ | Already activated. | ||
+ | OK | ||
+ | user1@plum:~$ echo $? | ||
+ | 0 | ||
+ | user1@plum:~$ | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ===== TIPS ===== | ||
+ | |||
+ | ==== 通信前に各種情報を取得しておく ==== | ||
+ | |||
+ | 前述したとおり、現在のモードを取得・変更するのがモデムポート経由でしかできないため、通信中に各種情報を取得することができません。\\ | ||
+ | 回避策として、デバイス発見時に情報を取得し、ファイルへ出力しておくという方法が考えられます。 | ||
+ | |||
+ | 下記のようなファイルを準備、変更します。 | ||
+ | |||
+ | * /usr/local/sbin/kym11info((chmod で 実行ビットを立てておく必要があります)) | ||
+ | |||
+ | <file bash kym11info> | ||
+ | #! /bin/bash | ||
+ | |||
+ | (sleep 10; /usr/bin/python3 /usr/local/lib/python3.4/dist-packages/kym11lib.py &> /tmp/kym11info) & | ||
+ | </file> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | * /etc/udev/rules.d/10-mae3xx.rules | ||
+ | |||
+ | <file generic 10-mae3xx.rules> | ||
+ | # ublox LISA-2xx | ||
+ | SUBSYSTEM=="tty", ATTRS{modalias}=="usb:v1546p1102d1676dcEFdsc02dp01ic02isc02ip01in00", ACTION=="add", SYMLINK+="ttyLISA0" | ||
+ | SUBSYSTEM=="tty", ATTRS{modalias}=="usb:v1546p1102d1676dcEFdsc02dp01ic02isc02ip01in02", ACTION=="add", SYMLINK+="ttyLISA1" | ||
+ | SUBSYSTEM=="tty", ATTRS{modalias}=="usb:v1546p1102d1676dcEFdsc02dp01ic02isc02ip01in04", ACTION=="add", SYMLINK+="ttyLISA2", RUN+="/usr/bin/touch /tmp/.lisa_found" | ||
+ | SUBSYSTEM=="usb", ENV{ID_VENDOR}=="u-blox", ACTION=="remove", RUN+="/bin/rm -f /tmp/.lisa_found" | ||
+ | |||
+ | # Kyocera KYM11 | ||
+ | SUBSYSTEM=="tty", ATTRS{modalias}=="usb:v0482p0848d0100dc02dsc00dp00ic02isc02ip01in02", ACTION=="add", SYMLINK+="ttyKYM11", RUN+="/usr/bin/touch /tmp/.kym11_found", RUN+="/usr/local/sbin/kym11info" | ||
+ | SUBSYSTEM=="usb", ENV{ID_VENDOR}=="KYOCERA", ACTION=="remove", RUN+="/bin/rm -f /tmp/.kym11_found" | ||
+ | SUBSYSTEM=="net", DRIVERS=="cdc_ncm", KERNEL=="usb*", ACTION=="add", NAME="wwan0" | ||
+ | |||
+ | # Hitachi Kokusai UM03-KO | ||
+ | SUBSYSTEM=="tty", ATTRS{modalias}=="usb:v0949p0001d1344dc02dsc00dp00ic02isc02ip01in02", ACTION=="add", SYMLINK+="ttyUM03KO0" | ||
+ | SUBSYSTEM=="tty", ATTRS{modalias}=="usb:v0949p0001d1344dc02dsc00dp00ic02isc02ip01in04", ACTION=="add", SYMLINK+="ttyUM03KO1", RUN+="/usr/bin/touch /tmp/.um03ko_found" | ||
+ | SUBSYSTEM=="usb", ENV{ID_MODEL}=="FOMA_UM03-KO", ACTION=="remove", RUN+="/bin/rm -f /tmp/.um03ko_found" | ||
+ | |||
+ | # AMTelecom AMP520 | ||
+ | SUBSYSTEM=="tty", ATTRS{modalias}=="usb:v1ECBp0202d0232dc02dsc00dp00ic02isc02ip01in00", ACTION=="add", SYMLINK+="ttyAMP0" | ||
+ | SUBSYSTEM=="tty", ATTRS{modalias}=="usb:v1ECBp0202d0232dc02dsc00dp00icFFiscFFip04in03", ACTION=="add", SYMLINK+="ttyAMP1", RUN+="/usr/bin/touch /tmp/.amp520_found" | ||
+ | SUBSYSTEM=="usb", ENV{ID_MODEL}=="AMP520", ACTION=="remove", RUN+="/bin/rm -f /tmp/.amp520_found" | ||
+ | |||
+ | # OMAP RTC | ||
+ | SUBSYSTEM=="rtc", KERNEL=="rtc1", RUN+="/sbin/hwclock -f /dev/rtc1 --systohc" | ||
+ | |||
+ | # Atheros/MediaTek WiFi | ||
+ | SUBSYSTEM=="ieee80211", ACTION=="add", ATTRS{busnum}=="2", RUN+="/usr/local/sbin/set_trigger %s{name} %s{idVendor} %s{idProduct}" | ||
+ | |||
+ | # USB-SATA bridge | ||
+ | KERNEL=="sd?", SUBSYSTEM=="block", ATTRS{idVendor}=="0451", ATTRS{idProduct}=="9261", RUN+="/usr/local/sbin/update_scheduler %k" | ||
+ | </file> | ||
+ | |||
+ | KYM11 を見つけたとき(("# Kyocera KYM11" の次の行))に実行するコマンドに、 **RUN+="/usr/local/sbin/kym11info"** を追加しています。 | ||
+ | |||
+ | \\ | ||
+ | |||
+ | この変更により、モジュール検出時に情報を取得し、ファイルへ出力しておくことができます。 | ||
+ | |||
+ | <code> | ||
+ | # cat /tmp/kym11info | ||
+ | == KYM11 status == | ||
+ | Date/Time: 0000/00/00 00:00:00 | ||
+ | Packet Status: Detached | ||
+ | Temp Protection: Normal | ||
+ | Module version: 010300 | ||
+ | SIM status: Registered, Ready | ||
+ | Telephone No: 0806xxxxxxx | ||
+ | ICCID: 8981xxxxxxxxxxxxxxx | ||
+ | </code> | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ===== モジュール使用開始の流れ ===== | ||
+ | |||
+ | |||
+ | \\ |