Mengakses AT Command di Openwrt dan Windows

Radenku.com – Kalian memiliki modem yang bisa di kontrol menggunakan AT Command tapi belum tahu cara Akses AT Command di openwrt dan windows mungkin bisa membaca post ini sampai selesai.

Jika modem kalian memiliki port serial maka kemungkinan port itu digunakan untuk AT Command, AT Command memungkinkan kita bisa mengontrol dan mengakses informasi modem seperti SMS, koneksi modem, temperatur internet dll.

1. Apa itu AT Command?

AT Command kepanjangan dari “ATtention Command”, yaitu suatu perintah untuk dapat mengontrol perangkat modem. Setiap perintah AT Command diawali dengan “AT” atau “at”.

AT Command digunakan untuk mengontrol & mengakses device modem seperti SMS, panggilan, informasi device, band lock dll. Ketika kita mengirim perintah AT Command, modem akan selalu memberikan respon balik. seperi “OK” , “ERROR” , maupun menampilkan informasi.

Perlu diketahui AT Command list setiap vendor mempunyai standarnya masing-masing. Contohnya antara brand telit, foxconn, huawei, quectel dan sierra wireless mempunyai AT command yang berbeda beda.

Misalnya AT command sierra wireless cek info modem AT!GSTATUS? sedangkan foxconn AT^DEBUG?. Walapun satu brand vendor pun AT Command bisa berbeda, jadi kalian perlu cari AT commands list, biasanya ada di datasheet manual at commands pdf.

Walaupun begitu ada perintah AT Command yang umum bisa dipakai di semua device yaitu 3GPP AT Commands. Berikut contoh beberapa list AT Commandnya.

ATCek AT 
ATIIdentifikasi device
ATEEcho
AT+GMIMenampilkan info manufaktur
AT+GMMMenampilkan info model
AT+GMRMenampilkan info revisi
AT+GSNMenampilkan IMEI device
AT+CIMIMenampilkan IMSI SIM Card
AT+CFUN=1Full Functionality
AT+CFUN=4Disable Tx & Rx (Mode Pesawat)
AT+CFUN=1,1Restart device

2. AT Command Windows

AT Command di Windows bisa langsung akses melalui port serial. Nomor COM port bisa cek di menu device manager. Untuk setiap modem memiliki driver yang berbeda-beda contohnya ini seperti Dell Dw5821e & Fibocom L860-GL.

Mengakses AT Command di Openwrt Windows 1 | radenku
COM Ports Device Manager

Contoh diatas Dell Dw5821e ada 3 port yaitu COM12, COM4 & COM13, dimana port AT yaitu di COM12 yang bernama Application Interface.

Untuk Fibocom L860 GL ada 2 yaitu COM38 & COM17, berbeda dengan Dell disini hanya bernama acm1 dan acm2, maka kita harus mengetes terlebih dahulu mana port AT nya.

Di Windows kita bisa akses Port menggunakan program Putty, MobaXterm, qnavigator dll.

Pertama kita masuk dulu ke device manager & cek port COMnya. Aku contohkan dengan modem Dell Dw5821e yaitu COM12.

Disini aku menggunakan Putty. Buka putty masukkan nomor portnya, pilih serial.

Mengakses AT Command di Openwrt Windows 2 | radenku

Jika sudah masuk ke terminalnya tinggal cek bisa komunikasi dengan modemnya enggak. Ketik AT, jika ada respon OK maka kita bisa masukkan at command yang lain.

Jika tidak merespon maka kemungkinan port tersebut bukan port at command, bisa jadi untuk GPS atau Diagnostic, ganti ke COM port lain sampai respon AT.

Mengakses AT Command di Openwrt Windows 3 | radenku

3. AT Command Openwrt

Untuk di Openwrt banyak program untuk mengakses AT Command baik melalui Terminal maupun LuCI. Melalui terminal bisa menggunakan minicom, picocom, atinout. Untuk melalui LuCI bisa menggunakan luci-app-atinout-mod, atau luci-app-sms-tools.

Note: atinout, luci atinout & smstools tidak ada di repositori official Openwrt. silakan pasang My Opkg Repo terlebih dahulu agar bisa diinstall: Openwrt Custom Feeds “My Opkg Repo”.

Sama seperti di Windows kita harus mengakses spesifik portnya. Di openwrt portnya biasa dengan nama /dev/tty*.

Port bisa di lihat di LuCI ketika modem di pasang ke router dan di cek di menu Status > System Log.

