Difference between revisions of "GSM/GPRS"
From ArmadeusWiki
m (→Tools to look at) |
(→AT commands) |
||
Line 117: | Line 117: | ||
OK | OK | ||
</pre> | </pre> | ||
+ | * Get signal quality (should be better than 12/99): | ||
+ | <pre class="apf"> | ||
+ | AT+CSQ | ||
+ | +CSQ: 24,99 | ||
− | * Voice call "123456789" | + | OK |
+ | </pre> | ||
+ | * Voice call "123456789" (; is important here to signify a voice call, otherwise a data call is tried and may fail if you don't have the right subscribe) | ||
<pre class="apf"> | <pre class="apf"> | ||
ATD"123456789"; | ATD"123456789"; |
Revision as of 10:02, 19 May 2011
This page will summarize informations to use the GSM/GPRS module of the APF27Wireless board and the APF51Dev (optionnal).
Contents
Introduction
GSM/GPRS are generally driven through the RS-232 bus. AT commands are used to dialog with the module.
- GSM MODEM of the APF27Wireless extension board (APW) is connected to the UART2 (/dev/ttySMX1) of the APF27.
- GSM/3G MODEM of the APF51Dev is connected to the i.MX processor through an UART implemented in the FPGA. So the corresponding bitfile has to loaded before trying to access the MODEM.
Both are using a Sagem's Hilo module. Hilo AT commands can be found here
Linux configuration (APF27Dev only)
- Linux will have to be configured in order to tell that an APW is connected to your APF27Dev:
$ make linux26-menuconfig
System Type ---> Freescale MXC Implementations ---> ... Extension board (Wireless (APW)) ---> [*] GSM/GPRS Modem (NEW) [ ] Bluetooth & WiFi module (NEW) [ ] CSI (Camera) pass-through (NEW) [ ] GPS module (NEW)
$ make linux26
- reflash you Linux kernel
Usage
Configure serial port
APF27
# export GSM_PORT=/dev/ttySMX1 (or /dev/ttymxc1 on recent kernels) # stty -F $GSM_PORT raw -echo -echoe -echok 115200
APF51Dev
- Don't forget to put "Wireless" jumper on your APF51Dev (near microSD connector) AND power on FPGA Bank 1.
# load_fpga top_gsm_gps_firmware.bin # modprobe irq_ocore # modprobe 8250 # insmod board_irq_mng.ko # insmod 16750_ocore.ko serial8250.0: ttyS0 at MMIO 0xb8000020 (irq = 320) is a TI16750
Bring MODEM out of reset state (POK_IN/PWON pin, connected to PMIC GPIO6):
# modprobe wm831x-gpio # echo 245 > /sys/class/gpio/export # echo out > /sys/class/gpio/gpio245/direction # echo 1 > /sys/class/gpio/gpio245/value
- Configure serial port:
# export GSM_PORT=/dev/ttyS0 # stty -F $GSM_PORT raw -echo -echoe -echok 115200
AT commands
- Sending AT commands with cu utility (be sure to have installed it before):
# cu -l $GSM_PORT
( To exit cu you will have to type ~. )
- Check module presence:
ATI3 SAGEM HiC,A.005.00 OK
- Get constructor name:
AT+CGMI SAGEM OK
- Get model name:
AT+CGMM HILO GPRS OK
- Enter PIN code:
AT+CPIN="1234" OK
- Check PIN code status:
AT+CPIN? +CPIN: READY OK
- Check module status (0 Ready, 1 Unavailable, 2 Status unknown, 3 Ringing, 4 Call in progress, 5 Asleep):
AT+CPAS +CPAS: 0 OK
- Get Indicator control (<battchg>[0-4],<signal>[0-4],<service>0/1,<message>0/1,<call>0/1,<smsfull>0/1):
AT+CIND? +CIND: 0,4,1,0,0,0,1 OK
- Get signal quality (should be better than 12/99):
AT+CSQ +CSQ: 24,99 OK
- Voice call "123456789" (; is important here to signify a voice call, otherwise a data call is tried and may fail if you don't have the right subscribe)
ATD"123456789"; OK
- Terminate current call:
ATH OK
Tools to look at
- http://www.developershome.com/sms/freeLibForSMS.asp
- http://www.gnokii.org/
- http://www.alamin.org/en/index.html
- http://www.gammu.org/wiki/index.php?title=Gammu:Main_Page
- http://gatling.ikk.sztaki.hu/~kissg/gsm/index.html