Aljaž Ogrin - Elektro zadeve - GSM

 

Povezava GSM telefona z računalnikom in kaj potem s tako povezavo početi?

 
O tem sem že velikokrat razmišljal.
Sedaj sem si naredil en uporaben program, ki ga lahko uporablajt tudi vi.

Moja oprema:
- GSM telefon Ericsson R310s, trenutno že precej zdelan
- RS-232 podatkovni(!) kabel za telefon (to ni kabel za flash & unlock)
- PC z ustreznim programjem.
- ustrezna literatura: Seznam AT ukazov (za E. R310 - 3MB) (za E. T68 - 2,6MB)


Stvari, ki se jih da početi na računalniku, če je nanj priključen mobitel:

- podatkovna povezava (in počasno & drago surfanje po internetu)
- branje in nalaganje telefonskega imenika
- branje SMS-ov, ki so v telefonu
- pošiljanje SMS sporočil (ni potrebno tipkanje na tistih 10 majhnih tipk)
- izbiranje vseh mogočih in nemogočih nastavitev telefona
- branje IMEI kode (= identifikacijska številka telefona)
- vpisovanje lastne melodije
- igranje katerekoli melodije v telefonu
- & mnogo drugega.


Meni se je zdela najbolj uporabna možnost, da si naredim backup kopijo telefonskega imenika.
Zadeva je čisto preprosta....
- povežeš telefon in na COM port s kablom (seveda mora biti tel. prižgan in PIN vpisan)
- na PCju zaženeš nek terminalski program, npr. HyperTerminal na Windowsih
- parametre za izbrani COM port nastaviš na: 9600, 8, none, 1, no flow control
- preizkusiš komunikacijo: napišeš AT in enter. Izpiše se ti AT OK
- z ukazom AT+CPBS="xx" izbereš pomnilnik:
      at+cpbs="SM" - imenik na SIM kartici
      at+cpbs="ME" - imenik v telefonu
      at+cpbs="LD" - zadnje klicane št. na SIM
      at+cpbs="DC" - zadnje klicane št. v telefonu
      at+cpbs="RC" - zadnji sprejeti klici v telefonu
      at+cpbs="MC" - seznam zgrešenih klicev v telefonu
      at+cpbs="MV" - seznam številk za glasovno klicanje


- vpišeš ukaz AT+CPBR=1,200 in enter. Zadnja številka (tukaj 200) je velikost imenika.
- telefon začne bruhat vse shranjene telefonske številke.
to je vse!


ostale uporabne funkcije:

    branje IMEI kode: at+cgsn
    koliko je ura na telefonu: AT+CCLK?
    nastavimo uro na telefonu: at+cclk= "04/12/31,23:59:00"
    kako polna je baterija: at+cbc Druga številka, ki jo izpiše je napolnjenost baterije v %.
    pozvoni enkrat: at*erip=7,3 samo Ericsson! Beri navodila
 

 

TELEFON     /nazaj gor na opremo\
Za opis telefona bo zadosti ena fotka...

To je moj telefon. Ne boste verjeli, še vedno dela!
To je moj telefon. Ne boste verjeli, še vedno dela!

 

KABEL ZA POVEZAVO     /nazaj gor na opremo\
Originalni podatkovni kabel prodajajo za več kot 10 jurjev... dobi se ga pa že za 2 tisoč :-)

Tak kabel uporabljam jaz.

kdor je po duši vsaj malo elektronik si kabel lahko naredi sam!
Predvsem je potreben čip za prilagajanje nivojev TTL <->RS232, recimo max232 ali katerikoli podoben.
Pinout COM porta je na moji elektro strani spodaj. Pinout za vsak telefon pa je na internetu.
Rabiš samo še konektor.

 

PROGRAM     /nazaj gor na opremo\
Eden izmed dobrih programov za delo z mobilnimi telefoni (predvsem Sony-Ericsson) je Float's Mobile Agent (link).
Ker pa ta program napisan za bolj nove telefone, se z mojim žal ne zna pogovarjat. Kar me je seveda precej razkurilo!
Zato sem si napisal svoj program :-)

Torej, jaz sem si v Delphiju naredil program, ki iz telefona prebere SMS sporočilo in ga tudi dekodira. Večina telefonov uporablja PDU način pošiljanja besedila in ostalih podatkov, kar izgleda nekako takole: 07918346012033F30400800000502061001023406453F85BFE1EA7... V program lahko tudi vpišeš te PDU podatke in jih samo dekodira. Tako priklop telefona ni nujen.

Program izgleda takole:

Program za branje SMS-ov.


Delo s programom je res enostavno. Med drugim je vse narisano...
Deluje tudi v WinXP!
Ima eno malo napakico, da za telefonsko številko izpiše tudi "F". To je zaradi tega, ker je število cifer v naših telefonskih številkah liho. Ni se mi še dalo popravljat. Bo enkrat.

Če se hoče kdo igrat, je tukaj download - verzija 7 (avgust 2005).
Vse v zvezi s programom (če so kakšne napake, če pogrešate kakšne funkcije, itd.) mi pišite na
Če še nimate naložene knjižnice za Borland Delphi (qtintf70.dll), je tukaj.



Debata teče naprej...
Obstajajo pa že telefoni, ki podpirajo običajno besedilo (poleg PDU).
tak telefon pripraviš na delo z ukazom: AT+CMGF=1 Če vrne Error, potem nimaš sreče. In rabiš moj program :-)

Še nekaj detajlov in napotkov za "ročno" branje SMS-ov:
at+cpms? - izpis statistike o zasedenosti. SM = SIM, ME = telefon
at+cpms="SM" - izberemo SIM pomnilnik za branje sporočil
at+cpms="ME" - izberemo pomnilnik telefona za branje sporočil
AT+CMGR=1 - branje sporočila z indexom 1. Če vrne +CMS ERROR: 500 to pomeni da je lokacija prazna. Napaka +CMS ERROR: 321 pa pomeni da je željeni index izven pomnilnika.
AT+CMGL="ALL" - pa menda sproži branje vseh SMS-ov. Nisem preizkušal.

več informacij o PDU formatu: ena stran in še druga stran.
nekaj informacij tudi po slo forumih, npr. elektro-n, elektronik.si


Zadnja sprememba: 30. 3. 2005
(c) Aljaz Ogrin