středa 23. března 2016

GPRS s Arduino a problémy s O2 CZ

Tak jsem dospěl k bastlení GSM modulu k Arduinu (konkrétně SIM800L). Vše probíhalo krásně až na problémy se SIM kartou O2 CZ s tarifem Machine.

Píšu tuhle notičku jen pro ty, co se dostanou do stejného začarovaného kruhu, kdy všechno funguje, jen veškeré GPRS requesty skončí timoutem (Týká se to i zjišťování GSM lokace).

AT+HTTPACTION=0

vrátí sice OK, ale výsledkem je buď +HTTPACTION 601 Network error a nebo timeout.

Pro GSM lokalizaci:

AT+CIPGSMLOC=1,1

Pak error 603 nebo 601 dle nálady.

Řešení:


  1. O2 CZ nemá jen jeden APN, má jich několik a pro machine tarify je údajně určen APN Telemetry1 (nicméně, ten také nefunguje, viz řešení 2)
  2. Pokud ani Telemetry1 nefunguje, pak se musíte obrátit na podporu O2 a ti milostivě zařídí, že vaše sim může komunikovat s APN "internet", kde už vše běhá jak má.

Ostatní APN:  Internet, Oneport, Cma, Telemetry, Telemetry 1

Ukázkové komunikace:

Špatné APN:
  • ---> AT+CIPSHUT
  • <--- SHUT OK
  • ---> AT+CGATT=1
  • <--- OK
  • ---> AT+SAPBR=3,1,"CONTYPE","GPRS"
  • <--- OK
  • ---> AT+SAPBR=3,1,"APN","Cokoliv"
  • <--- OK
  • ---> AT+CSTT="Cokoliv"
  • <--- OK
  • ---> AT+SAPBR=1,1
  • <--- OK
  • ---> AT+CIICR
  • <--- OK
  • ---> AT+CIPGSMLOC=1,1
  • <--- +CIPGSMLOC: 601
Dobré, ale nefunkční APN:
  • ...-začátek je stejný ....
  • ---> AT+SAPBR=3,1,"APN","Telemetry1"
  • <--- OK
  • ---> AT+CSTT="Telemetry1"
  • <--- OK
  • ---> AT+SAPBR=1,1
  • <--- OK
  • ---> AT+CIICR
  • <--- OK
  • ---> AT+CIPGSMLOC=1,1
  • <--- Time out
Funkční APN:
  • ...-začátek je stejný ....
  • ---> AT+SAPBR=3,1,"APN","internet"
  • <--- OK
  • ---> AT+CSTT="internet"
  • <--- OK
  • ---> AT+SAPBR=1,1
  • <--- OK
  • ---> AT+CIICR
  • <--- OK
  • ---> AT+CIPGSMLOC=1,1
  • <--- +CIPGSMLOC: 0,14.4XXXX,50.0XXXXX,2016/03/23,13:14:48

Žádné komentáře:

Okomentovat