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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox