Skip to main content

AT Temel Katman ve Terminal Davranışı

AT

AT komutu modemle iletişimin kurulduğunu doğrulamak için kullanılan en temel komuttur. Modem bu komuta OK yanıtı veriyorsa seri haberleşme hattı aktif, baud ayarı doğru ve temel AT katmanı erişilebilir durumdadır.

Bu komut her bring-up sürecinin ilk adımı olmalıdır. AT komutundan yanıt alınmadan diğer komutlara geçmek, oluşan hataların kök nedenini belirsiz hale getirir.

Aksi ayarlanmadıkça modeme komut gönderirken ve modemden gelen cevabı okurken komut sonlarında \r\n karakterleri yer almaktadır. Dokümanın ilerleyen kısımlarında bunlar belirtilmeyecektir.

info

AT komutu ingilizce Attention (dikkat) kelimesinin kısaltılmış halidir.

> AT
OK

Bu komut parametre almaz. Olası modem cevabı normal akışta OK olur; iletişim hattı sorunlarında yanıt gelmeyebilir.


ATE

ATE komutu modem echo davranışını yönetir. Echo açıkken modeme gönderdiğin komut satırı modem tarafından tekrar geri döndürülür; echo kapalıyken yalnızca gerçek modem yanıtları görülür.

AT katmanında logların temiz ve okunabilir olması için bring-up başlangıcında genellikle ATE0 kullanılır. Echo açık bırakılacaksa (ATE1), parser tarafında gönderilen komutun geri döneceği dikkate alınmalıdır.

info

ATE0 echo kapatır, ATE1 echo açar.

> ATE0
OK
> ATE1
ATE1
OK

Komut formatı ATE<n> şeklindedir. En yaygın parametreler 0 ve 1 değerleridir.

  • n=0: Echo kapalı
  • n=1: Echo açık

Olası modem yanıtları normal akışta OK, geçersiz parametrede ERROR veya detaylı hata modu açıksa +CME ERROR: <code> olabilir.


CMEE

AT+CMEE komutu modem hata raporlama seviyesini belirler. Bu ayar, bir komut başarısız olduğunda yalnızca genel ERROR dönülmesi yerine daha anlamlı hata bilgisi alıp alamayacağını doğrudan etkiler.

Saha ve geliştirme süreçlerinde hata kök nedenini hızlı yakalamak için çoğunlukla AT+CMEE=2 önerilir. Böylece modem, mümkün olan durumlarda açıklayıcı hata metni döndürür; bu da log analizini belirgin şekilde kolaylaştırır.

info

Bring-up ve debug sırasında AT+CMEE=2, üretim tarafında ise sistem politikasına göre 0 veya 1 tercih edilebilir.

> AT+CMEE=2
OK
> AT+CMEE?
+CMEE: 2
OK

Komut formatı AT+CMEE=<n> şeklindedir. Yaygın parametreler aşağıdaki gibidir:

  • n=0: Detaylı ME hata raporu kapalı (ERROR)
  • n=1: Sayısal ME hata kodu (+CME ERROR: <code>)
  • n=2: Metinsel/açıklayıcı ME hata modu (modem desteğine bağlı)

Olası modem yanıtları normal akışta OK, geçersiz parametrede ERROR, hata oluştuğunda ise ayar seviyesine bağlı olarak ERROR veya +CME ERROR: <code> şeklindedir.


FCLASS

AT+FCLASS komutu modem faks/ses/veri sınıfı profilini seçmek için kullanılan klasik bir AT komutudur. GSM IoT veri odaklı projelerde pratikte çoğu zaman veri modu (0) kullanılır.

LE910C1 gibi modern hücresel IoT modemlerde bu komut birçok projede aktif olarak kullanılmasa da, legacy AT akışlarıyla uyumluluk açısından karşılaşılabilir. Bu nedenle parser tarafında komutun tanınması faydalıdır.

info

IoT ürünlerinde tipik tercih AT+FCLASS=0 (veri sınıfı) yönündedir.

> AT+FCLASS=0
OK
> AT+FCLASS?
+FCLASS: 0
OK

Komut formatı AT+FCLASS=<n> şeklindedir. Sahada en sık görülen parametre aşağıdaki gibidir:

  • n=0: Veri sınıfı (data mode)

Bazı modem/firmware kombinasyonlarında ek sınıf değerleri raporlanabilir; desteklenen aralığı doğrulamak için AT+FCLASS=? sorgusu kullanılabilir.

Olası modem yanıtları normal akışta OK, desteklenmeyen sınıf veya geçersiz parametrede ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


K

AT&K komutu RS232 akış kontrol (flow control) davranışını ayarlamak için kullanılır. Bu komutla seri hat üzerindeki veri akışının donanımsal veya yazılımsal yöntemle nasıl kontrol edileceği belirlenir.

Özellikle yüksek veri hızlarında, tampon taşmalarını ve veri kayıplarını önlemek için doğru K parametresinin seçilmesi kritik önem taşır.

> AT&K3
OK
> AT&K?
&K: 3
OK

Komut formatı AT&K<n> şeklindedir. Parametre değerleri aşağıdaki gibidir:

  • 0: Akış kontrolü yok
  • 1: Donanımsal tek yönlü akış kontrolü
  • 2: Yazılımsal tek yönlü akış kontrolü
  • 3: Donanımsal çift yönlü akış kontrolü
  • 4: Filtrelemeli yazılımsal çift yönlü akış kontrolü
  • 5: Pass-through: filtresiz yazılımsal çift yönlü akış kontrolü
  • 6: Her iki yönde donanımsal çift yönlü akış kontrolü

Bu parametre eşlemesi modem üreticisinin AT implementasyonuna bağlı olarak farklılık gösterebilir; üretim öncesinde hedef firmware üzerinde AT&K=? ve saha testleriyle doğrulanmalıdır.

Olası modem yanıtları normal akışta OK, geçersiz parametrede ERROR ve detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SIM ve Kimlik Bilgileri

CPIN

AT+CPIN komutu SIM/USIM kartın güvenlik durumunu sorgulamak ve gerekiyorsa PIN/PUK bilgisini modeme vermek için kullanılır. Hücresel oturuma geçmeden önce SIM durumunun READY olduğunun doğrulanması kritik bir adımdır.

Bring-up akışında tipik sıra önce AT+CPIN? ile durum kontrolü, gerekirse AT+CPIN="<pin>" ile kilit açma ve ardından şebeke kayıt adımlarına geçiş şeklindedir.

info

+CPIN: READY görülmeden ağ kayıt ve PDP aktivasyon komutlarına geçmek gereksiz hata zinciri oluşturabilir.

> AT+CPIN?
+CPIN: SIM PIN
OK
> AT+CPIN="1234"
OK

Komut formatı sorgu için AT+CPIN?, set için AT+CPIN="<pin>" veya PUK akışında AT+CPIN="<puk>","<newpin>" şeklindedir.

Sık görülen durum yanıtları aşağıdaki gibidir:

  • +CPIN: READY: SIM kullanıma hazır
  • +CPIN: SIM PIN: PIN girilmesi gerekiyor
  • +CPIN: SIM PUK: PUK ve yeni PIN gerekiyor
  • +CPIN: PH-SIM PIN / benzeri: cihaz veya operatör kilidi (modeme göre değişebilir)

Olası modem yanıtları normal akışta OK, yanlış PIN/PUK veya geçersiz formatta +CME ERROR: <code> (ör. SIM PIN required, incorrect password) ve bazı durumlarda ERROR şeklindedir.


QSS

AT#QSS komutu SIM kart durumunu hızlı şekilde sorgulamak için kullanılan Telit’e özgü bir komuttur. Bring-up sırasında CPIN akışına geçmeden önce fiziksel kart varlığı ve temel SIM erişilebilirliği için pratik bir ön kontrol sağlar.

Bu komut özellikle sahada “SIM takılı mı, modem kartı görüyor mu?” sorusunu kısa yoldan cevaplamak için kullanışlıdır.

info

QSS komutu üreticiye özeldir; aynı isim veya yanıt formatı farklı modem serilerinde değişebilir. Hedef firmware sürümünde doğrulama yapılmalıdır.

> AT#QSS?
#QSS: 1
OK

Komut formatı tipik olarak AT#QSS? şeklindedir.