Tue Jan 25 15:05:19 2022 kern.info kernel: [  106.716348] usb 1-1: new high-speed USB device number 3 using ehci-platform
Tue Jan 25 15:05:19 2022 kern.info kernel: [  106.880087] usb 1-1: USB disconnect, device number 3
Tue Jan 25 15:05:27 2022 kern.info kernel: [  115.623866] usb 1-1: new high-speed USB device number 4 using ehci-platform
Tue Jan 25 15:05:28 2022 kern.info kernel: [  115.836764] cdc_mbim 1-1:2.0: cdc-wdm0: USB WDM device
Tue Jan 25 15:05:28 2022 kern.info kernel: [  115.838864] cdc_mbim 1-1:2.0 wwan0: register 'cdc_mbim' at usb-ff5c0000.usb-1, CDC MBIM, e6:3f:68:dc:57:7f
Tue Jan 25 15:05:28 2022 kern.info kernel: [  115.842515] option 1-1:2.2: GSM modem (1-port) converter detected
Tue Jan 25 15:05:28 2022 kern.info kernel: [  115.843678] usb 1-1: GSM modem (1-port) converter now attached to ttyUSB0
Tue Jan 25 15:05:28 2022 kern.info kernel: [  115.845601] option 1-1:2.3: GSM modem (1-port) converter detected
Tue Jan 25 15:05:28 2022 kern.info kernel: [  115.846909] usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1
Tue Jan 25 15:05:28 2022 kern.info kernel: [  115.848373] option 1-1:2.4: GSM modem (1-port) converter detected
Tue Jan 25 15:05:28 2022 kern.info kernel: [  115.849345] usb 1-1: GSM modem (1-port) converter now attached to ttyUSB2
Tue Jan 25 15:05:28 2022 kern.info kernel: [  115.850935] option 1-1:2.5: GSM modem (1-port) converter detected
Tue Jan 25 15:05:28 2022 kern.info kernel: [  115.852381] usb 1-1: GSM modem (1-port) converter now attached to ttyUSB3

Dell Dw5821e

Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.309831] usb 1-1: new high-speed USB device number 6 using ehci-platform
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.482510] cdc_acm 1-1:1.0: ttyACM0: USB ACM device
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.488046] cdc_acm 1-1:1.2: ttyACM1: USB ACM device
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.492948] cdc_acm 1-1:1.4: ttyACM2: USB ACM device
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.519854] cdc_ncm 1-1:1.6: MAC-Address: 00:00:11:12:13:14
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.520372] cdc_ncm 1-1:1.6: setting rx_max = 16384
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.522421] cdc_ncm 1-1:1.6 eth2: register 'cdc_ncm' at usb-ff5c0000.usb-1, CDC NCM, 00:00:11:12:13:14
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.547723] cdc_ncm 1-1:1.8: MAC-Address: 00:00:11:12:13:16
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.548238] cdc_ncm 1-1:1.8: setting rx_max = 16384
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.550914] cdc_ncm 1-1:1.8 eth3: register 'cdc_ncm' at usb-ff5c0000.usb-1, CDC NCM, 00:00:11:12:13:16
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.583869] cdc_ncm 1-1:1.10: MAC-Address: 00:00:11:12:13:18
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.584403] cdc_ncm 1-1:1.10: setting rx_max = 16384
Tue Jan 25 15:08:21 2022 kern.info kernel: [  289.587197] cdc_ncm 1-1:1.10 eth4: register 'cdc_ncm' at usb-ff5c0000.usb-1, CDC NCM, 00:00:11:12:13:18

Fibocom L860-GL

Contoh Dell Dw5821e diatas ada 4 port yaitu

  • /dev/ttyUSB0
  • /dev/ttyUSB1
  • /dev/ttyUSB2
  • /dev/ttyUSB3.

Sedangkan Fibocom L860 GL ada 3

  • /dev/ttyACM0
  • /dev/ttyACM1
  • /dev/ttyACM2.

Atau bisa juga di cek menggunakan terminal bisa dengan perintah

logread | grep tty

atau

ls /dev/tty*

Setiap modem mempunyai driver berbeda. Biasanya modem menggunakan driver serial option, serial qualcomm dan ACM.

Driver serial option di openwrt packagenya bernama kmod-usb-serial-option. Contoh modem yang menggunakan serial option yaitu HP Lt4220, Dell Dw5821e, Huawei Me909s & Quectel. Untuk device portnya /dev/ttyUSB*, dan di cek menggunakan usbutils seperti ini.

root@OpenWrt:~# lsusb -t
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-platform/1p, 480M
    |__ Port 1: Dev 4, If 0, Class=, Driver=cdc_mbim, 480M
    |__ Port 1: Dev 4, If 1, Class=, Driver=cdc_mbim, 480M
    |__ Port 1: Dev 4, If 2, Class=, Driver=option, 480M
    |__ Port 1: Dev 4, If 3, Class=, Driver=option, 480M
    |__ Port 1: Dev 4, If 4, Class=, Driver=option, 480M
    |__ Port 1: Dev 4, If 5, Class=, Driver=option, 480M
    |__ Port 1: Dev 4, If 6, Class=, Driver=, 480M

