ここでは、Raspberry Pi (Raspberry Pi OS) で Soracom Onyx - LTE™ USB ドングル (SC-QGLC4-C1) (以下、USB ドングル) を利用する際に、AT コマンドを実行する操作を紹介します。
Raspberry Pi OS が bookworm の場合
Raspberry Pi OS が bookworm の場合は、mmcli (ModemManager CLI) を利用して、USB ドングルが正しく認識されていることやシリアルポートを確認し、cu を利用して AT コマンドを実行できます。
Raspberry Pi に USB ドングルを接続しない状態で、Raspberry Pi にアクセスします。
IoT SIM 以外の方法で Raspberry Pi にアクセスできる状況で操作してください
この手順では、ModemManager を一時的に停止します。ModemManager を停止している間は IoT SIM を経由した通信 (例: Napter を利用したリモートアクセス) は利用できません。その結果、AT コマンドも実行できません。
そのため、事前に IoT SIM 以外の方法で Raspberry Pi にアクセスできる環境を整えてから手順を行ってください。たとえば Wi-Fi や有線 LAN を経由して Raspberry Pi にアクセスする、Raspberry Pi にキーボードとディスプレイを接続する、といった方法が考えられます。
Raspberry Pi で USB ドングルが正しく認識されていることを確認します。
$ mmcli -m any(省略) ----------------------------------- Hardware | manufacturer: QUALCOMM INCORPORATED | model: QUECTEL Mobile Broadband Module | firmware revision: EG25Gxxxxxxxxxxx (省略) ----------------------------------- System | device: /sys/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2 | drivers: option, qmi_wwan | plugin: quectel | primary port: cdc-wdm0 | ports: cdc-wdm0 (qmi), ttyUSB0 (qcdm), ttyUSB1 (gps), | ttyUSB2 (at), ttyUSB3 (at), wwan0 (net) ----------------------------------- (省略) ----------------------------------- 3GPP | imei: 123456789012345 | enabled locks: fixed-dialing | operator id: 44051 | operator name: SORACOM (省略) ----------------------------------- SIM | primary sim path: /org/freedesktop/ModemManager1/SIM/0 ----------------------------------- (省略)Hardware: USB ドングルは、Quectel EG25-G を通信モジュールとして使用しています。System:portsに表示されるシリアルポートのうち、(at)が表示されているもの (例:ttyUSB2やttyUSB3) が AT コマンドを実行できます。手順 4 では、AT コマンドを実行できるシリアルポートを指定してください。3GPP:imeiとoperator nameを確認します。imeiは USB ドングルの IMEI (International Mobile Equipment Identity) です。USB ドングルに挿入した IoT SIM の詳細情報を SORACOM ユーザーコンソールで確認すると、 と一致することを確認できます。IoT SIM の詳細情報を確認する手順について詳しくは、IoT SIM の情報を確認する を参照してください。operator nameに「SORACOM」が表示されていることを確認します。
SIM: USB ドングルに挿入した IoT SIM の情報を確認するための情報です。primary sim pathの 末尾の0は、ModemManager が管理する IoT SIM の識別番号です。次の手順で使います。
USB ドングルに挿入した IoT SIM の情報を確認します。
ModemManager が管理する IoT SIM の識別番号 (前の手順で
SIMに表示されるprimary sim pathの末尾の番号) が0の場合は、以下のコマンドを実行します。$ mmcli -i 0(省略) ------------------------------- Properties | active: yes | imsi: 123456789012345 | iccid: 1234567890123456789 (省略)Properties:imsiとiccidは USB ドングルに挿入した IoT SIM の IMSI (International Mobile Subscriber Identity) と ICCID (Integrated Circuit Card ID) です。IoT SIM の詳細情報を SORACOM ユーザーコンソールで確認すると、 や (または ) と一致することが確認できます。IoT SIM の詳細情報を確認する手順について詳しくは、IoT SIM の情報を確認する を参照してください。
IoT SIM 以外の方法で Raspberry Pi にアクセスできることを確認して、ModemManger を停止します。
$ sudo systemctl stop ModemManagercuコマンドで AT コマンドを実行できるシリアルポート (例:/dev/ttyUSB3) に接続します。$ cu -l /dev/ttyUSB3 -s 57600Connected.Line in useと表示されたときは以下のように表示された場合は、手順 3 の説明に従って ModemManager を終了してください。
$ cu -l /dev/ttyUSB3 -s 57600cu: /dev/ttyUSB3: Line in useAT コマンドのエコーバック (自分が入力した内容を表示する機能) を有効化します。
ATE1 (入力しても表示されません)OKこれ以降、自由に AT コマンドを実行できます。
AT コマンドの実行が終わったら cu コマンドを終了します。
cu コマンドを終了するには、Enter キーを押してから
~.を入力して少し待ちます。cu コマンドが終了します。
停止した ModemManager を再開するには、以下のコマンドを実行します。
$ sudo systemctl start ModemManagerModemManager が USB ドングルを認識するまで少し時間がかかります。