Sahada sık görülen örnek durumlar:

  • #QSS: 0: SIM yok / algılanmadı
  • #QSS: 1: SIM mevcut ve erişilebilir

Bazı firmware sürümlerinde ek durum kodları dönebilir; kesin kod anlamları için ilgili modem AT komut referansı esas alınmalıdır.

Olası modem yanıtları normal akışta OK, desteklenmeyen komutta veya hatalı durumda ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


CGSN

AT+CGSN komutu modem kimlik bilgisini, pratikte çoğunlukla IMEI değerini okumak için kullanılır. Cihaz envanter takibi, üretim testleri ve uzaktan tanılama süreçlerinde en temel kimlik doğrulama adımlarından biridir.

Bring-up sürecinde seri haberleşme doğrulandıktan sonra IMEI’nin okunması, cihazın beklenen donanım modülüyle eşleştiğini kontrol etmek açısından faydalıdır.

> AT+CGSN
356789012345678
OK
> AT+CGSN=1
356789012345678
OK

Komut formatı firmware’e göre AT+CGSN veya AT+CGSN=<n> şeklinde olabilir. Sık görülen parametrelerden biri n=1 olup IMEI çıktısını verir.

Bazı modemlerde aynı bilgi AT+GSN ile de döndürülebilir; projede tek komut standardı seçilip loglama tarafında tutarlı kullanılmalıdır.

Olası modem yanıtları normal akışta kimlik değeri ardından OK, desteklenmeyen formatta ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


GSN

AT+GSN komutu modem cihaz kimliğini (çoğu uygulamada IMEI) hızlı biçimde okumak için kullanılan temel sorgu komutudur. Üretim hattı testlerinde, sahadaki cihaz eşleştirmelerinde ve uzaktan teşhis loglarında sık kullanılır.

Pratikte AT+GSN ve AT+CGSN benzer amaçla kullanılsa da bazı firmware sürümlerinde çıktı formatı veya destek kapsamı farklı olabilir. Bu nedenle projede tek bir komut tercih edip tüm sistemde aynı standardı korumak önerilir.

> AT+GSN
356789012345678
OK

Komut formatı AT+GSN şeklindedir ve parametre almaz.

Modem çıktısı çoğunlukla 15 haneli IMEI değeridir; bazı modemlerde ek kimlik bilgileri farklı formatta dönebilir.

Olası modem yanıtları normal akışta kimlik değeri ardından OK, desteklenmeyen komutta ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


CCID

AT+CCID komutu SIM kartın ICCID bilgisini (kartın benzersiz seri numarası) okumak için kullanılır. ICCID, sahadaki SIM yönetimi, operatör eşleştirmesi ve envanter takibi için kritik bir kimlik verisidir.

IMEI cihazı tanımlarken, ICCID takılı SIM’i tanımlar. Bu nedenle üretim ve servis loglarında IMEI + ICCID birlikte tutulması operasyonel açıdan büyük kolaylık sağlar.

> AT+CCID
8944501234567890123
OK

Komut formatı AT+CCID şeklindedir ve parametre almaz.

Çıktı çoğunlukla 19–20 haneli bir sayısal ICCID değeridir. SIM erişim sorunu, kart yokluğu veya PIN kilidi gibi durumlarda komut başarısız olabilir.

Olası modem yanıtları normal akışta ICCID değeri ardından OK, SIM hazır değilse veya komut desteklenmiyorsa ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


GMI

AT+GMI komutu modem üretici bilgisini (manufacturer identification) okumak için kullanılır. Donanım doğrulama, envanter kontrolü ve çoklu modem desteği olan yazılımlarda cihazın üretici ailesini hızlı tespit etmek için faydalıdır.

Bring-up veya otomatik teşhis akışlarında GMI, GMM ve GMR komutları birlikte çalıştırılarak üretici-model-firmware üçlüsü tek seferde kaydedilebilir.

> AT+GMI
Telit
OK

Komut formatı AT+GMI şeklindedir ve parametre almaz.

Çıktı tek satır metin olarak üretici adını içerir. Bazı modemlerde marka adı, kurumsal ad veya üreticiye özgü kısa bir metin dönebilir.

Olası modem yanıtları normal akışta üretici bilgisi ardından OK, desteklenmeyen komutta ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


GMM

AT+GMM komutu modem model bilgisini (model identification) okumak için kullanılır. Aynı üreticinin birden fazla modem ailesi kullanıldığı projelerde doğru ürün varyantını ayırt etmek için kritik bir komuttur.

Saha loglarında yalnızca üretici adını (GMI) tutmak çoğu zaman yeterli olmaz; model kodunun da (GMM) kaydedilmesi, firmware uyumsuzluğu ve komut destek farklarını analiz etmeyi kolaylaştırır.

> AT+GMM
LE910C1-EU
OK

Komut formatı AT+GMM şeklindedir ve parametre almaz.

Çıktı tek satır metin olarak model adını veya model kodunu içerir. Bölge/operatör varyantına göre son ekler (ör. -EU, -NF) görülebilir.

Olası modem yanıtları normal akışta model bilgisi ardından OK, desteklenmeyen komutta ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


GMR

AT+GMR komutu modem firmware sürüm bilgisini (revision identification) okumak için kullanılır. Aynı model üzerinde farklı firmware sürümleri farklı AT davranışları gösterebildiği için, hata analizinde en kritik referanslardan biridir.

Saha sorunlarında yalnızca model bilgisini toplamak çoğu zaman yeterli olmaz; mutlaka GMR çıktısı da loglanmalıdır. Böylece belirli bir firmware sürümüne özgü bug veya davranış farkları hızlıca ayrıştırılabilir.

> AT+GMR
20.00.523
OK

Komut formatı AT+GMR şeklindedir ve parametre almaz.

Çıktı tek satır metin olarak firmware revizyonunu içerir. Format modem ailesine göre sade sürüm numarası, build etiketi veya uzun revizyon dizgesi şeklinde olabilir.

Olası modem yanıtları normal akışta sürüm bilgisi ardından OK, desteklenmeyen komutta ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


RF ve Servis Teşhis/İzleme

SLED

AT#SLED komutu modem üzerindeki durum LED’i davranışını yönetmek için kullanılan Telit’e özgü bir komuttur. Bu komut sayesinde ağ kayıt, veri oturumu veya hata durumlarında LED gösteriminin açık/kapalı ya da profile bağlı şekilde çalışması kontrol edilir.

Saha kurulumlarında görsel durum bilgisi önemliyse SLED ayarı kurulum scriptlerine dahil edilebilir. Buna karşılık düşük güç hedefleyen ürünlerde gereksiz LED aktivitesi enerji tüketimini artırabileceği için dikkatli kullanılmalıdır.

info

#SLED komutunun parametre anlamları modem ailesi ve firmware sürümüne göre değişebilir; kesin değerler için hedef modülün AT referansı esas alınmalıdır.

> AT#SLED=1
OK
> AT#SLED?
#SLED: 1
OK

Komut formatı tipik olarak AT#SLED=<n> ve sorgu için AT#SLED? şeklindedir.

Sahada sık görülen kullanım, LED göstergesini etkinleştirme (1) veya devre dışı bırakma (0) yönündedir; ancak ara profil değerleri ürün serisine göre farklılaşabilir.

Olası modem yanıtları normal akışta OK, desteklenmeyen parametre veya komutta ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


E2SLRI

AT#E2SLRI komutu, modem düşük güç/sleep durumlarındayken RI (Ring Indicator) hattının davranışını yapılandırmak için kullanılan Telit’e özgü bir komuttur. UART üzerinden wake-up veya olay tetikleme mimarisi kurulan tasarımlarda bu ayar doğrudan sistem davranışını etkiler.

Uygulama işlemcisi kesme (interrupt) ile RI hattını dinliyorsa, yanlış E2SLRI konfigürasyonu nedeniyle olayların kaçırılması veya gereksiz uyanmalar oluşabilir. Bu nedenle güç profili ve olay modeli birlikte değerlendirilmelidir.

info

#E2SLRI parametre anlamları modem serisine ve firmware sürümüne göre değişebilir; kesin değerler için hedef modülün AT referansı kullanılmalıdır.