Driver serial qualcomm kmod-usb-serial-qualcomm sering dipakai di modem Sierra, contohnya Sierra EM7430 & EM7455. Untuk portnya sama seperti serial option yaitu /dev/ttyUSB* .

root@OpenWrt:~# lsusb -t
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-platform/1p, 480M
    |__ Port 1: Dev 6, If 1, Class=, Driver=qcserial, 480M
    |__ Port 1: Dev 6, If 2, Class=, Driver=qcserial, 480M
    |__ Port 1: Dev 6, If 3, Class=, Driver=qcserial, 480M
    |__ Port 1: Dev 6, If 8, Class=, Driver=qmi_wwan, 480M

Untuk ACM menggunakan package kmod-usb-acm dan di openwrt terdetek cdc_acm contohnya digunakan di modem Fibocom L850 GL, L860 GL dan Bolt BL100. Untuk serial portnya di /dev/ttyACM*

root@OpenWrt:~# lsusb -t
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-platform/1p, 480M
    |__ Port 1: Dev 8, If 0, Class=, Driver=cdc_acm, 480M
    |__ Port 1: Dev 8, If 1, Class=, Driver=cdc_acm, 480M
    |__ Port 1: Dev 8, If 2, Class=, Driver=cdc_acm, 480M
    |__ Port 1: Dev 8, If 3, Class=, Driver=cdc_acm, 480M
    |__ Port 1: Dev 8, If 4, Class=, Driver=cdc_acm, 480M
    |__ Port 1: Dev 8, If 5, Class=, Driver=cdc_acm, 480M
    |__ Port 1: Dev 8, If 6, Class=, Driver=cdc_ncm, 480M
    |__ Port 1: Dev 8, If 7, Class=, Driver=cdc_ncm, 480M
    |__ Port 1: Dev 8, If 8, Class=, Driver=cdc_ncm, 480M
    |__ Port 1: Dev 8, If 9, Class=, Driver=cdc_ncm, 480M
    |__ Port 1: Dev 8, If 10, Class=, Driver=cdc_ncm, 480M
    |__ Port 1: Dev 8, If 11, Class=, Driver=cdc_ncm, 480M
    |__ Port 1: Dev 8, If 12, Class=, Driver=, 480M

3.1 Minicom

Untuk di openwrt aku seringnya menggunakan minicom. Install minicom di openwrt bisa langsung ketik di terminal.

opkg update && opkg install minicom

Kita masuk ke terminal minicom terlebih dahulu dengan

minicom -D /dev/ttyUSB1

/dev/ttyUSB1 sesuaikan dengan port modem kalian.

Untuk exit minicom menggunakan kombinasi tombol “Ctrl” “a” + “x”

AT Command minicom | radenku

3.2 Picocom

Picocom hampir sama dengan minicom. Install picocom

opkg update && opkg install picocom

Untuk mengakses picocom perintahnya picocom <port-AT> contoh:

picocom /dev/ttyUSB1

Untuk keluar dari picocom menggunakan tombol “Ctrl” “a” + “Ctrl” “x”

picocom openwrt at command | radenku

3.3 Atinout

Install atinout

opkg update && opkg install atinout

Atinout bisa langsung ketik seperti ini echo <AT-Command> | atinout - <port AT> - contohnya dengan AT Command “AT” dan port /dev/ttyUSB1 maka

echo AT | atinout - /dev/ttyUSB1 -
Mengakses AT Command di Openwrt Windows 4 | radenku

3.4 luci-app-atinout-mod

luci-app-atinout merupakan atinout yang bisa diakses melalui LuCI, tanpa menggunakan terminal.

untuk menginstallnya

opkg update && opkg install luci-app-atinout-mod

Untuk mengaksesnya bisa masuk ke Luci di menu Modem > AT Command. Sebelumnya kita setting dulu portnya di Configuration.

Jika ingin menambahkan listnya bisa diedit dengan format <nama-AT>;<AT-Command>, misalnya AT;AT

luci app atinout openwrt 2 | radenku
luci-app-atinout
luci app atinout openwrt | radenku
konfigurasi luci-app-atinout

3.5 luci-app-sms-tool

Walapun namanya sms-tool tetapi package ini bisa juga untuk AT Command. Tampilannya mirip dengan luci-app-atinout-mod tetapi aku coba malah lebih enak pakai ini dibanding atinout, karena luci-app-ainout-mod bisanya sering error.

Untuk installnya:

opkg update && opkg install luci-app-sms-tool

Masuk ke Luci menu Modem > SMS Tools, sebelumnya harus setting portnya dahulu sama seperti luci-app-atinout.

luci app sms tool 2 | radenku

