Hi Denis, I did a test with a Huawei EC152 cdma dongle in India with this patch. Please find below the oFono logs. It appears that the service domain is reported in the ^SYSINFO answer as 'CDMA not supported' whereas the cdma data connection could be established successfully. ofonod[11013]: Modem: > AT^SYSINFO\r ofonod[11013]: Modem: < \r\n^SYSINFO:0,255,0,0,0\r\n\r\nOK\r\n ofonod[11013]: drivers/huaweicdmamodem/network-registration.c:sysinfo_cb() 0, 255, 0 The issue is that the switch case in the function 'parse_sysinfo' is overiding the status returned by the field srv_status by the status returned by the field srv_domain. Therefore, the status returned by the function 'parse_sysinfo' is always "CDMA_NETWORK_REGISTRATION_STATUS_NOT_REGISTERED'. In practice, I don't think we need to handle the srv_domain field. Perhaps, do you have some background here you can share? I need also to raise another issue which is more likely a timing issue. Until now, the cdma connection could be initiated as soon as the cdma.ConnectionManager interface was registered in ofono.org. For cdma, as only few AT commands are exchanged, this can happen quite immediately and is likely to fail since we are not registered to the network. Now that the cdma netreg atom is available, could we think indeed to register ConMann to the cdma netreg status change but also to trigger the cdma cellular network creation once the status becomes 'registered'? That said, I don't know if this status is sufficiently representative like the 'Attached' state for gprs. For gprs precisely, can we think to adopt the same mechanism ? I mean, add the cellular networks (corresponding to the gprs contexts) only once gprs is attached ? This could be helpful in case of automatic reconnection after plug-in the 3G dongle (it avoids to perform the automatic connection too early). Regards, Philippe. ofonod[11596]: src/modem.c:ofono_modem_create() name: (null), type: huaweicdma ofonod[11596]: src/modem.c:set_modem_property() modem 0x9a88078 property Path ofonod[11596]: src/modem.c:set_modem_property() modem 0x9a88078 property Registered ofonod[11596]: plugins/udev.c:add_modem() /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3/2-1.3:1.1/ttyUSB1/tty/ttyUSB1 (huaweicdma) ofonod[11596]: plugins/udev.c:add_huawei() modem 0x9a88078 ofonod[11596]: src/modem.c:get_modem_property() modem 0x9a88078 property ModemRegistered ofonod[11596]: src/modem.c:get_modem_property() modem 0x9a88078 property PcuiRegistered ofonod[11596]: src/modem.c:get_modem_property() modem 0x9a88078 property Path ofonod[11596]: plugins/udev.c:add_modem() /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3/2-1.3:1.2/ttyUSB2/tty/ttyUSB2 (huaweicdma) ofonod[11596]: plugins/udev.c:add_huawei() modem 0x9a88078 ofonod[11596]: src/modem.c:get_modem_property() modem 0x9a88078 property ModemRegistered ofonod[11596]: src/modem.c:get_modem_property() modem 0x9a88078 property PcuiRegistered ofonod[11596]: src/modem.c:set_modem_property() modem 0x9a88078 property Pcui ofonod[11596]: src/modem.c:set_modem_property() modem 0x9a88078 property PcuiRegistered ofonod[11596]: plugins/udev.c:add_huawei() /dev/ttyUSB2 PCui ofonod[11596]: src/modem.c:get_modem_property() modem 0x9a88078 property Path ofonod[11596]: plugins/udev.c:add_modem() /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3/2-1.3:1.0/ttyUSB0/tty/ttyUSB0 (huaweicdma) ofonod[11596]: plugins/udev.c:add_huawei() modem 0x9a88078 ofonod[11596]: src/modem.c:get_modem_property() modem 0x9a88078 property ModemRegistered ofonod[11596]: src/modem.c:get_modem_property() modem 0x9a88078 property PcuiRegistered ofonod[11596]: src/modem.c:set_modem_property() modem 0x9a88078 property Modem ofonod[11596]: src/modem.c:set_modem_property() modem 0x9a88078 property ModemRegistered ofonod[11596]: plugins/udev.c:add_huawei() /dev/ttyUSB0 Modem ofonod[11596]: plugins/huaweicdma.c:huaweicdma_probe() 0x9a88078 ofonod[11596]: plugins/hfp_ag.c:modem_watch() modem: 0x9a88078, added: 1 ofonod[11596]: plugins/dun_gw.c:modem_watch() modem: 0x9a88078, added: 1 ofonod[11596]: examples/emulator.c:modem_watch() modem: 0x9a88078, added: 1 ofonod[11596]: plugins/smart-messaging.c:modem_watch() modem: 0x9a88078, added: 1 ofonod[11596]: plugins/push-notification.c:modem_watch() modem: 0x9a88078, added: 1 ofonod[11596]: plugins/huaweicdma.c:huaweicdma_enable() ofonod[11596]: src/modem.c:get_modem_property() modem 0x9a88078 property Modem ofonod[11596]: plugins/huaweicdma.c:open_device() Modem /dev/ttyUSB0 ofonod[11596]: src/modem.c:get_modem_property() modem 0x9a88078 property Pcui ofonod[11596]: plugins/huaweicdma.c:open_device() Pcui /dev/ttyUSB2 ofonod[11596]: Modem: > ATE0 &C0 +CMEE=1\r ofonod[11596]: PCUI: > ATE0 &C0 +CMEE=1\r ofonod[11596]: Modem: < \r\nOK\r\n ofonod[11596]: PCUI: < ATE0 &C0 +CMEE=1\r\r\nOK\r\n ofonod[11596]: PCUI: > AT+CFUN=1\r ofonod[11596]: PCUI: < \r\nOK\r\n ofonod[11596]: plugins/huaweicdma.c:cfun_enable() ofonod[11596]: examples/emulator.c:powered_watch() Adding modem 0x9a88078 to the list ofonod[11596]: src/modem.c:modem_change_state() old state: 0, new state: 1 ofonod[11596]: plugins/huaweicdma.c:huaweicdma_pre_sim() 0x9a88078 ofonod[11596]: src/modem.c:modem_change_state() old state: 1, new state: 2 ofonod[11596]: plugins/huaweicdma.c:huaweicdma_post_sim() 0x9a88078 ofonod[11596]: Example History Probe for modem: 0x9a88078 ofonod[11596]: Example Network Time Probe for modem: 0x9a88078 ofonod[11596]: src/modem.c:set_online() modem->online change 1 ofonod[11596]: src/modem.c:set_online() ofono_dbus_signal_property_changed ofonod[11596]: src/modem.c:modem_change_state() old state: 2, new state: 3 ofonod[11596]: plugins/huaweicdma.c:huaweicdma_post_online() 0x9a88078 ofonod[11596]: src/cdma-netreg.c:ofono_cdma_netreg_create() ofonod[11596]: drivers/huaweicdmamodem/network-registration.c:huaweicdma_netreg_probe() ofonod[11596]: src/cdma-connman.c:ofono_cdma_connman_create() ofonod[11596]: drivers/cdmamodem/connman.c:cdma_connman_probe() ofonod[11596]: PCUI: > AT+GCAP\r ofonod[11596]: Modem: > AT^SYSINFO\r ofonod[11596]: Modem: < \r\n^SYSINFO:0,255,0,0,0\r\n\r\nOK\r\n ofonod[11596]: drivers/huaweicdmamodem/network-registration.c:sysinfo_cb() 0, 255, 0 ofonod[11596]: src/cdma-netreg.c:ofono_cdma_netreg_status_notify() ofonod[11596]: PCUI: < \r\n+GCAP: +CIS707-A,CIS-856-A,+MS, +ES, +DS, +FCLASS\r\n\r\nOK\r\n ofonod[11596]: Modem: > AT&C0\r ofonod[11596]: PCUI: > AT+GMI\r ofonod[11596]: Modem: < \r\nOK\r\n ofonod[11596]: drivers/cdmamodem/connman.c:at_c0_cb() ok 1 ofonod[11596]: src/cdma-connman.c:ofono_cdma_connman_register() ofonod[11596]: PCUI: < \r\n+GMI: HUAWEI TECHNOLOGIES CO., LTD\r\n\r\nOK\r\n ofonod[11596]: PCUI: > AT+GMM\r ofonod[11596]: PCUI: < \r\nERROR\r\n ofonod[11596]: PCUI: > AT+GMR\r ofonod[11596]: PCUI: < \r\nTCPU_HWEC152DT01\r\n\r\nOK\r\n ofonod[11596]: PCUI: > AT+GSN\r ofonod[11596]: PCUI: < \r\n+GSN:80e75f34\r\n\r\nOK\r\n ofonod[11596]: Modem: < \r\n^SIMST:240\r\n ofonod[11596]: PCUI: < \r\n^SIMST:240\r\n ofonod[11596]: Modem: < \r\n^RSSILVL:80\r\n ofonod[11596]: PCUI: < \r\n^RSSILVL:80\r\n ofonod[11596]: Modem: < \r\n^MODE: 2\r\r\n\r\r\n^RSSILVL:80\r\r\n\r\r\n^HRSSILVL:0\r\n ofonod[11596]: PCUI: < \r\n^MODE: 2\r\r\n\r\r\n^RSSILVL:80\r\r\n\r\r\n^HRSSILVL:0\r\n ofonod[11596]: Modem: > AT^SYSINFO\r ofonod[11596]: Modem: < \r\n^SYSINFO:2,255,0,2,240\r\n\r\nOK\r\n ofonod[11596]: drivers/huaweicdmamodem/network-registration.c:sysinfo_cb() 2, 255, 0 ofonod[11596]: src/cdma-netreg.c:ofono_cdma_netreg_status_notify() ofonod[11596]: Modem: < \r\n^RSSILVL:20\r\n ofonod[11596]: PCUI: < \r\n^RSSILVL:20\r\n ofonod[11596]: Modem: < \r\n^RSSILVL:80\r\n\r\n^HRSSILVL:20\r\n\r\n^MODE: 8\r\r\n\r\r\n^RSSILVL:80\r\r\n\r\r\n^HRSSILVL:40\r\n ofonod[11596]: PCUI: < \r\n^RSSILVL:80\r\n\r\n^HRSSILVL:20\r\n ofonod[11596]: Modem: > AT^SYSINFO\r ofonod[11596]: Modem: < \r\n^HRSSILVL:40\r\n ofonod[11596]: PCUI: < \r\n^MODE: 8\r\r\n\r\r\n^RSSILVL:80\r\r\n\r\r\n^HRSSILVL:40\r\n ofonod[11596]: Modem: < \r\n^SYSINFO:2,255,0,8,240\r\n\r\nOK\r\n ofonod[11596]: drivers/huaweicdmamodem/network-registration.c:sysinfo_cb() 2, 255, 0 ofonod[11596]: src/cdma-netreg.c:ofono_cdma_netreg_status_notify() ofonod[11596]: PCUI: < \r\n^HRSSILVL:40\r\n ofonod[11596]: Modem: < \r\n^HRSSILVL:60\r\n ofonod[11596]: PCUI: < \r\n^HRSSILVL:60\r\n ofonod[11596]: Modem: < \r\n^RSSILVL:20\r\n ofonod[11596]: PCUI: < \r\n^RSSILVL:20\r\n ofonod[11596]: Modem: < \r\n^RSSILVL:80\r\n\r\n^HRSSILVL:80\r\n ofonod[11596]: PCUI: < \r\n^RSSILVL:80\r\n\r\n^HRSSILVL:80\r\n ofonod[11596]: Modem: < \r\n^MODE: 4\r\r\n\r\r\n^RSSILVL:0\r\r\n\r\r\n^HRSSILVL:80\r\n ofonod[11596]: PCUI: < \r\n^MODE: 4\r\r\n\r\r\n^RSSILVL:0\r\r\n\r\r\n^HRSSILVL:80\r\n ofonod[11596]: Modem: > AT^SYSINFO\r ofonod[11596]: Modem: < \r\n^SYSINFO:2,255,0,4,240\r\n\r\nOK\r\n ofonod[11596]: drivers/huaweicdmamodem/network-registration.c:sysinfo_cb() 2, 255, 0 fonod[11596]: src/cdma-netreg.c:ofono_cdma_netreg_status_notify() ofonod[11596]: Modem: < \r\n^MODE: 4\r\r\n\r\r\n^RSSILVL:0\r\r\n\r\r\n^HRSSILVL:80\r\n ofonod[11596]: PCUI: < \r\n^MODE: 4\r\r\n\r\r\n^RSSILVL:0\r\r\n\r\r\n^HRSSILVL:80\r\n ofonod[11596]: Modem: > AT^SYSINFO\r ofonod[11596]: Modem: < \r\n^SYSINFO:2,255,0,4,240\r\n\r\nOK\r\n ofonod[11596]: drivers/huaweicdmamodem/network-registration.c:sysinfo_cb() 2, 255, 0 ofonod[11596]: src/cdma-netreg.c:ofono_cdma_netreg_status_notify() ofonod[11596]: Modem: < \r\n^RSSILVL:80\r\n\r\n^MODE: 8\r\r\n\r\r\n^RSSILVL:80\r\r\n\r\r\n^HRSSILVL:80\r\n ofonod[11596]: PCUI: < \r\n^RSSILVL:80\r\n\r\n^MODE: 8\r\r\n\r\r\n^RSSILVL:80\r\r\n\r\r\n^HRSSILVL:80\r\n ofonod[11596]: Modem: > AT^SYSINFO\r ofonod[11596]: Modem: < \r\n^SYSINFO:2,255,0,8,240\r\n\r\nOK\r\n ofonod[11596]: drivers/huaweicdmamodem/network-registration.c:sysinfo_cb() 2, 255, 0 ofonod[11596]: src/cdma-netreg.c:ofono_cdma_netreg_status_notify() ofonod[11596]: Modem: < \r\n^RSSILVL:60\r\n ofonod[11596]: PCUI: < \r\n^RSSILVL:60\r\n ofonod[11596]: src/cdma-connman.c:cdma_connman_set_property() ofonod[11596]: src/cdma-connman.c:cdma_connman_set_property() ofonod[11596]: src/cdma-connman.c:cdma_connman_set_property() ofonod[11596]: src/cdma-connman.c:cdma_connman_set_property() ofonod[11596]: src/cdma-connman.c:cdma_connman_set_property() ofonod[11596]: drivers/cdmamodem/connman.c:cdma_connman_activate() ofonod[11596]: Modem: > ATD#777\r ofonod[11596]: Modem: < \r\nCONNECT\r\n ofonod[11596]: drivers/cdmamodem/connman.c:atd_cb() ok 1 ofonod[11596]: drivers/cdmamodem/connman.c:setup_ppp() ofonod[11596]: PCUI: < \r\nCONNECT\r\n ofonod[11596]: drivers/cdmamodem/connman.c:ppp_connect() ofonod[11596]: IP: 14.96.204.15 ofonod[11596]: DNS: 4.2.2.2, 4.2.2.3 ofonod[11596]: src/cdma-connman.c:activate_callback() 0x9a88880 ppp0 ofonod[11596]: src/cdma-connman.c:cdma_connman_settings_update() ofonod[11596]: src/cdma-connman.c:cdma_connman_ifupdown() ofonod[11596]: src/cdma-connman.c:cdma_connman_settings_signal() ofonod[11596]: src/cdma-connman.c:cdma_connman_settings_append_variant() ofonod[11596]: src/cdma-connman.c:cdma_connman_set_property() ofonod[11596]: drivers/cdmamodem/connman.c:cdma_connman_deactivate() ofonod[11596]: plugins/udev.c:remove_modem() /devices/virtual/net/ppp0 ofonod[11596]: PCUI: < \r\nNO CARRIER\r\n ofonod[11596]: drivers/cdmamodem/connman.c:ppp_disconnect() ofonod[11596]: src/cdma-connman.c:deactivate_callback() ofonod[11596]: src/cdma-connman.c:cdma_connman_settings_reset() ofonod[11596]: src/cdma-connman.c:cdma_connman_settings_free() ofonod[11596]: src/cdma-connman.c:cdma_connman_settings_signal() ofonod[11596]: src/cdma-connman.c:cdma_connman_settings_append_variant() ofonod[11596]: src/cdma-connman.c:cdma_connman_ifupdown() ofonod[11596]: Modem: < \r\n^RSSILVL:80\r\n ofonod[11596]: PCUI: < \r\n^RSSILVL:80\r\n ofonod[11596]: Modem: < \r\n^RSSILVL:60\r\n ofonod[11596]: PCUI: < \r\n^RSSILVL:60\r\n ofonod[11596]: Modem: < \r\n^RSSILVL:80\r\n ofonod[11596]: PCUI: < \r\n^RSSILVL:80\r\n ofonod[11596]: Modem: < \r\n^RSSILVL:60\r\n ofonod[11596]: PCUI: < \r\n^RSSILVL:60\r\n On 08/09/2011 08:31 PM, Denis Kenzior wrote: > Hi Guillaume, > > On 08/08/2011 07:13 AM, Guillaume Zajac wrote: >> From: Bertrand Aygon >> >> --- >> Makefile.am | 3 +- >> drivers/huaweicdmamodem/huaweicdmamodem.c | 3 + >> drivers/huaweicdmamodem/huaweicdmamodem.h | 3 + >> drivers/huaweicdmamodem/network-registration.c | 171 ++++++++++++++++++++++++ >> 4 files changed, 179 insertions(+), 1 deletions(-) >> create mode 100644 drivers/huaweicdmamodem/network-registration.c >> > > I applied this patch but refactored it slightly afterwards. Please > review and make sure I didn't break anything. > > Regards, > -Denis > _______________________________________________ > ofono mailing list > ofono(a)ofono.org > http://lists.ofono.org/listinfo/ofono >