> AT#E2SLRI=1
OK
> AT#E2SLRI?
#E2SLRI: 1
OK

Komut formatı tipik olarak AT#E2SLRI=<n> ve sorgu için AT#E2SLRI? şeklindedir.

Sahada yaygın kullanım, sleep sırasında RI hattını belirli olaylarda aktif edecek profilin seçilmesidir. Desteklenen profil değerleri ürün ailesine göre farklılaşabilir.

Olası modem yanıtları normal akışta OK, desteklenmeyen parametre veya komutta ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


E2RI

AT#E2RI komutu RI (Ring Indicator) hattının genel davranış profilini ayarlamak için kullanılan Telit’e özgü bir komuttur. Özellikle UART tabanlı modem entegrasyonlarında, host işlemcinin hangi olayda nasıl uyanacağını belirleyen önemli ayarlardan biridir.

Yanlış E2RI konfigürasyonu, ya gereksiz kesme üretimine (fazla uyanma) ya da kritik olayların kaçırılmasına neden olabilir. Bu nedenle komut değeri, uygulamanın güç bütçesi ve olay önceliklerine göre seçilmelidir.

info

#E2RI parametre anlamları modem ailesine ve firmware sürümüne göre değişebilir; kesin tablo için ilgili modem AT komut kılavuzu referans alınmalıdır.

> AT#E2RI=1
OK
> AT#E2RI?
#E2RI: 1
OK

Komut formatı tipik olarak AT#E2RI=<n> ve sorgu için AT#E2RI? şeklindedir.

Sahada yaygın kullanım, RI hattının yalnızca belirli olaylarda aktif olacağı profilin seçilmesi yönündedir. Desteklenen değer aralığı ve davranış detayları modem serisine göre farklılaşabilir.

Olası modem yanıtları normal akışta OK, desteklenmeyen parametre veya komutta ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


Şebeke Kayıt ve Operatör Yönetimi

REGMODE

AT#REGMODE komutu modem şebeke kayıt (registration) davranışını yönetmek için kullanılan Telit’e özgü bir komuttur. Otomatik kayıt, kayıt stratejisi veya teknolojiye bağlı kayıt tercihleri gibi davranışlar bu komutla profile bağlanabilir.

Saha cihazlarında yanlış kayıt modu seçimi, ağa geç bağlanma, gereksiz tarama süresi veya dolaşım senaryolarında kararsız davranışa yol açabilir. Bu nedenle REGMODE ayarı ürünün hedef operatör ve enerji profiliyle birlikte değerlendirilmelidir.

info

#REGMODE parametre değerleri ve anlamları modem ailesi/firmware sürümüne göre değişebilir; nihai konfigürasyon hedef modülün resmi AT referansına göre yapılmalıdır.

> AT#REGMODE=0
OK
> AT#REGMODE?
#REGMODE: 0
OK

Komut formatı tipik olarak AT#REGMODE=<n> ve sorgu için AT#REGMODE? şeklindedir.

Sahada en güvenli yaklaşım, önce varsayılan/önerilen mod ile başlamak, ardından hedef şebeke koşullarında attach süresi ve stabilite ölçülerek uygun profil değerine geçmektir.

Olası modem yanıtları normal akışta OK, desteklenmeyen parametre veya komutta ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


TXMONMODE

AT#TXMONMODE komutu, modem iletim davranışını izleme/monitoring amaçlı belirli bir profile almak için kullanılan Telit’e özgü bir komuttur. RF doğrulama, üretim testleri veya saha tanılama senaryolarında geçici olarak kullanılabilir.

Bu komut yanlış konfigüre edildiğinde normal ağ davranışını etkileyebileceğinden, üretim firmware’inde yalnızca ihtiyaç halinde ve kontrollü prosedürle uygulanmalıdır.

warning

#TXMONMODE test/izleme odaklı bir ayar olabilir; sürekli aktif bırakılması bazı ürünlerde performans veya güç tüketimi etkisi oluşturabilir.

> AT#TXMONMODE=0
OK
> AT#TXMONMODE?
#TXMONMODE: 0
OK

Komut formatı tipik olarak AT#TXMONMODE=<n> ve sorgu için AT#TXMONMODE? şeklindedir.

Desteklenen mod değerleri ve her modun tam davranışı modem ailesi ile firmware sürümüne göre değişebilir; kesin parametre tablosu için ilgili AT komut kılavuzu referans alınmalıdır.

Olası modem yanıtları normal akışta OK, desteklenmeyen parametre veya komutta ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


AUTOBND

AT#AUTOBND komutu modem band seçim davranışını otomatik veya belirli bir profile göre yönetmek için kullanılan Telit’e özgü bir komuttur. Bu ayar, şebekeye bağlanma süresini, dolaşım davranışını ve bazı senaryolarda güç tüketimini doğrudan etkileyebilir.

Çoklu bölge veya çoklu operatör destekleyen ürünlerde otomatik band seçimi kurulum kolaylığı sağlar. Buna karşılık tek operatör/tek ülke senaryolarında kontrollü band profili, daha öngörülebilir attach performansı verebilir.

info

Band stratejisi ürünün hedef pazarına göre belirlenmelidir; yanlış band profili cihazın ağa geç bağlanmasına veya hiç kayıt olamamasına neden olabilir.

> AT#AUTOBND=1
OK
> AT#AUTOBND?
#AUTOBND: 1
OK

Komut formatı tipik olarak AT#AUTOBND=<n> ve sorgu için AT#AUTOBND? şeklindedir.

Desteklenen değerler ve her değerin tam band davranışı modem ailesi/firmware sürümüne göre farklılaşabilir; kesin parametre tablosu için ilgili AT komut kılavuzu esas alınmalıdır.

Olası modem yanıtları normal akışta OK, desteklenmeyen parametre veya komutta ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


COPS

AT+COPS komutu modem operatör seçim politikasını yönetmek için kullanılır. Modem varsayılan olarak çoğu senaryoda otomatik operatör seçimiyle çalışır; ancak test, roaming veya özel saha gereksinimlerinde manuel seçim gerekebilir.

Operatör seçim akışı doğrudan ağa kayıt davranışını etkilediğinden, COPS değişiklikleri attach süresine ve bağlantı kararlılığına yansır. Özellikle manuel moda geçildiğinde hedef operatör erişilemezse cihaz uzun süre kayıtsız kalabilir.

> AT+COPS?
+COPS: 0,0,"OperatorName",7
OK
> AT+COPS=0
OK
> AT+COPS=1,2,"28601"
OK

Komut formatı tipik olarak AT+COPS=<mode>[,<format>,<oper>[,<AcT>]] şeklindedir.

Sık kullanılan parametreler:

  • mode=0: Otomatik operatör seçimi
  • mode=1: Manuel operatör seçimi
  • mode=2: Operatör kaydını bırak (deregister)
  • format=0/1/2: Operatör ismi uzun/kısa/sayısal (MCCMNC)

Mevcut operatörleri listeleyen AT+COPS=? komutu uzun sürebilir ve bazı ağlarda time-out davranışı gösterebilir; üretim akışında dikkatli kullanılmalıdır.

Olası modem yanıtları normal akışta OK, erişilemeyen operatör veya geçersiz parametrede ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


CREG

AT+CREG komutu devre anahtarlamalı (CS) şebeke kayıt durumunu izlemek için kullanılır. Özellikle modem açılışında veya yeniden bağlanma senaryolarında cihazın şebekeye gerçekten kayıt olup olmadığını anlamak için temel komutlardan biridir.

Bu komutun raporlama modu doğru ayarlanırsa, yalnızca anlık sorgu değil aynı zamanda URC üzerinden kayıt durum değişimleri de takip edilebilir.

> AT+CREG?
+CREG: 0,1
OK
> AT+CREG=2
OK

Komut formatı AT+CREG=<n> (raporlama modu) ve AT+CREG? (durum sorgusu) şeklindedir.

Yaygın <stat> değerleri:

  • 0: Kayıtlı değil, arama yapılmıyor
  • 1: Kayıtlı (home network)
  • 2: Kayıtlı değil, arama yapılıyor
  • 3: Kayıt reddedildi
  • 5: Kayıtlı (roaming)