4. Troubleshoot

Driver terinstall tapi tidak terdetek

Terkadang ada kasus driver sudah terinstall tapi di usbutils tidak terdetek.

root@OpenWrt:~# lsusb && lsusb -t
Bus 002 Device 001: ID 1d6b:0001 Linux 5.4.154 ohci_hcd Generic Platform OHCI controller
Bus 004 Device 001: ID 1d6b:0003 Linux 5.4.154 xhci-hcd xHCI Host Controller
Bus 001 Device 012: ID 1bc7:1911 Telit Telit LN960 Mobile Broadband
Bus 001 Device 001: ID 1d6b:0002 Linux 5.4.154 ehci_hcd EHCI Host Controller
Bus 003 Device 001: ID 1d6b:0002 Linux 5.4.154 xhci-hcd xHCI Host Controller
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ohci-platform/1p, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-platform/1p, 480M
    |__ Port 1: Dev 12, If 0, Class=, Driver=, 480M
    |__ Port 1: Dev 12, If 1, Class=, Driver=, 480M
    |__ Port 1: Dev 12, If 2, Class=, Driver=, 480M
    |__ Port 1: Dev 12, If 3, Class=, Driver=, 480M
    |__ Port 1: Dev 12, If 4, Class=, Driver=cdc_mbim, 480M
    |__ Port 1: Dev 12, If 5, Class=, Driver=cdc_mbim, 480M

Contoh diatas modem Telit Ln960 (Dw5821e Customer 2), Openwrt sudah terinstal driver kmod-usb-serial-option, tetapi tidak terdetek. Ini dikarenakan di kernel tidak ada patch untuk Telit Ln960.

Cara mengatasinya yaitu dengan cara menambahkan driver option.

echo "1bc7 1911" > /sys/bus/usb-serial/drivers/option1/new_id 

1bc7 1911 sesuaikan dengan vid:pid modem kalian.

Jika di cek lagi maka akan seperti ini.

root@OpenWrt:~# lsusb && lsusb -t
Bus 002 Device 001: ID 1d6b:0001 Linux 5.4.154 ohci_hcd Generic Platform OHCI controller
Bus 004 Device 001: ID 1d6b:0003 Linux 5.4.154 xhci-hcd xHCI Host Controller
Bus 001 Device 012: ID 1bc7:1911 Telit Telit LN960 Mobile Broadband
Bus 001 Device 001: ID 1d6b:0002 Linux 5.4.154 ehci_hcd EHCI Host Controller
Bus 003 Device 001: ID 1d6b:0002 Linux 5.4.154 xhci-hcd xHCI Host Controller
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ohci-platform/1p, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-platform/1p, 480M
    |__ Port 1: Dev 12, If 0, Class=, Driver=option, 480M
    |__ Port 1: Dev 12, If 1, Class=, Driver=option, 480M
    |__ Port 1: Dev 12, If 2, Class=, Driver=option, 480M
    |__ Port 1: Dev 12, If 3, Class=, Driver=option, 480M
    |__ Port 1: Dev 12, If 4, Class=, Driver=cdc_mbim, 480M
    |__ Port 1: Dev 12, If 5, Class=, Driver=cdc_mbim, 480M

Agar setiap restart bisa kedetek maka command tersebut taruh di rc.local.

Contoh diatas untuk sesuaikan sama driver modem, karena Telit Ln960 pake driver option echonya option, sesuaikan jika modemnya serial qualcomm atau ACM.

Contoh lain untuk prob ke driver qcserial, tinggal sesuaikan vid:pid

echo "<vid pid>" > /sys/bus/usb-serial/drivers/qcserial/new_id 

Sekian mengenai AT Command dan cara aksesnya melalui windows maupun openwrt. Untuk openwrt at command bisa diakses melalui minicom, picocom, atinout, sms tools dll.

8 pemikiran pada “Mengakses AT Command di Openwrt dan Windows”

  1. mau tanya om
    kok pake L860 rooter detek di ttyUSB80
    kenapa diperintahkan ke situ no respon ya?
    malak keterangan no direktory
    echo AT+CFUN=1,1 | atinout – /dev/ttyACM1 –
    kodenya

    Balas
  2. Installing luci-app-atinout-mod (1.3.2-20220315) to root...
    Downloading https://raw.githubusercontent.com/lrdrdn/my-opkg-repo/main/generic/luci-app-atinout-mod_1.3.2-20220315_all.ipk
    Configuring luci-app-atinout-mod.
    uci: Entry not found

    Downloading https://raw.githubusercontent.com/lrdrdn/my-opkg-repo/main/generic/luci-app-sms-tool_1.9.4-20220325_all.ipk
    Configuring luci-app-sms-tool.
    uci: Entry not found

    Balas

Tinggalkan komentar