FreeCalypso > hg > fc-am-toolkit
view doc/C1xx-VPM-usage @ 26:f98ca59c079d
doc/C1xx-VPM-usage: new article
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 11 Jun 2023 22:36:46 +0000 |
parents | |
children |
line wrap: on
line source
Once you have flashed a FreeCalypso VPM firmware build into your C1xx phone, what do you do with it afterward? In order to play with this voice pseudo- modem, you need to connect the headset jack serial cable between your host computer and your phone-turned-VPM and run rvinterf. With rvinterf running on the serial or USB-serial port connected to the target, press the red power button on the phone - a momentary press is sufficient. On C11x and C139 subfamilies you will hear a chirp sound as the firmware boots - this chirp (comes unchanged from TI, going back to at least C-Sample, if not earlier) is emitted via the buzzer, which is missing on C155/156. You will see debug trace output from the fw in the rvinterf terminal window, and your setup is ready to play with using fc-shell. Every 5 s our VPM firmware sends a keepalive query packet out the serial port (it's a FreeCalypso-invented extension to RVTMUX), and rvinterf responds with keepalive answer. If there is no rvinterf, i.e., if you press the power button on a VPM-flashed phone with no host computer connected or if you kill rvinterf or unplug the serial cable, the firmware will automatically power off in 15 to 20 s after not receiving keepalive responses. On buzzer-equipped C11x and C139 phones you will hear another brief sound (of lower frequency) when the firmware executes its poweroff operation. If you plug in the charging power source (which forces the Calypso+Iota chipset to be switched on), the firmware will not power off on its own for as long as it is plugged in (the stay-on condition is charging power present OR rvinterf present). If battery charging configuration is present in FFS (and it is present in FFS images generated by scripts in the present fc-am-toolkit), the battery will also charge - but please see caveats about battery charging at the end of C1xx-flashing article. Bringing up GSM network connection with fc-shell ================================================ Once you have rvinterf running and communicating with the VPM-flashed C1xx phone over the serial cable, you need to open another terminal window and run fc-shell. That second fc-shell terminal window will be the method by which you issue AT commands to the GSM MS. The sequence of AT commands which I (Mother Mychaela) typically use when bringing up a test GSM MS is as follows: AT+CMEE=2 -- enable verbose error responses AT+CFUN=1 -- bring up SIM and enable radio functionality AT+CREG=2 -- see registration status async responses AT+CRC=1 -- extended RING async responses AT+CLIP=1 -- show calling number on incoming calls AT+CNMI=2,1 -- show indications of incoming SMS AT+COPS=0 -- connect to the default operator Once you are connected to the network, you can dial outgoing voice calls with ATDnumber; (semicolon at the end is required - no CSD support in VPM), and you can answer incoming calls with ATA. ATH in an active call will hang up. If you receive incoming SMS, they will be written into SIM storage (no ME storage has been implemented in FreeCalypso yet), and if you did the AT+CNMI=2,1 step, you will see a +CMTI notification. You can then read them out with fcup-smdump -R (the -R option tells fcup-* utilities to connect via rvinterf), and you can decode the retrieved SMS PDUs with sms-pdu-decode. You can send outgoing SMS with fcup-smsend -R - see documentation in FC host tools package. Once you are done with your GSM play session, do a clean shutdown (IMSI detach etc) with AT+CFUN=0, and then power down the VPM phone with fc-shell poweroff.