<n> raporlama modu olarak pratikte sık görülen değerler:

  • 0: URC kapalı
  • 1: URC açık (temel kayıt bilgisi)
  • 2: URC açık (LAC/CI gibi ek bilgi ile, modem desteğine bağlı)

Olası modem yanıtları normal akışta OK, geçersiz parametrede ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


CGREG

AT+CGREG komutu paket anahtarlamalı (PS) şebeke kayıt durumunu izlemek için kullanılır. Veri oturumu kurulmadan önce modem tarafında PS domain kaydının doğrulanması, gereksiz PDP hata zincirlerini önler.

Özellikle LTE/NB-IoT cihazlarda veri bağlantısı problemlerinde CREG tek başına yeterli olmayabilir; CGREG çıktısı mutlaka birlikte değerlendirilmelidir.

> AT+CGREG?
+CGREG: 0,1
OK
> AT+CGREG=2
OK

Komut formatı AT+CGREG=<n> (raporlama modu) ve AT+CGREG? (durum sorgusu) şeklindedir.

Yaygın <stat> değerleri:

  • 0: Kayıtlı değil, arama yapılmıyor
  • 1: Kayıtlı (home network)
  • 2: Kayıtlı değil, arama yapılıyor
  • 3: Kayıt reddedildi
  • 5: Kayıtlı (roaming)

<n> raporlama modu olarak pratikte sık görülen değerler:

  • 0: URC kapalı
  • 1: URC açık (temel kayıt bilgisi)
  • 2: URC açık (LAC/CI gibi ek bilgi ile, modem desteğine bağlı)

Olası modem yanıtları normal akışta OK, geçersiz parametrede ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


PDP / IP Oturum Yönetimi

CGDCONT

AT+CGDCONT komutu PDP context tanımlamak için kullanılır. Hücresel veri oturumunun hangi APN üzerinden, hangi IP tipiyle (IPv4/IPv6) açılacağını belirleyen temel yapı taşıdır.

Veri bağlantısı sorunlarının önemli bir kısmı yanlış APN veya hatalı context indeksinden kaynaklandığı için, bring-up sırasında CGDCONT konfigürasyonu dikkatle doğrulanmalıdır.

> AT+CGDCONT=1,"IP","internet"
OK
> AT+CGDCONT?
+CGDCONT: 1,"IP","internet","0.0.0.0",0,0
OK

Komut formatı tipik olarak AT+CGDCONT=<cid>,<PDP_type>,<APN>[,...] şeklindedir.

Sık kullanılan parametreler:

  • <cid>: PDP context kimliği (ör. 1)
  • <PDP_type>: IP, IPV6 veya IPV4V6 (modem/ağ desteğine bağlı)
  • <APN>: Operatör tarafından sağlanan erişim noktası adı

Pratikte birden fazla context tanımlı olabilir; uygulamanın hangi context’i aktive ettiği (CGACT/SGACT) ile CGDCONT eşleşmesi tutarlı olmalıdır.

Olası modem yanıtları normal akışta OK, geçersiz APN/parametre veya desteklenmeyen PDP tipinde ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SGACT

AT#SGACT komutu Telit modemlerde belirli bir PDP context’i aktive/deaktive etmek ve aktifleştiğinde IP bilgisini almak için kullanılır. CGDCONT ile tanımlanan APN/context ayarlarının veri oturumuna dönüşmesinde kritik adımdır.

