AT Command digunakan untuk memerintahkan modem untuk mengeksekusi instruksi tertentu secara low level. AT command bukan bahasa pemrograman namun hanya sekumpulan instruksi yang ‘dimengerti’ modem. Agar proses pemberian instruksi dapat berlangsung secara otomatis, kita memerlukan bahasa pemrograman yang dapat kita desain sesuai kebutuhan. Sebenarnya kita bisa memberikan instruksi AT command secara langsung, yakni melalui program Hyper Terminal (jika Anda menggunakan Windows XP), namun instruksi yang diberikan harus kita ketikkan secara manual.
Bagaimana dengan Delphi? Agar Delphi bisa berkomunikasi dengan modem, Delphi harus bisa mengeluarkan instruksi AT command. Mari kita pelajari dulu pengetahuan dasarnya. AT command sebenarnya merupakan data instruksi, sedangkan media transmisi datanya (physical layer) adalah port USB atau serial (COM port). Khusus untuk modem USB, sebenarnya tipe ini, drivernya akan menciptakan sebuah port serial virtual, jadi sebenarnya port USB untuk modem ini hanya berupa fisik konektornya, sedangkan protokol komunikasi yg digunakan adalah protocol serial communication (menggunakan parameter baud rate, start/stop bit, parity bit, dll).
Jadi, bila Delphi ingin mengeluarkan instruksi AT command, maka Delphi harus bisa mengeluarkan data melalui port serial terlebih dahulu (otomatis data harus mengikuti protocol serial communication). Setelah itu baru AT command-nya dienkapsulasi ke dalam data serial. Secara native Delphi tidak memiliki component yang bisa mengakses port fisik seperti port serial / parallel, beda dengan Visual Basic yang memiliki component MSCOMM untuk mengakses port serial. Namun Anda tidak perlu berkecil hati, karena di internet ada banyak sekali component gratis yang bisa diunduh sesuai keperluan. Salah satu komponen Delphi yang gratis dan dapat digunakan untuk mengakses port serial adalah CPORT. Anda dapat mengunduhnya disini. Setelah itu, installah komponen CPORT sesuai dengan versi Delphi Anda. Contoh : Saya menggunakan Delphi 7, maka saya instal DsgnCPort7.dpk yang di paket instalasi. Untuk menginstal komponen CPORT, silahkan anda double click file DsgnCPort7.dpk, kemudian klik tombol ‘Install’ setelah muncul jendela installernya.
Setelah itu akan muncul tab baru ‘CPortLib’ di component pallete di IDE Delphi yang berisi komponen – komponen pendukung CPORT
Setelah berhasil menginstal komponen CPORT, sekarang mari kita coba untuk mengeluarkan instruksi AT command melalui port serial virtual (karena saya menggunakan modem USB). Pertama kali, pastikan driver modem sudah terinstal dan sudah mampu menciptakan port serial virtual (dapat Anda cek di Start | Control Panel | System | Hardware | Device Manager | Ports (COM & LPT)
Pada contoh di atas modem saya menggunakan port serial 33 (COM33)
Kemudian mari kita coba contoh program Delphi yang sudah jadi untuk mencoba mengeluarkan instruksi AT command ke modem. Contoh program ini ada di folder tempat file installer yang telah Anda unduh (\\cport310\examples\delphi\ComExample.dpr). Buka file ini kemudian run melalui IDE Delphi.
Atur dulu settingan port dan baud rate seperti gambar di atas, setelah Anda menekan tombol ‘Setting’. Klik tombol ‘OK’ untuk kembali ke jendela utama. Kemudian Anda harus menekan tombol ‘Open’ untuk menginisialisasi modem melalui port serial COM33. Setelah itu coba ketikkan ‘at+cgsn’ (tanpa tanda petik) ke kotak edit dan klik tombol ‘Send’, dan lihat apa yang terjadi. Di kotak memo ada ‘balasan’ dari modem : ‘+CGSN: 353006030050355’. Inilah hasil instruksi AT command yang kita berikan ke modem. Berarti program Delphi kita sudah berhasil mengirim AT command sederhana, dan berhasil meng-capture pula hasil instruksi yang dilakukan modem. Sebagai informasi instruksi AT+CGSN adalah instruksi untuk menanyakan Serial Number modem, dan kemudian modem ‘menjawab’ pertanyaan kita dengan ‘+CGSN: 353006030050355’ (inilah serial number modem saya)
Program ini sebenarnya sama dengan program hyperterminal di Windows XP, jadi Anda masih harus mengetikkan AT command secara manual dan ketik tombol ‘Send’.
a Technopreneur – writer – Enthusiastic about learning AI, IoT, Robotics, Raspberry Pi, Arduino, ESP8266, Delphi, Python, Javascript, PHP, etc. Founder of startup Indomaker.com
mas.. kuq pada saya run ComExample.dpr nya ga maw ia?
padahal saya sudah install cport nya….
delphi nya versi berapa? cport ini tested for delphi6 / 7
mas ajie..d’kompile ko gk bisa ya….
tulisannya cport.dcu not find
gmn tuh…
sudah sy jawab di email ya mas
okaaii….
siipp.
makasi mas.. ^^
agan ajie, klo baud rate modem punya qta ga ada daftarnya di settingnya gmn??? semua baud rate yg ada di combo Baud rate dah sy coba tp ga ada respon, modem yg sy pake HUAWEI E1550. tq atas pencerahannya
Modem huawei E1550 kalo gak salah kecepatan data transfernya 3,6 MBps ya? Berarti itu maksimal baudrate-nya. Biasanya device terbaru memiliki backward compatibility dg teknologi sebelumnya, artinya dari baudrate 1200, 9600, 115.200, dst juga support. Untuk komunikasi serial utk penggunaaan at command saya sarankan set di 9600 atau 115.200 bps.
Kalau masalah ga ada respon, itu mungkin karena salah pilih port COM. Coba gunakan hyperterminal utk troubleshoot terlebih dulu. Panduannya bs dibaca di artikel sy yg terbaru
wah tutor nya keren banget gan
jadi pengin bisa delphi 🙂
tutorialnya bagus banget mas. Tp sy blm paham ttg apa itu baud rate, data bits, stop bits, parity dan flow control. Apa fungsi dari masing2 istilah itu? Mohon pencerahannya mas. Terima kasih.
itu semua parameter dalam protokol komunikasi serial asinkron. Baudrate = kecepatan data, data bit = jumlah data dalam satuan bit dlm sekali kirim data, stop bit = bit penanda bahwa data sudah berakhir, parity = data/bit utk cek paritas/validitas data, flow control= digunakan utk proses handshaking, jadi antara master dan slave hrs menggunakan flow control yg sama. Semoga bermanfaat
Penentuan value untuk masing-masing parameter tersebut berdasarkan apa mas? terima kasih.
kalo baudrate berdasarkan kecepatan data yg kita inginkan, sedangkan parameter lain adl utk proses handshaking, jd antar device yg terhubung komunikasi serial hrs memiliki settingan parameter yg sama agar dapat berkomunikasi/bertukar data satu sama lain
saya udah coba kok masih gak bisa-bisa ya..
setiap saya send, koq gak ada respon apa-apa…dan sinyalnya koq gak terkirim ke hp tujuan..
saya pakai modem vodafone model K3765
kemungkinan salah COM itu mas
mas ajie,masalhku sama dengan mas odji cport.dcu not find,gimana tu mas?mohon pencerahanya.
arahkan path library ke folder cport. Caranya : Pilih menu Tool-Environment Option-Library-Library path-trus ada tombol builder diklik-arahkan ke folder download cport
saya pakai modem Wavecom, saya coba ikuti sample seperti mas aji contoh kan diatas.kok gak muncul serial numbernya. masalahnya dimana ya..mohon petunjuknya
utk modem wavecom, baca dulu yg ini mas http://saptaji.com/2011/11/19/khusus-modem-wavecom%E2%80%A6%E2%80%A6/
maaf sy mau nanya,cport yg sdh sy instal di delphi 7 knp gak bisa running katanya cport not found? sy coba cara yg sy baca dicomment yg tool environment dan arahkan ke folder cport tapi tetap gak bisa? kira-kira kenpa ya? tolong dibalas ya
error-nya apa? kalo masih ga bisa, coba copy-kan file yg ditanyakan/muncul di kotak error ke folder ‘bin’ Delphi. Cari file tsb di folder download cport, copy-kan ke Program FIles | Borland | Delphi7 | Bin
mas tolong dibalas yaa., soalnya sy butuh ini buat tugas akhirku..
kira2 modem huawei mendukung at command gak??? rencana nya sy mau buat program mengukur kuat sinyal gsm, jadi saya gunakan modem gsm, dan programnya saya buat dari delphi, jadi tinggal koneksikan modeem ke port laptop dan program nya bisa jalan.. tapi tahap awal pembuatan program saya terkendala di cport yg tadi saya sebutkan, tolong dibantu..
secara umum semua modem 3G mendukung AT command, krn itu adl standard industri, cuma pastikan koneksinya sudah benar agar bisa berkomunikasi dg komputer. Semoga TA-nya cepat kelar 🙂
^_^ aminn makasi doanya.. tadi aku sdh coba di laptop temanku cportnya sdh bisa jalan, semoga klo aku coba dilaptop sdh bisa juga.. aku mau bertanya lagi nihh.. 1. mas gimana sih mengetahui BER (bit error rate) pake instruksi at command? kan klo perintah at+csq formatnya , tapi nilai ber selalu dinyatakan dalam 99 artinya unknown / tdk diketahui, bagaimana tuh mas? apa harus koneksi dg internet dulu? tapi aku coba koneksi dg internet 7G nya gak bisa jalan, begitupun program yg kubuat di delphi..? pertanyaan ku yg kedua 2. gimana mengkoneksikan modem internet dg delphi ya?? jadi sementara ol… Read more »
1. Tidak semua modem support utk mengetahui nilai BER. Utk mengecek modem support BER atau tdk, gunakan command at+csq=? ntar lihat jawabannya: xx,yy . jika yy hanya menunjukkan angka 99 (tdk ada angka lain) berarti modem tdk support BER metering.
2. Gunakan kombinasi at command sbb : AT+CGDCONT=1,”IP”,”APN” , ATD*99# utk koneksi ke internet
saya coba pakai modem huawei tipe E161 hasil csq nya:
at+csq=?
+CSQ: (0-31,99),(99)
artinya modem ku gak support utk ngukur BER nya ya mas?? kira2 modem apa yah yg support ngukur RSSI dan BER secara bersamaan?? makasi info nya ya..
betul, huawei E161 tdk support BER metering. Utk modem yg support BER, sy belum tau juga, krn dr yg pernah sy coba : hape nokia, modem huawei, speedup, sierra tidak ada yg support 🙁
ohh iya kalo untuk mengetahui nilai ber apakah harus terkoneksi dg internet??
tidak harus.
makasi infonya mas 🙂
sedih juga ternyata ngukur BER gak bisa ya,.. 🙁
ohh iya kira2 ada instruksi at command lain gak utk mengetahui parameter kuat sinyal yg lain selain at+csq?? misalnya parameter kuat sinyal throughput dan delay atau parameter lainnya, apa ada instruksi at commandnya juga??
ini mau bikin TEMS buat drive test ya? Parameter2 seperti itu biasanya restricted mbak. Kalau mau sih coba sofware NetMon nokia jadul, itu bisa dapet parameter network sangat lengkap. Ntar tinggal bikin software sniffer serial port-nya buat ngambil data.
kalau mau munculin Serial number di Edittext gimana ya? jadi pas click button,imeinya langsung ada di Edittext tersebut..aku coba begini
Edit1.Text:=’ComPort1.read(AT+CGSN+#13#10)’;
yang keluar di box =ComPort1.read(AT+CGSN+#13#10)
terima kasih sebelumnya.
malam mas ajie.. maaf ganggu laggiii, sya punya pertanyaan tapi aku kirim lewat email mas ajie ‘[email protected]’ mohon dibalas yahhh.. makasih 🙂
mas mo saya memakai modem dengan port serial, dan saya sudah coba
AT+CGDCONT=1,”IP”,”APN”,ATD*99#
tapi balasanya error
nggak di gabung bisa tapi ketika ATD*99# balasanya no cariage
mohon pencerahanya ya… mas
at+cgdcont dan atd adl dua command yg berbeda mas, jgn digabung
saya menggunakan modem wavecom
selesai install c portnya sy nda dpat komponennya di palet gan… apa filenya kurang??
Kalo ga ada warning harusnya ada sih….coba cari di tab ‘CPortLib’
mas ajie…ni saya pake modem telkomflash,SU-8600U,itu kira2 bisa gak z mas??sya baca2 di artikel mas kq yang ada cuma modem merk ZTE,HUAEI sama WAVECOM…terima kasih.
dicoba aja mas, harusnya bisa sih
mas ajie,.pnya sya ni sudah bisa,.buat cek sudah jalan dan delphi sudah mengirimkan SN modem saya,.tapi saya bikin aplikasi kirim sms, kq belum bsa kirim sms z?apa harus da settingan buat modem lagi?
ok, akan saya coba
Salam Kenal mas ajjie,,
mas maf saya mau tanya apa ada tutorial lengkap tentang kumpulan perintah AT COMMANDS,,
terima kasih,,
kalo tutorial lengkap blm ada mas. kalo kumpulan manual book at command ada
iy pak gpp, boleh minta linknya gak pak?
terima kasih sebelumnya pak,,
emailnya apa mas, sy kirimi aja
nie email saya pak,,
[email protected]
terima kasih pak,,
Mas tolong dikirim ke emailku juga yaa kumpulan manual book at command
emailnya apa mas?
mas saya boleh minta kumpulan2 manual at comand dan kalo bisa kirimkan file project delphi diatas..
di email saya [email protected]
cari di internet juga banyak mas
Tutorial bermaanfaat sekali, terimakasih pak.,
Mau tanya gimana cara akses serial commport lewat tcp/ip ?
pake virtual serial port (VSP) mas
maaf mas numpang nanya saat compile ComExample.dpr kok gak bisa ya mas ?
Cport.DCU not found padahal udah install komponen Cport nya ?
kemungkinan karena library path-nya belum di atur