From: Christopher Vogl <christopher.vogl@hale.at>
To: ofono@ofono.org
Subject: Re: [PATCH] telit: notify sim inserted when sim ready
Date: Fri, 27 Jul 2012 13:52:41 +0200 [thread overview]
Message-ID: <50128109.6030208@hale.at> (raw)
In-Reply-To: <50127371.7000905@hale.at>
[-- Attachment #1: Type: text/plain, Size: 20962 bytes --]
On 27/07/12 12:54, Christopher Vogl wrote:
> On 27/07/12 11:58, Andrea Galbusera wrote:
>> Hi Christopher,
>>
>> On Fri, Jul 27, 2012 at 11:37 AM, Christopher Vogl
>> <christopher.vogl@hale.at> wrote:
>>> On 26/07/12 17:19, Andrea Galbusera wrote:
>>>> I did some preliminary test with your patch. See the logs below:
>>>>
>>>> -------- with patch applied --------
>>>>
>>>> ofonod[30959]: plugins/telit.c:telit_enable() 0x9e281c8
>>>> ofonod[30959]: src/modem.c:get_modem_property() modem 0x9e281c8
>>>> property
>>>> Modem
>>>> ofonod[30959]: plugins/telit.c:open_device() Modem /dev/ttyUSB0
>>>> ofonod[30959]: Modem: > ATE0 +CMEE=1\r
>>>> ofonod[30959]: Modem: < ATE0 +CMEE=1\r
>>>> ofonod[30959]: Modem: < \r\nOK\r\n
>>>> ofonod[30959]: Modem: > AT+CFUN=4\r
>>>> ofonod[30959]: Modem: < \r\nOK\r\n
>>>> ofonod[30959]: plugins/telit.c:cfun_enable_cb() 0x9e281c8
>>>> ofonod[30959]: examples/emulator.c:powered_watch() Adding modem
>>>> 0x9e281c8 to the list
>>>> ofonod[30959]: examples/emulator.c:create_tcp() Created
>>>> server_watch: 38
>>>> ofonod[30959]: examples/emulator.c:create_tcp() Created
>>>> server_watch: 39
>>>> ofonod[30959]: src/modem.c:modem_change_state() old state: 0, new
>>>> state: 1
>>>> ofonod[30959]: plugins/telit.c:telit_pre_sim() 0x9e281c8
>>>> ofonod[30959]: Modem: > AT+GCAP\r
>>>> ofonod[30959]: src/sim.c:ofono_sim_add_state_watch() 0x9e2a0d8
>>>> ofonod[30959]: src/sim.c:ofono_sim_add_state_watch() 0x9e2a0d8
>>>> ofonod[30959]: src/sim.c:ofono_sim_add_state_watch() 0x9e2a0d8
>>>> ofonod[30959]: Modem: < \r\n+GCAP:
>>>> +CGSM,+DS,+FCLASS,+MS,+ES\r\n\r\nOK\r\n
>>>> ofonod[30959]: Modem: > AT+CRC=1\r
>>>> ofonod[30959]: Modem: < \r\nOK\r\n
>>>> ofonod[30959]: Modem: > AT+CLIP=1\r
>>>> ofonod[30959]: Modem: < \r\nOK\r\n
>>>> ofonod[30959]: Modem: > AT+CDIP=1\r
>>>> ofonod[30959]: Modem: < \r\nERROR\r\n
>>>> ofonod[30959]: Modem: > AT+CNAP=1\r
>>>> ofonod[30959]: Modem: < \r\nERROR\r\n
>>>> ofonod[30959]: Modem: > AT+COLP=1\r
>>>> ofonod[30959]: Modem: < \r\n+CME ERROR: 10\r\n
>>>> ofonod[30959]: Modem: > AT+CSSN=1,1\r
>>>> ofonod[30959]: Modem: < \r\n+CME ERROR: 10\r\n
>>>> ofonod[30959]: Modem: > AT+VTD?\r
>>>> ofonod[30959]: Modem: < \r\n+CME ERROR: 10\r\n
>>>> ofonod[30959]: Modem: > AT+CCWA=1\r
>>>> ofonod[30959]: Modem: < \r\n+CME ERROR: 10\r\n
>>>> ofonod[30959]: drivers/atmodem/voicecall.c:at_voicecall_initialized()
>>>> voicecall_init: registering to notifications
>>>> ofonod[30959]: src/sim.c:ofono_sim_add_state_watch() 0x9e2a0d8
>>>> ofonod[30959]: Modem: > AT#QSS=2\r
>>>> ofonod[30959]: Modem: < \r\nOK\r\n
>>>> ofonod[30959]: Modem: > AT#QSS?\r
>>>> ofonod[30959]: Modem: < \r\n#QSS: 2,1\r\n\r\nOK\r\n
>>>> ofonod[30959]: plugins/telit.c:telit_qss_cb() 0x9e281c8
>>>> ofonod[30959]: plugins/telit.c:switch_sim_state_status() 0x9e281c8
>>>> ofonod[30959]: plugins/telit.c:switch_sim_state_status() SIM inserted
>>>> ofonod[30959]: Modem: > AT+CGMI\r
>>>> ofonod[30959]: Modem: < \r\nTelit\r\n\r\nOK\r\n
>>>> ofonod[30959]: Modem: > AT+CLCC\r
>>>> ofonod[30959]: Modem: < \r\n+CME ERROR: 10\r\n
>>>> ofonod[30959]: Modem: > AT+CGMM\r
>>>> ofonod[30959]: Modem: < \r\nUC864-E\r\n\r\nOK\r\n
>>>> ofonod[30959]: Modem: > AT+CGMR\r
>>>> ofonod[30959]: Modem: < \r\n08.01.005\r\n\r\nOK\r\n
>>>> ofonod[30959]: Modem: > AT+CGSN\r
>>>> ofonod[30959]: Modem: < \r\n352636020412669\r\n\r\nOK\r\n
>>>>
>>>> No sim readyness notification comes unless the modem is brought
>>>> online. Is this expected?
>>> In telit_enable() AT+CFUN=4 is issued. This disables TX and RX -
>>> causes the
>>> modem to do a network deregistration (if registered) - and does a SIM
>>> deactivation according to the Telit AT reference manual.
>>> So I suppose that the SIM readyness notificytion is not emitted until
>>> AT+CFUN=1 is set in telit_set_online().
>>> I don't know if this is the expected behaviour, some plugins set
>>> AT+CFUN=1
>>> in the enable function.
>>>
>>>
>>>> Issuing ./online-modem brings the process further with:
>>>>
>>>> ofonod[31135]: plugins/telit.c:telit_set_online() modem 0x99a81c8
>>>> online
>>>> ofonod[31135]: Modem: > AT+CFUN=1\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: src/modem.c:common_online_cb() Online in PRE SIM state
>>>> ofonod[31135]: Modem: < \r\n#QSS: 2\r\n
>>>> ofonod[31135]: plugins/telit.c:telit_qss_notify() 0x99a81c8
>>>> ofonod[31135]: plugins/telit.c:switch_sim_state_status() 0x99a81c8
>>>> ofonod[31135]: plugins/telit.c:switch_sim_state_status() SIM inserted
>>>> and PIN unlocked
>>>> ofonod[31135]: Modem: < \r\n#QSS: 3\r\n
>>>> ofonod[31135]: plugins/telit.c:telit_qss_notify() 0x99a81c8
>>>> ofonod[31135]: plugins/telit.c:switch_sim_state_status() 0x99a81c8
>>>> ofonod[31135]: plugins/telit.c:switch_sim_state_status() SIM
>>>> inserted and
>>>> ready
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28599\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 21\r\n
>>>> ofonod[31135]: src/voicecall.c:ecc_g2_read_cb() 0
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28599\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 21\r\n
>>>> ofonod[31135]: src/voicecall.c:ecc_g3_read_cb() 0
>>>> ofonod[31135]: Modem: > AT+CRSM=192,12258\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>> 144,0,0000000A2FE204000FF04401020000\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_info_cb()
>>>> crsm_info_cb: 90,
>>>> 00, 15
>>>> ofonod[31135]: Modem: > AT+CRSM=176,12258,0,0,10\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>> 144,0,989301070051275811F8\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_read_cb()
>>>> crsm_read_cb: 90,
>>>> 00, 10
>>>> ofonod[31135]: src/simfs.c:sim_fs_op_read_block_cb() bufoff: 0,
>>>> dataoff: 0, tocopy: 10
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28421\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>> 144,0,000000056F05040001F04401020000\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_info_cb()
>>>> crsm_info_cb: 90,
>>>> 00, 15
>>>> ofonod[31135]: Modem: > AT+CRSM=176,28421,0,0,5\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM: 144,0,0201000306\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_read_cb()
>>>> crsm_read_cb: 90,
>>>> 00, 5
>>>> ofonod[31135]: src/simfs.c:sim_fs_op_read_block_cb() bufoff: 0,
>>>> dataoff: 0, tocopy: 5
>>>> ofonod[31135]: Modem: > AT+CRSM=192,12037\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 21\r\n
>>>> ofonod[31135]: Modem: > AT+CPIN?\r
>>>> ofonod[31135]: Modem: < \r\n+CPIN: READY\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_cpin_cb() crsm_pin_cb: READY
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_pin_retries_query()
>>>> ofonod[31135]: Modem: > AT+CPINR\r
>>>> ofonod[31135]: Modem: < \r\nERROR\r\n
>>>> ofonod[31135]: Querying remaining pin retries failed
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28590\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>> 144,0,000000016FAE040004F04401020000\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_info_cb()
>>>> crsm_info_cb: 90,
>>>> 00, 15
>>>> ofonod[31135]: Modem: > AT+CRSM=176,28590,0,0,1\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM: 144,0,03\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_read_cb()
>>>> crsm_read_cb: 90,
>>>> 00, 1
>>>> ofonod[31135]: src/simfs.c:sim_fs_op_read_block_cb() bufoff: 0,
>>>> dataoff: 0, tocopy: 1
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28589\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>> 144,0,000000036FAD040004F04401020000\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_info_cb()
>>>> crsm_info_cb: 90,
>>>> 00, 15
>>>> ofonod[31135]: Modem: > AT+CRSM=176,28589,0,0,3\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM: 144,0,00FFFF\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_read_cb()
>>>> crsm_read_cb: 90,
>>>> 00, 3
>>>> ofonod[31135]: src/simfs.c:sim_fs_op_read_block_cb() bufoff: 0,
>>>> dataoff: 0, tocopy: 3
>>>> ofonod[31135]: EFad should contain at least four bytes
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28438\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 21\r\n
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28472\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>> 144,0,0000000C6F38040014F04401020000\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_info_cb()
>>>> crsm_info_cb: 90,
>>>> 00, 15
>>>> ofonod[31135]: Modem: > AT+CRSM=176,28472,0,0,12\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>> 144,0,FF3CFF0F0F003C03000C0000\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_read_cb()
>>>> crsm_read_cb: 90,
>>>> 00, 12
>>>> ofonod[31135]: src/simfs.c:sim_fs_op_read_block_cb() bufoff: 0,
>>>> dataoff: 0, tocopy: 12
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28474\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>> 144,0,00001C526F3A040011F0220502011D\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_info_cb()
>>>> crsm_info_cb: 90,
>>>> 00, 15
>>>> ofonod[31135]: Modem: > AT+CIMI\r
>>>> ofonod[31135]: Modem: < \r\n222109001113943\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_cimi_cb() cimi_cb:
>>>> 222109001113943
>>>> ofonod[31135]: src/modem.c:modem_change_state() old state: 1, new
>>>> state: 2
>>>> ofonod[31135]: plugins/telit.c:telit_post_sim() 0x99a81c8
>>>> ofonod[31135]: Example History Probe for modem: 0x99a81c8
>>>> ofonod[31135]: Example Network Time Probe for modem: 0x99a81c8
>>>> ofonod[31135]: src/modem.c:modem_change_state() old state: 2, new
>>>> state: 3
>>>> ofonod[31135]: plugins/telit.c:telit_post_online() 0x99a81c8
>>>> ofonod[31135]: drivers/atmodem/gprs-context.c:at_gprs_context_probe()
>>>> ofonod[31135]: Modem: > AT+CSMS=?\r
>>>> ofonod[31135]: Registered handle for channel 13: 0x10006
>>>> ofonod[31135]: Modem: < \r\n+CSMS: (0,1)\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sms.c:at_csms_query_cb() CSMS query
>>>> parsed successfully
>>>> ofonod[31135]: Modem: > AT+CREG=?\r
>>>> ofonod[31135]: Modem: < \r\n+CREG: (0-2)\r\n\r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CSCS?\r
>>>> ofonod[31135]: Modem: < \r\n+CSCS: "IRA"\r\n\r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CUSD=1\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CAOC=2\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CCWE=1\r
>>>> ofonod[31135]: Modem: < \r\nERROR\r\n
>>>> ofonod[31135]: Modem: > AT+CGDCONT=?\r
>>>> ofonod[31135]: Modem: < \r\n+CGDCONT:
>>>> (1-16),"IP",,,(0-2),(0-4)\r\n+CGDCONT:
>>>> (1-16),"PPP",,,(0-2),(0-4)\r\n+CGDCONT:
>>>> (1-16),"IPV6",,,(0-2),(0-4)\r\n\r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28480\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>> 144,0,000000576F40040011F0440502011D\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_info_cb()
>>>> crsm_info_cb: 90,
>>>> 00, 15
>>>> ofonod[31135]: Modem: > AT+CSMS=1\r
>>>> ofonod[31135]: Modem: < \r\n+CSMS: 1,1,1\r\n\r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CREG=2\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CGREG=?\r
>>>> ofonod[31135]: Modem: < \r\n+CGREG: (0-2)\r\n\r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CRSM=178,28480,1,4,29\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>>
>>>> 144,0,FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r\n\r\nOK\r\n
>>>>
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_read_cb()
>>>> crsm_read_cb: 90,
>>>> 00, 29
>>>> ofonod[31135]: Modem: > AT+CSMS?\r
>>>> ofonod[31135]: Modem: < \r\n+CSMS: 1,1,1,1\r\n\r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CIND=?\r
>>>> ofonod[31135]: Modem: < \r\n+CIND:
>>>>
>>>> (("battchg",(0-5,99)),("signal",(0-7,99)),("service",(0,1)),("sounder",(0,1)),("message",(0,1)),("call",(0,1)),("roam",(0,1)),("smsfull",(0,1)),("rssi",(0-5,99)))\r\n\r\nOK\r\n
>>>>
>>>> ofonod[31135]: src/sim.c:ofono_sim_add_spn_watch() 0x99aa0d8
>>>> ofonod[31135]: Modem: > AT+CGREG=2\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CGAUTO=0\r
>>>> ofonod[31135]: Modem: < \r\nERROR\r\n
>>>> ofonod[31135]: Modem: > AT+CGEREP=2,1\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: src/network.c:__ofono_netreg_add_status_watch()
>>>> 0x99a6748
>>>> ofonod[31135]: Modem: > AT+CRSM=178,28480,2,4,29\r
>>>> ofonod[31135]: Registered handle for channel 1: 0x10007
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>>
>>>> 144,0,FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r\n\r\nOK\r\n
>>>>
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_read_cb()
>>>> crsm_read_cb: 90,
>>>> 00, 29
>>>> ofonod[31135]: Modem: > AT+CMGF=?\r
>>>> ofonod[31135]: Modem: < \r\n+CMGF: (0,1)\r\n\r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CMER=3,0,0,1\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 4\r\n
>>>> ofonod[31135]: Modem: > AT+CREG?\r
>>>> ofonod[31135]: Modem: < \r\n+CREG: 2,1,"3AF2","04DE9AE"\r\n\r\nOK\r\n
>>>> ofonod[31135]: src/network.c:ofono_netreg_status_notify() /telit_0
>>>> status 1 tech -1
>>>> ofonod[31135]: src/gprs.c:netreg_status_changed() 1
>>>> ofonod[31135]: Modem: > AT+CPSB=1\r
>>>> ofonod[31135]: Modem: < \r\nERROR\r\n
>>>> ofonod[31135]: Modem: > AT+CRSM=178,28480,3,4,29\r
>>>> ofonod[31135]: Modem: < \r\n+CRSM:
>>>>
>>>> 144,0,FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r\n\r\nOK\r\n
>>>>
>>>> ofonod[31135]: drivers/atmodem/sim.c:at_crsm_read_cb()
>>>> crsm_read_cb: 90,
>>>> 00, 29
>>>> ofonod[31135]: Modem: > AT+CPMS=?\r
>>>> ofonod[31135]: Modem: < \r\n+CPMS:
>>>> ("ME","SM","SR"),("SM","ME"),("SM","ME")\r\n\r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+COPS=3,2\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+COPS?\r
>>>> ofonod[31135]: Modem: < \r\n+COPS: 0,2,"22210",2\r\n\r\nOK\r\n
>>>> ofonod[31135]:
>>>> drivers/atmodem/network-registration.c:cops_numeric_cb()
>>>> Cops numeric got mcc: 222, mnc: 10
>>>> ofonod[31135]: Modem: > AT+CIND?\r
>>>> ofonod[31135]: Modem: < \r\n+CIND: 5,0,1,0,0,0,0,0,3\r\n\r\nOK\r\n
>>>> ofonod[31135]: src/network.c:ofono_netreg_strength_notify()
>>>> strength 60
>>>> ofonod[31135]: Modem: > AT+CGATT=1\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: src/gprs.c:gprs_attach_callback() /telit_0 error = 0
>>>> ofonod[31135]: Modem: > AT+CIND?\r
>>>> ofonod[31135]: Modem: < \r\n+CIND: 5,0,1,0,0,0,0,0,3\r\n\r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CRSM=192,20256\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 21\r\n
>>>> ofonod[31135]: Modem: > AT+CMGF=0\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+COPS=3,0\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+COPS?\r
>>>> ofonod[31135]: Modem: < \r\n+COPS: 0,0,"vodafone IT",2\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/network-registration.c:cops_cb()
>>>> cops_cb: vodafone IT, 222 10 2
>>>> ofonod[31135]: src/network.c:current_operator_callback() 0x99a6748,
>>>> (nil)
>>>> ofonod[31135]: src/gprs.c:netreg_status_changed() 1
>>>> ofonod[31135]: Modem: > AT+CGREG?\r
>>>> ofonod[31135]: Modem: < \r\n+CGREG: 2,1,"3AF2","04DE9AE"\r\n\r\nOK\r\n
>>>> ofonod[31135]: src/gprs.c:registration_status_cb() /telit_0 error 0
>>>> status
>>>> 1
>>>> ofonod[31135]: src/gprs.c:ofono_gprs_status_notify() /telit_0 status 1
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28618\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 22\r\n
>>>> ofonod[31135]: Unable to read waiting messages numbers from SIM
>>>> ofonod[31135]: Modem: > AT+CPMS="ME","ME","ME"\r
>>>> ofonod[31135]: Modem: < \r\n+CPMS: 0,50,0,50,0,50\r\n\r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28617\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 22\r\n
>>>> ofonod[31135]: Unable to read mailbox identifies from SIM
>>>> ofonod[31135]: Modem: > AT+CNMI=?\r
>>>> ofonod[31135]: Modem: < \r\n+CNMI:
>>>> (0-3),(0-3),(0,2),(0-2),(0,1)\r\n\r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sms.c:build_cnmi_string()
>>>> ofonod[31135]: drivers/atmodem/sms.c:construct_ack_pdu()
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28433\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 21\r\n
>>>> ofonod[31135]: src/message-waiting.c:mw_cphs_mwis_read_cb() No CPHS
>>>> MWIS
>>>> on SIM
>>>> ofonod[31135]: Modem: > AT+CNMI=2,2,2,1,0\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: src/network.c:__ofono_netreg_add_status_watch()
>>>> 0x99a6748
>>>> ofonod[31135]: src/sms.c:sms_restore_tx_queue()
>>>> ofonod[31135]: plugins/push-notification.c:sms_watch() registered
>>>> ofonod[31135]: plugins/smart-messaging.c:sms_watch() registered
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28435\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 21\r\n
>>>> ofonod[31135]: Modem: > AT+CMGL=4\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: drivers/atmodem/sms.c:at_cmgl_done()
>>>> ofonod[31135]: Modem: > AT+CGSMS=3\r
>>>> ofonod[31135]: Modem: < \r\nOK\r\n
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28613\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 22\r\n
>>>> ofonod[31135]: src/simfs.c:sim_fs_op_read_block() bufoff: 0, seekoff:
>>>> 39, toread: 17
>>>> ofonod[31135]: EFspn read successfully, but couldn't parse
>>>> ofonod[31135]: Modem: > AT+CRSM=192,28437\r
>>>> ofonod[31135]: Modem: < \r\n+CME ERROR: 21\r\n
>>>>
>>>> A problem I see is that the test is not passing at second and
>>>> subsequent tries if I do restart ofono. At second run, I don't see the
>>>> whole thing evolving and bringing up modem services/interfaces the
>>>> same way. To me it looks like, without power cycling the modem, I
>>>> cannot stop and restart ofono and obtain the same behaviour.
>>>> Sounds like, at cycles +CFUN=4 --> +CFUN=1 subsequent to the first,
>>>> those #QSS=2 and #QSS=3 notifications are not coming from the modem:
>>>> switch_sim_state_status() is not called and no sim readyness
>>>> notification is making the thing evolve.
>>>
>>> From your debug output below:
>>>
>>> ...
>>>
>>> ofonod[31145]: Modem: > AT#QSS?\r
>>> ofonod[31145]: Modem: < \r\n#QSS: 2,3\r\n\r\nOK\r\n
>>> ofonod[31145]: plugins/telit.c:telit_qss_cb() 0x912a1c8
>>> ofonod[31145]: plugins/telit.c:switch_sim_state_status() 0x912a1c8
>>> ofonod[31145]: plugins/telit.c:switch_sim_state_status() SIM
>>> inserted and
>>> ready
>>> ...
>>>
>>> In cfun_enable_cb() the current SIM state is queried and the modem
>>> answeres
>>> with #QSS: 2,3
>>> which means that SIM state notifications are enabled (2) and the SIM is
>>> inserted and ready (3).
>>>
>>> Strangely, the modem answers with '+CME ERROR: 10' (meaning no SIM
>>> inserted)
>>> on a following AT+CPIN?
>>>
>>>
>>> ofonod[31145]: Modem: > AT+CPIN?\r
>>> ofonod[31145]: Modem: < \r\n+CME ERROR: 10\r\n
>> Is this really strange? According to your comment above, in my
>> understanding, querying +CPIN? before issuing +CFUN=1 is expected to
>> fail (SIM deactivated).
>> It is what I always see with this simple sequence from terminal (after
>> modem reset):
> It is strange for me that AT#QSS? returns #QSS: 2,3 after a AT+CFUN=4
> and before AT+CFUN=1
> If AT+CFUN=4 deactivates the SIM (whatever that should mean exactly)
> then why does the modem say that the SIM is ready to use?
>
>>
>> at+cpin?
>> +CPIN: READY
>>
>> OK
>> at+cfun=4
>> OK
>> at+cpin?
>> ERROR
>> at+cpin?
>> ERROR
>> at+cfun=1
>> OK
>> at+cpin?
>> +CPIN: READY
>>
>> OK
> That is what I would expect according to the AT reference manual.
>>
>> The point here seems more related with #QSS not coming out after
>> +CFUN=1...
>> Are you using MDM or AUX serial port? If you use the upstream telit
>> driver I suppose MDM is used. I'm seeing something strange while
>> testing sms sending too: looks like the modem is spitting out some
>> notifications from the AUX port and some others from MDM... I'm
>> looking into it right now.
> In this case we are not using the upstream ofono. We use both ports,
> one for the AT chat and one for the data (ppp) like more and more
> other plugins now do.
> We also have some hardware related patches to switch between two SIM
> slots which most likely cannot be committed. I am currently preparing
> some patches but I have to extract them first from our code.
>
>>
>> BTW, what firmware revision is your UC864-G running?
> Ofono says: Revision = 08.01.107
>
> We had some problems with our early development board which never
> emitted #QSS: 3,
> that's why we didn't use the code from the patch in the first place.
>
>
Hi Andrea,
our UC864-G correctly reports '#QSS: 2,0' on 'AT#QSS?' in
cfun_enable_cb() - after 'AT+CFUN=4'.
As the SIM is deactivated at that place this query seems to be senseless
there.
It only make sense when online state is entered, i.e. after a positive
reply on 'AT+CFUN=1'.
Regards,
Christopher
--
Scanned by MailScanner.
next prev parent reply other threads:[~2012-07-27 11:52 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-26 13:36 [PATCH] telit: notify sim inserted when sim ready Christopher Vogl
2012-07-26 15:19 ` Andrea Galbusera
2012-07-27 9:37 ` Christopher Vogl
2012-07-27 9:58 ` Andrea Galbusera
2012-07-27 10:54 ` Christopher Vogl
2012-07-27 11:52 ` Christopher Vogl [this message]
2012-07-27 12:39 ` Andrea Galbusera
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50128109.6030208@hale.at \
--to=christopher.vogl@hale.at \
--cc=ofono@ofono.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.