Uygulamada sık kullanılan akış: önce context tanımı (CGDCONT), sonra aktivasyon (#SGACT), ardından soket veya IP tabanlı iletişimdir.

> AT#SGACT=1,1
#SGACT: 10.123.45.67
OK
> AT#SGACT=1,0
OK

Komut formatı tipik olarak AT#SGACT=<cid>,<state> şeklindedir.

Sık kullanılan parametreler:

  • <cid>: Aktive/deaktive edilecek PDP context kimliği (ör. 1)
  • <state>=1: Context aktive et
  • <state>=0: Context deaktive et

Aktivasyon sırasında dönen IP adresi, veri oturumunun açıldığını doğrulamak için pratik bir göstergedir. Aktivasyon başarısızsa önce CGREG/CEREG, sonra CGDCONT ve APN doğrulanmalıdır.

Olası modem yanıtları normal akışta OK (aktivasyonda çoğu zaman IP bilgisiyle), hatalı context veya ağ reddinde ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


CGACT

AT+CGACT komutu PDP context aktivasyon durumunu 3GPP standardına uygun biçimde yönetmek için kullanılır. Veri oturumu açma/kapama akışında context’in aktif olup olmadığını doğrudan kontrol etmeye yarar.

#SGACT komutu Telit’e özgü pratik bir yol sunarken, CGACT daha standart bir arayüz sağlar. Çoklu modem desteği olan yazılımlarda CGACT ile ortak bir kontrol katmanı oluşturmak kolaylaşır.

> AT+CGACT=1,1
OK
> AT+CGACT?
+CGACT: 1,1
OK

Komut formatı AT+CGACT=<state>,<cid> ve sorgu için AT+CGACT? şeklindedir.

Sık kullanılan parametreler:

  • <state>=1: Context aktive
  • <state>=0: Context deaktive
  • <cid>: Hedef PDP context kimliği

Aktivasyon başarısızsa önce şebeke kayıt durumları (CGREG/CEREG), ardından APN/context tanımı (CGDCONT) kontrol edilmelidir.

Olası modem yanıtları normal akışta OK, geçersiz context veya ağ reddinde ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


COPS

AT+COPS komutu operatör seçim politikasını belirler ve otomatik/manüel kayıt akışını kontrol eder. Bu başlık, üst bölümde anlatılan COPS komutunun aynı kullanımına karşılık gelir.

> AT+COPS?
+COPS: 0,0,"OperatorName",7
OK
> AT+COPS=0
OK

Komut formatı AT+COPS=<mode>[,<format>,<oper>[,<AcT>]] şeklindedir.

Sık kullanılan parametreler:

  • mode=0: Otomatik operatör seçimi
  • mode=1: Manuel operatör seçimi
  • mode=2: Operatör kaydını bırak

Olası modem yanıtları normal akışta OK, geçersiz/erişilemeyen operatör durumunda ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


CGPADDR

AT+CGPADDR komutu aktif PDP context’lerin IP adreslerini sorgulamak için kullanılır. Veri oturumu açıldıktan sonra modem gerçekten IP almış mı sorusunun en hızlı doğrulama adımlarından biridir.

Aktivasyon komutu (CGACT / SGACT) başarılı görünse bile uygulama tarafında bağlantı sorunları varsa CGPADDR ile context-IP eşleşmesi kontrol edilmelidir.

> AT+CGPADDR=1
+CGPADDR: 1,10.123.45.67
OK
> AT+CGPADDR
+CGPADDR: 1,10.123.45.67
OK

Komut formatı AT+CGPADDR[=<cid>] şeklindedir.

Sık kullanım:

  • <cid> verilirse yalnızca ilgili context’in IP’si sorgulanır
  • <cid> verilmezse modem desteklediği kapsamda aktif context IP bilgilerini listeler

Olası modem yanıtları normal akışta IP bilgisi ardından OK, aktif context yoksa boş/limitli yanıt, geçersiz context’te ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


ICMP

ICMP komutu modem üzerinden hedef IP/host erişilebilirliğini ping testi ile doğrulamak için kullanılır. Veri oturumu açıldıktan sonra internet çıkışının gerçekten çalışıp çalışmadığını hızlıca kontrol etmek için sahada çok faydalıdır.

Bu komut genelde soket katmanına geçmeden önce “şebeke var ama dış dünyaya erişim var mı?” sorusunu cevaplamak için kullanılır.

info

Telit modemlerde bu işlev çoğunlukla AT#ICMP ailesiyle sunulur; parametre sırası ve çıktı formatı firmware sürümüne göre değişebilir.

> AT#ICMP=8.8.8.8
#ICMP: 32,120
OK
> AT#ICMP="example.com",3,1000
#ICMP: 3,3,85,102,97
OK

Komut formatı modem ailesine göre değişmekle birlikte tipik kullanım AT#ICMP=<host/ip>[,<count>[,<timeout_ms>]] şeklindedir.

Sık kullanılan parametreler:

  • <host/ip>: Ping atılacak hedef
  • <count>: Paket sayısı
  • <timeout_ms>: Paket başına bekleme süresi

Ping başarısızsa önce PDP/IP durumu (CGACT/SGACT, CGPADDR) ve DNS çözümleme koşulları kontrol edilmelidir.

Olası modem yanıtları normal akışta sonuç satırları ve OK, hedefe erişilemez veya parametre hatasında ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


CSQ

AT+CSQ komutu modem sinyal kalitesini hızlı şekilde sorgulamak için kullanılır. Sahada bağlantı problemlerinin ilk teşhis adımlarından biridir ve anten, konum veya kapsama kaynaklı sorunları anlamada temel referans sağlar.

Komut çıktısı iki değer döndürür: RSSI benzeri sinyal seviyesi ve BER (bit error rate) göstergesi. Bu değerler tek başına kesin KPI olmasa da hızlı sağlık kontrolü için oldukça pratiktir.

> AT+CSQ
+CSQ: 18,99
OK

Komut formatı AT+CSQ şeklindedir ve parametre almaz.

Yorumlama için yaygın kurallar:

  • İlk değer 0..31: büyük değer daha iyi sinyal
  • İlk değer 99: ölçüm yok / bilinmiyor
  • İkinci değer 0..7: BER seviyesi (küçük değer daha iyi)
  • İkinci değer 99: BER bilinmiyor

Pratikte +CSQ değeri düşükse anten yerleşimi, kablo/konnektör kaybı, band seçimi ve kapsama koşulları birlikte değerlendirilmelidir.

Olası modem yanıtları normal akışta +CSQ: <rssi>,<ber> ardından OK, beklenmeyen durumda ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SERVINFO

SERVINFO komutu modem servis durumuna ilişkin detayları (erişim teknolojisi, hücre/şebeke bağlamı, bazı modemlerde ek radyo bilgileri) görmek için kullanılan üreticiye özgü bir tanılama komutudur. Sahada “kayıt var ama servis kalitesi nasıl?” sorusunu cevaplamada faydalıdır.

Bu komut çoğu zaman temel sinyal sorgularını (CSQ) tamamlar ve hangi teknoloji/bant üzerinde servis alındığını anlamayı kolaylaştırır.

info

Telit modemlerde bu bilgi genellikle AT#SERVINFO ailesiyle sunulur; çıktı alanları modem ve firmware sürümüne göre değişebilir.

> AT#SERVINFO
#SERVINFO: LTE,REGISTERED,...
OK
> AT#SERVINFO?
#SERVINFO: ...
OK

Komut formatı modem ailesine göre AT#SERVINFO veya AT#SERVINFO? şeklinde olabilir.

Çıktıdaki alanlar tipik olarak servis teknolojisi ve kayıt bağlamını içerir; kesin alan sırası/isimleri için hedef modülün AT komut kılavuzu esas alınmalıdır.

Olası modem yanıtları normal akışta servis bilgi satırı ardından OK, desteklenmeyen komutta ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


MONI

MONI komutu hücre ve radyo durumuna ait detayları görmek için kullanılan üreticiye özgü bir izleme komutudur. Şebeke kayıt problemi, zayıf kapsama veya hücre geçiş sorunlarında saha teşhisi için çok değerlidir.

Temel sinyal ölçümleri (CSQ) çoğu zaman yeterli olmaz; MONI çıktısı üzerinden hücre kimliği, teknoloji, kanal ve benzeri parametrelerin birlikte değerlendirilmesi daha doğru kök neden analizi sağlar.

info

Telit modemlerde bu işlev çoğunlukla AT#MONI komutuyla sağlanır. Alan isimleri ve sırası modem/firwmare sürümüne göre değişebilir.

> AT#MONI
#MONI: LTE,EARFCN:1300,PCI:123,RSRP:-96,RSRQ:-11,...
OK

Komut formatı tipik olarak AT#MONI şeklindedir ve parametre almaz.

Çıktı genellikle hücre/servis bilgilerini tek satır veya kısa çoklu satır halinde verir. Özellikle RSRP/RSRQ/SINR benzeri metrikler saha performans analizinde kritik rol oynar.

Olası modem yanıtları normal akışta izleme bilgisi ardından OK, desteklenmeyen komutta ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


MONIZIP

MONIZIP komutu MONI çıktısının daha kompakt/özet bir versiyonunu almak için kullanılan üreticiye özgü bir izleme komutudur. Saha loglarında daha kısa satırlarla kritik hücre bilgisini toplamak gerektiğinde faydalıdır.

Detay seviyesi düşük olsa da, hızlı tanılama akışlarında teknoloji ve temel radyo göstergelerini topluca görmek için pratik bir seçenektir.

info

Telit modemlerde bu işlev çoğunlukla AT#MONIZIP komutuyla sağlanır; çıktı alanları firmware sürümüne göre değişebilir.

> AT#MONIZIP
#MONIZIP: LTE,-96,-11,123,...
OK

Komut formatı tipik olarak AT#MONIZIP şeklindedir ve parametre almaz.

Detaylı analiz gerektiğinde MONIZIP yerine MONI kullanmak daha doğru olur; iki komut birlikte kullanıldığında hem hızlı izleme hem derin teşhis avantajı elde edilir.

Olası modem yanıtları normal akışta özet servis/radyo bilgisi ardından OK, desteklenmeyen komutta ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


Zaman ve Saat Senkronizasyonu

CTZU

AT+CTZU komutu modem saat dilimi bilgisinin ağdan otomatik güncellenmesini yönetir. Saat damgası doğruluğu kritik olan IoT uygulamalarında (alarm, olay kaydı, raporlama) bu ayarın doğru yapılması önemlidir.

CTZU açıkken modem, şebekeden gelen zaman dilimi bilgisini yerel saat ayarına yansıtabilir. Ancak her operatörün zaman bilgisi davranışı aynı olmadığından saha doğrulaması şarttır.

> AT+CTZU=1
OK
> AT+CTZU?
+CTZU: 1
OK

Komut formatı AT+CTZU=<n> ve sorgu için AT+CTZU? şeklindedir.

Sık kullanılan parametreler:

  • n=0: Otomatik zaman dilimi güncellemesi kapalı
  • n=1: Otomatik zaman dilimi güncellemesi açık

Doğru saat yönetimi için CTZU ayarı, NITZ desteği ve CCLK/NTP senkronizasyon stratejisi birlikte ele alınmalıdır.

Olası modem yanıtları normal akışta OK, geçersiz parametrede ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


NITZ

NITZ komutu şebekeden yayınlanan tarih/saat ve zaman dilimi bilgisinin modem tarafından işlenmesini kontrol etmek için kullanılan üreticiye özgü bir ayardır. Zaman bilgisini operatörden alma stratejisi kurulan sistemlerde önemli rol oynar.

NITZ verisi her operatörde aynı tutarlılıkta gelmeyebilir. Bu yüzden yalnızca NITZ’e güvenmek yerine NTP veya uygulama tarafı zaman doğrulamasıyla birlikte hibrit bir yaklaşım tercih edilmelidir.

info

Telit modemlerde bu işlev çoğunlukla AT#NITZ komut ailesiyle sunulur; parametre ve çıktı formatı firmware’e göre değişebilir.

> AT#NITZ=1
OK
> AT#NITZ?
#NITZ: 1
OK

Komut formatı tipik olarak AT#NITZ=<n> ve sorgu için AT#NITZ? şeklindedir.

Sık kullanılan yaklaşım:

  • n=0: NITZ işleme kapalı
  • n=1: NITZ işleme açık

NITZ açıkken saat güncelleme olayları bazı modemlerde URC olarak raporlanabilir; üretim sisteminde log/parsing tasarımı buna göre yapılmalıdır.

Olası modem yanıtları normal akışta OK, geçersiz parametrede ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


NTP

NTP komutu modem saatini NTP sunucusu üzerinden senkronize etmek için kullanılan üreticiye özgü bir zaman yönetimi komutudur. Zaman damgası kritik uygulamalarda (olay kaydı, sertifika doğrulama, zamanlanmış görevler) güvenilir referans sağlar.

NITZ’e kıyasla NTP genellikle daha öngörülebilir sonuç verir; ancak veri bağlantısı gerektirdiği için önce PDP/IP durumunun doğru kurulmuş olması gerekir.

info

Telit modemlerde bu işlev çoğunlukla AT#NTP komut ailesiyle sunulur; sunucu tanımı, tetikleme ve sonuç formatı firmware’e göre değişebilir.

> AT#NTP="pool.ntp.org",0
OK
> AT#NTP?
#NTP: 1,"pool.ntp.org"
OK

Komut formatı modem ailesine göre farklılaşmakla birlikte tipik kullanım AT#NTP=<server>[,<tz/dst>] ve sorgu için AT#NTP? şeklindedir.

NTP senkronizasyonu öncesinde CGACT/SGACT ve CGPADDR ile IP erişimi doğrulanmalıdır. Senkronizasyon sonrası saat değeri CCLK? ile kontrol edilebilir.

Olası modem yanıtları normal akışta OK, DNS/erişim hatası veya geçersiz parametrede ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


CCLK

AT+CCLK komutu modem gerçek zaman saatini (RTC) okumak ve ayarlamak için kullanılır. Olay kayıtları, zaman damgalı telemetri ve zaman bazlı otomasyon senaryolarında temel referans komutlardan biridir.

Saat kaynağı NTP/NITZ ile güncelleniyor olsa bile, uygulama tarafında periyodik olarak CCLK? kontrolü yapmak zaman kayması ve senkronizasyon sorunlarını erken yakalamayı sağlar.

> AT+CCLK?
+CCLK: "26/02/23,14:35:10+12"
OK
> AT+CCLK="26/02/23,14:35:10+12"
OK

Komut formatı sorgu için AT+CCLK?, set için AT+CCLK="yy/MM/dd,hh:mm:ss±zz" şeklindedir.

Buradaki ±zz alanı 15 dakikalık dilimler cinsinden timezone ofsetini ifade eder. Örneğin +12 değeri 12×15=18012 \times 15 = 180 dakika yani UTC+3 anlamına gelir.

Olası modem yanıtları normal akışta OK, format hatasında ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


Güvenlik ve Trafik Kısıtlama

FRWL

FRWL komutu modem üzerindeki IP filtreleme/firewall beyaz liste davranışını yönetmek için kullanılan üreticiye özgü bir güvenlik komutudur. Yetkisiz kaynaklardan gelen trafiği sınırlamak için özellikle açık socket kullanılan ürünlerde önemlidir.

Saha güvenliği açısından yalnızca gerekli uzak IP/port kombinasyonlarına izin verilmesi, saldırı yüzeyini azaltır ve beklenmeyen oturum denemelerini filtreler.

warning

Telit modemlerde bu işlev çoğunlukla AT#FRWL komut ailesiyle sunulur; parametre sırası ve kural formatı firmware sürümüne göre değişebilir. Üretim öncesi kural tablosu mutlaka hedef modülde test edilmelidir.

> AT#FRWL=1,"198.51.100.10",0,65535
OK
> AT#FRWL?
#FRWL: 1,"198.51.100.10",0,65535
OK

Komut formatı modem ailesine göre değişmekle birlikte tipik kullanım AT#FRWL=<enable>,<ip>[,<port_start>,<port_end>] şeklindedir.

Kurallar tanımlandıktan sonra bağlantı testleri (izinli ve izinsiz kaynaklardan) yapılmalı, yanlış pozitif/negatif filtreleme riski doğrulanmalıdır.

Olası modem yanıtları normal akışta OK, geçersiz IP/port veya format hatasında ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


HTTPCFG

HTTPCFG komutu modem üzerindeki HTTP istemci profilini (sunucu, port, bağlantı güvenliği ve bazı sürümlerde ek timeout/proxy ayarları) yapılandırmak için kullanılan üreticiye özgü bir komuttur. HTTP/HTTPS istek akışına geçmeden önce temel endpoint ayarı bu komutla hazırlanır.

Yanlış host/port veya SSL ayarı, sonraki gönderim komutlarında (HTTPSND) doğrudan bağlantı hatası olarak görünür. Bu nedenle request öncesi HTTPCFG? ile profil doğrulaması önerilir.

info

Telit modemlerde bu işlev çoğunlukla AT#HTTPCFG komut ailesiyle sunulur; parametre dizilimi firmware sürümüne göre değişebilir.

> AT#HTTPCFG=0,"api.example.com",443,1
OK
> AT#HTTPCFG?
#HTTPCFG: 0,"api.example.com",443,1
OK

Komut formatı modem ailesine göre farklılık gösterebilmekle birlikte tipik kullanım AT#HTTPCFG=<profile>,<host>,<port>,<ssl> şeklindedir.

Sık kullanılan parametre yaklaşımı:

  • <profile>: HTTP profil indeksi
  • <host>: Hedef sunucu adı/IP
  • <port>: Servis portu (ör. 80, 443)
  • <ssl>: Güvenli bağlantı kapalı/açık

Olası modem yanıtları normal akışta OK, hatalı host/parametre formatında ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


HTTP/HTTPS Uygulama Katmanı

HTTPSND

HTTPSND komutu yapılandırılmış HTTP profilini kullanarak isteği sunucuya göndermek için kullanılan üreticiye özgü bir komuttur. Tipik akışta önce HTTPCFG ile profil hazırlanır, ardından HTTPSND ile GET/POST çağrısı tetiklenir ve sonuç HTTPRCV ile alınır.

İstek gövdesi (payload) gerektiren senaryolarda komut sırası ve veri uzunluğu alanları kritik olduğundan, uygulama tarafındaki parser ve timeout yönetimi dikkatli tasarlanmalıdır.

info

Telit modemlerde bu işlev çoğunlukla AT#HTTPSND komut ailesiyle sunulur; method kodları ve parametre sırası firmware’e göre farklı olabilir.

> AT#HTTPSND=0,0,"/v1/ping"
OK
> AT#HTTPSND=0,1,"/v1/data",27
CONNECT
{"temp":24.2,"hum":46}
OK

Komut formatı modem ailesine göre farklılaşabilmekle birlikte tipik kullanım AT#HTTPSND=<profile>,<method>,<path>[,<len>] şeklindedir.

Sık kullanılan parametre yaklaşımı:

  • <profile>: Önceden tanımlanmış HTTP profil indeksi
  • <method>: GET/POST benzeri metod seçimi (kodlama modem dokümanına bağlı)
  • <path>: İstek URI yolu
  • <len>: Gönderilecek payload uzunluğu (varsa)

Olası modem yanıtları normal akışta OK (veya veri fazı için CONNECT), bağlantı/sertifika/parametre hatasında ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


HTTPRCV

HTTPRCV komutu HTTPSND sonrası oluşan HTTP yanıtını modem buffer’ından okumak için kullanılan üreticiye özgü komuttur. HTTP durum kodu, header bilgileri ve response body işleme akışında kritik adımdır.

Yanıt boyutu büyük olduğunda tek seferde okunamayabilir; bu durumda offset/uzunluk yaklaşımıyla parçalı okuma yapmak gerekir.

info

Telit modemlerde bu işlev çoğunlukla AT#HTTPRCV komut ailesiyle sunulur; çıktı formatı ve alanlar firmware’e göre değişebilir.

> AT#HTTPRCV=0
#HTTPRCV: 200,27
{"status":"ok","id":42}
OK
> AT#HTTPRCV=0,0,128
#HTTPRCV: 206,128
...ilk 128 byte...
OK

Komut formatı modem ailesine göre farklılaşabilmekle birlikte tipik kullanım AT#HTTPRCV=<profile>[,<offset>,<len>] şeklindedir.

Sık kullanılan yaklaşım:

  • İlk okumada HTTP durum kodu ve toplam içerik uzunluğu alınır
  • Büyük içerikler için offset artırılarak parçalı okuma yapılır
  • Uygulama parser’ı eksik/tekrarlı parça durumlarına karşı korumalı tasarlanır

Olası modem yanıtları normal akışta yanıt satırları ve OK, henüz hazır olmayan yanıt veya parametre hatasında ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


Socket İleri Konfigürasyon

SCFG

SCFG komutu modem socket profilinin temel çalışma parametrelerini yapılandırmak için kullanılan Telit’e özgü bir komuttur. TCP/UDP bağlantılarında timeout, retry ve veri akışı davranışını belirleyen kritik ayarlar bu komutla yapılır.

Socket katmanında görülen kopma, uzun bekleme veya beklenmeyen kapanma sorunlarında çoğu zaman SCFG parametrelerinin hedef uygulamaya uygun seçilmemesi etkili olur.

info

Telit modemlerde bu işlev çoğunlukla AT#SCFG komut ailesiyle sunulur; parametre sırası ve anlamları firmware sürümüne göre değişebilir.

> AT#SCFG=1,1,300,90,600,50
OK
> AT#SCFG?
#SCFG: 1,1,300,90,600,50
OK

Komut formatı modem ailesine göre farklılaşsa da tipik kullanım AT#SCFG=<profile>,... şeklindedir.

Pratik yaklaşım olarak önce üretici öneri değerleriyle başlanmalı, sonra gerçek ağ koşullarında reconnect süresi, timeout davranışı ve veri bütünlüğü ölçülerek profil optimize edilmelidir.

Olası modem yanıtları normal akışta OK, geçersiz parametre/profil durumunda ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SCFGEXT

SCFGEXT komutu socket profiline ait genişletilmiş ağ davranış ayarlarını yönetmek için kullanılan Telit’e özgü bir komuttur. Özellikle uzun ömürlü TCP bağlantılarında keepalive, kapanış davranışı ve bağlantı dayanıklılığına etki eden ince ayarlar bu grupta yer alabilir.

Temel profil (SCFG) ayarları yeterli görünse bile sahada NAT timeout, uzun sessiz periyotlar veya ara ağ cihazları nedeniyle bağlantı düşmeleri yaşanıyorsa SCFGEXT parametreleri kritik hale gelir.

info

Telit modemlerde AT#SCFGEXT parametreleri modem ailesi ve firmware sürümüne göre değişebilir; kesin alan tanımları için hedef modülün AT referansı esas alınmalıdır.

> AT#SCFGEXT=1,1,0,0,0,0
OK
> AT#SCFGEXT?
#SCFGEXT: 1,1,0,0,0,0
OK

Komut formatı tipik olarak AT#SCFGEXT=<profile>,... şeklindedir.

Sahada önerilen yaklaşım, önce varsayılan değerlere yakın başlamak ve yalnızca ölçülen bağlantı problemlerine karşı hedefli parametre ayarı yapmaktır. Aksi halde agresif ayarlar gereksiz trafik veya beklenmeyen kopmalara neden olabilir.

Olası modem yanıtları normal akışta OK, geçersiz parametre/profil durumunda ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SCFGEXT2

SCFGEXT2 komutu socket profilinin ikinci seviye genişletilmiş parametrelerini yönetmek için kullanılan Telit’e özgü bir ayar grubudur. Uzun süre çalışan TCP/UDP uygulamalarında kararlılık ve kenar durum davranışlarını ince ayarlamak için kullanılabilir.

Bu bölümdeki parametreler genellikle ileri seviye kullanım içindir; yanlış değerler bağlantı sürekliliği veya veri akışı üzerinde beklenmeyen etkiler oluşturabilir.

info

AT#SCFGEXT2 parametre seti modem ailesi ve firmware sürümüne göre değişebilir. Kesin alan anlamları için ilgili modülün AT komut referansı esas alınmalıdır.

> AT#SCFGEXT2=1,0,0,0
OK
> AT#SCFGEXT2?
#SCFGEXT2: 1,0,0,0
OK

Komut formatı tipik olarak AT#SCFGEXT2=<profile>,... şeklindedir.

Sahada önerilen yöntem, temel iletişim kararlı hale geldikten sonra yalnızca ölçülmüş problem senaryoları için bu parametrelerin kademeli olarak ayarlanmasıdır.

Olası modem yanıtları normal akışta OK, geçersiz parametre/profil durumunda ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SCFGEXT3

SCFGEXT3 komutu socket profilinin üçüncü seviye genişletilmiş parametrelerini yönetmek için kullanılan Telit’e özgü ileri ayar grubudur. Bu seviye genellikle özel ağ davranışları veya ürün-özel optimizasyon senaryolarında devreye alınır.

Üretim cihazlarında bu parametrelerin gereksiz değiştirilmesi önerilmez; çünkü default davranıştan sapmalar yalnızca belirli problemlerde fayda sağlarken, genel stabiliteyi olumsuz etkileyebilir.

info

AT#SCFGEXT3 alanları modem ailesi/firmware sürümüne bağlıdır. Kesin parametre anlamları için ilgili modülün AT referans dokümanı kullanılmalıdır.

> AT#SCFGEXT3=1,0,0
OK
> AT#SCFGEXT3?
#SCFGEXT3: 1,0,0
OK

Komut formatı tipik olarak AT#SCFGEXT3=<profile>,... şeklindedir.

Bu ayarlar uygulanırken, değişiklikler küçük adımlarla yapılmalı ve her adım sonrası reconnect süresi, veri kaybı ve uzun süreli bağlantı kararlılığı ölçülmelidir.

Olası modem yanıtları normal akışta OK, geçersiz parametre/profil durumunda ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


Socket Çekirdek Akışı

SS

SS komutu modem socket oturumlarının durumunu sorgulamak için kullanılan Telit’e özgü bir teşhis komutudur. Açık/kapalı bağlantı durumu, soket indeksleri ve bazı sürümlerde bağlantı uç noktası bilgileri bu komutla izlenebilir.

Saha tarafında “bağlantı koptu mu, yoksa uygulama katmanı mı bekliyor?” ayrımını yapmak için SS çıktısı pratik ve hızlı bir referans sağlar.

info

Telit modemlerde bu işlev çoğunlukla AT#SS komutuyla sunulur; çıktı alanları ve durum kodları firmware sürümüne göre değişebilir.

> AT#SS
#SS: 1,CONNECTED,"198.51.100.20",1883
OK

Komut formatı tipik olarak AT#SS şeklindedir ve çoğu kullanımda parametre almaz.

Çoklu socket kullanılan uygulamalarda SS çıktısı periyodik olarak izlenerek bağlantı yaşam döngüsü (açılma, kapanma, yeniden bağlanma) loglarında korelasyon kurulmalıdır.

Olası modem yanıtları normal akışta durum satırları ve OK, desteklenmeyen komutta ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SL

SL komutu modemde bir socket’i dinleme (listen) moduna almak için kullanılan Telit’e özgü komutlardan biridir. Cihazın sadece istemci değil, belirli senaryolarda sunucu gibi bağlantı kabul etmesi gerektiğinde kullanılır.

Uzak uçtan gelecek bağlantıları kabul eden tasarımlarda SL komutu, port açma ve bağlantı bekleme akışının temel adımlarından biridir.

info

Telit modemlerde bu işlev çoğunlukla AT#SL komutuyla sunulur; parametre dizilimi ve listen davranışı firmware sürümüne göre değişebilir.

> AT#SL=1,1,1883
OK
> AT#SS
#SS: 1,LISTEN,1883
OK

Komut formatı modem ailesine göre farklılaşmakla birlikte tipik kullanım AT#SL=<socketId>,<protocol>,<localPort> şeklindedir.

Listen modunda güvenlik için açık portlar minimum tutulmalı, gerekirse FRWL kurallarıyla erişim sınırlandırılmalıdır.

Olası modem yanıtları normal akışta OK, geçersiz socket/port/protokol parametresinde ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SH

SH komutu aktif bir socket oturumunu kapatmak (hang-up/close) için kullanılan Telit’e özgü komutlardan biridir. Uygulama kapanışı, yeniden bağlanma öncesi temizlik ve hata toparlama akışlarında temel rol oynar.

Socket kapanışı düzgün yapılmazsa modem tarafında yarım açık bağlantılar veya kaynak tüketimi oluşabilir. Bu nedenle reconnect döngülerinde SH adımı net şekilde uygulanmalıdır.

info

Telit modemlerde bu işlev çoğunlukla AT#SH komutuyla sunulur; parametreler ve kapanış davranışı firmware’e göre değişebilir.

> AT#SH=1
OK
> AT#SS
#SS: 1,CLOSED
OK

Komut formatı tipik olarak AT#SH=<socketId> şeklindedir.

Bağlantı kapanışı sonrası yeni oturum açmadan önce socket durumunun (SS) gerçekten kapandığı doğrulanmalıdır.

Olası modem yanıtları normal akışta OK, geçersiz socket kimliğinde ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SO

SO komutu socket oturumuna ait çalışma seçeneklerini (socket options) ayarlamak için kullanılan Telit’e özgü komutlardan biridir. Uygulama gereksinimine göre belirli davranışların (ör. zaman aşımı veya iletim davranışı) profile/socket bazında düzenlenmesini sağlar.

Bu komut genellikle SCFG/SCFGEXT ile yapılan genel profil ayarlarını, belirli socket senaryolarında daha ince seviyede tamamlamak için kullanılır.

info

Telit modemlerde bu işlev çoğunlukla AT#SO komutuyla sunulur; option kodları ve parametre anlamları modem ailesi/firmware sürümüne göre değişebilir.

> AT#SO=1,1,1
OK
> AT#SO?
#SO: 1,1,1
OK

Komut formatı tipik olarak AT#SO=<socketId>,<option>,<value> şeklindedir.

Option değerleri hedef modül dokümanına göre seçilmelidir; rastgele veya taşınmış (farklı modemden kopya) değerler bağlantı kararlılığını olumsuz etkileyebilir.

Olası modem yanıtları normal akışta OK, geçersiz socket/option/value kombinasyonunda ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SA

SA komutu listen modundaki bir socket üzerinde gelen bağlantıyı kabul etmek (accept) için kullanılan Telit’e özgü komutlardan biridir. Sunucu modunda çalışan cihazlarda SL ile açılan porta gelen oturumların aktif bağlantıya dönüştürülmesini sağlar.

SA çağrısı yapılmadan bazı senaryolarda gelen bağlantı beklemede kalabilir; bu yüzden listen/accept yaşam döngüsünün uygulama tarafında net modellenmesi gerekir.

info

Telit modemlerde bu işlev çoğunlukla AT#SA komutuyla sunulur; parametre ve çıktı formatı firmware sürümüne göre değişebilir.

> AT#SA=1
#SA: 1,"203.0.113.10",50234
OK

Komut formatı tipik olarak AT#SA=<socketId> şeklindedir.

Bağlantı kabulü sonrası uzaktan uç bilgisi loglanmalı ve veri alışverişinden önce socket durumunun (SS) aktif/connected olduğu doğrulanmalıdır.

Olası modem yanıtları normal akışta kabul bilgisi ve OK, gelen bağlantı yoksa bekleme/uyarı davranışı (modem davranışına bağlı), geçersiz socket durumunda ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SD

SD komutu modem üzerinde bir socket ile uzak sunucuya istemci bağlantısı başlatmak için kullanılan Telit’e özgü temel komuttur. MQTT broker, TCP backend veya özel UDP uç noktalarına bağlantı açma akışında en kritik adımlardan biridir.

Bağlantı öncesi PDP/IP durumu doğrulanmalı (CGACT/SGACT, CGPADDR), aksi halde SD hataları kök nedenin yanlış katmanda aranmasına yol açabilir.

info

Telit modemlerde bu işlev çoğunlukla AT#SD komutuyla sunulur; parametre sırası ve protokol kodları modem/firmware sürümüne göre değişebilir.

> AT#SD=1,0,1883,"broker.example.com",0,0,1
OK
> AT#SS
#SS: 1,CONNECTED,"198.51.100.20",1883
OK

Komut formatı modem ailesine göre farklılaşmakla birlikte tipik kullanım AT#SD=<socketId>,<protocol>,<remotePort>,<host>[,...] şeklindedir.

Bağlantı sonrası uygulama veri alışverişine geçmeden önce socket durumunun (SS) gerçekten CONNECTED olduğundan emin olmalıdır.

Olası modem yanıtları normal akışta OK, DNS/erişim/protokol hatalarında ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SSEND

SSEND komutu açık bir socket üzerinden veri göndermek için kullanılan Telit’e özgü komutlardan biridir. Uygulama payload’ının modeme aktarılması ve uzak uca iletilmesi bu komutla tetiklenir.

Gönderim sırasında uzunluk ve gerçek payload uyumsuzluğu en sık hata nedenlerinden biridir. Bu yüzden uygulama tarafında byte sayımı ve gönderim zaman aşımı dikkatle yönetilmelidir.

info

Telit modemlerde bu işlev çoğunlukla AT#SSEND komutuyla sunulur; prompt/flow davranışı firmware sürümüne göre değişebilir.

> AT#SSEND=1,12
>
hello world!
OK

Komut formatı tipik olarak AT#SSEND=<socketId>,<len> şeklindedir.

Sık kullanılan akış:

  • Komut sonrası modem veri girişi için prompt (>) verir
  • Belirtilen uzunlukta payload gönderilir
  • Modem gönderim sonucunu OK/hata ile döner

Olası modem yanıtları normal akışta OK, socket kapalıysa veya uzunluk/payload uyumsuzsa ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SRECV

SRECV komutu açık bir socket üzerinden modem buffer’ına gelen veriyi okumak için kullanılan Telit’e özgü komutlardan biridir. Uygulamanın sunucudan gelen payload’ı kontrollü şekilde çekebilmesi için temel alım komutudur.

Yoğun veri akışında tek seferde okuma yerine parçalı okuma yapılması, bellek yönetimi ve parser kararlılığı açısından daha güvenli bir yaklaşımdır.

info

Telit modemlerde bu işlev çoğunlukla AT#SRECV komutuyla sunulur; çıktı formatı ve veri başlığı alanları firmware’e göre değişebilir.

> AT#SRECV=1,64
#SRECV: 12
hello world!
OK

Komut formatı tipik olarak AT#SRECV=<socketId>,<maxLen> şeklindedir.

Sık kullanılan akış:

  • Belirli maxLen ile buffer’dan veri çekilir
  • Dönen gerçek byte sayısı parser tarafından doğrulanır
  • Veri kalırsa aynı socket için tekrar SRECV çağrılır

Olası modem yanıtları normal akışta veri uzunluğu + payload + OK, veri yoksa kısa/boş yanıt, geçersiz socket/parametrede ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SHDN

SHDN komutu modemi kontrollü şekilde kapatmak (graceful shutdown) için kullanılan temel komutlardan biridir. Güç kesmeden önce bu komutun çalıştırılması, dosya/soket durumlarının düzgün kapanmasına ve beklenmeyen bozulmaların önlenmesine yardımcı olur.

Özellikle uzaktan yönetilen saha cihazlarında ani enerji kesimi yerine yazılımsal kapanış akışı kullanmak, sonraki açılışta daha stabil davranış sağlar.

> AT#SHDN
OK

Komut formatı tipik olarak AT#SHDN şeklindedir ve parametre almaz.

Kapanış komutu sonrası modemin yanıt vermesi kesilebilir; uygulama tarafında yeniden başlatma süresi ve UART yeniden senkronizasyonu için bekleme penceresi tanımlanmalıdır.

Olası modem yanıtları normal akışta OK, komut desteklenmiyor veya kapanış koşulu sağlanmıyorsa ERROR ya da detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.


SRING

SRING komutu socket tarafında gelen bağlantı veya veri olaylarının nasıl raporlanacağını yönetmek için kullanılan Telit’e özgü komutlardan biridir. Uygulamanın polling yerine URC tabanlı olay işleme yapmasında önemli rol oynar.

Doğru SRING ayarıyla modem, yeni veri geldiğinde veya bağlantı olayı oluştuğunda host tarafını zamanında bilgilendirir. Bu da enerji tüketimi ve tepki süresi arasında daha iyi denge kurulmasına yardımcı olur.

info

Telit modemlerde bu işlev çoğunlukla AT#SRING komutuyla sunulur; raporlama modları ve çıktı davranışı firmware sürümüne göre değişebilir.

> AT#SRING=1
OK
> AT#SRING?
#SRING: 1
OK

Komut formatı tipik olarak AT#SRING=<n> ve sorgu için AT#SRING? şeklindedir.

URC tabanlı mimaride parser tarafı asenkron bildirimleri güvenli şekilde işleyecek biçimde tasarlanmalı, veri yarışı (race condition) risklerine karşı koruma eklenmelidir.

Olası modem yanıtları normal akışta OK, geçersiz parametrede ERROR veya detaylı hata modu açıksa +CME ERROR: <code> şeklindedir.