On Thu, May 19, 2011 at 11:00 PM, Gerd Bavendiek <gerd.bavend...@googlemail.com> wrote: > I have a ID 1199:6832 Sierra Wireless, Inc. MC8780 Device. > Unfortunately NetworkManager in Ubuntu 9.10 Karmic > was the last version I could use the device with. I recently checked > Ubuntu 11.04 Natty (coming with NetworkManager version > 0.8.3.998). This too does not work, forcing me to stay with Karmic. [...] > All the details are here: [...] > Is there anything I can do (besides from learning to hack at > NetworkManager ...) ?
Hi, I 'm not a NetworkManager dev, just a fellow ubuntu user :) >From a cursory reading of the bug reports you cited it seems like some sierra modems crash when ModemManager sends CFUN=1 to them. Can you help verify if this is indeed the case with yours as well? I put a version of natty's modemmanager with the attached patch applied in my ppa. So, the only thing you need to do to test is: sudo add-apt-repository ppa:pktoss/ppa sudo apt-get update sudo apt-get install modemmanager restart networkmanager/modemmanager or to be 100% sure you can just reboot. Test to see if your device works now sudo add-apt-repository -r ppa:pktoss/ppa sudo apt-get update (The last 2 steps are in order to remove my ppa to avoid it breaking your system with my other experimental stuff). Alternatively you can just build modemmanager with the attached patch applied by yourself. If the patched modemmanager works, then please say it so that the appropriate quirk for your device can be added. Thanks, Pantelis
Index: modemmanager-0.4+git.20110124t203624.00b6cce/plugins/mm-modem-sierra-gsm.c =================================================================== --- modemmanager-0.4+git.20110124t203624.00b6cce.orig/plugins/mm-modem-sierra-gsm.c 2011-05-20 08:23:29.908008899 +0300 +++ modemmanager-0.4+git.20110124t203624.00b6cce/plugins/mm-modem-sierra-gsm.c 2011-05-20 08:32:49.606784301 +0300 @@ -638,6 +638,32 @@ } static void +set_property (GObject *object, guint prop_id, + const GValue *value, GParamSpec *pspec) +{ + /* gobject does not like to just have get_property and seems to + * to not honour our overriden properties ... keep this as an empty + * func around */ +} + +static void +get_property (GObject *object, guint prop_id, + GValue *value, GParamSpec *pspec) +{ + /* At least some Sierra modems go down if you send a power up command */ + switch (prop_id) { + case MM_GENERIC_GSM_PROP_POWER_UP_CMD: + g_value_set_string (value, ""); + break; + case MM_GENERIC_GSM_PROP_POWER_DOWN_CMD: + g_value_set_string (value, ""); + break; + default: + break; + } +} + +static void mm_modem_sierra_gsm_class_init (MMModemSierraGsmClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); @@ -653,5 +679,16 @@ gsm_class->get_access_technology = get_access_technology; gsm_class->get_sim_iccid = get_sim_iccid; gsm_class->do_disconnect = do_disconnect; + + object_class->get_property = get_property; + object_class->set_property = set_property; + + g_object_class_override_property (object_class, + MM_GENERIC_GSM_PROP_POWER_UP_CMD, + MM_GENERIC_GSM_POWER_UP_CMD); + + g_object_class_override_property (object_class, + MM_GENERIC_GSM_PROP_POWER_DOWN_CMD, + MM_GENERIC_GSM_POWER_DOWN_CMD); }
_______________________________________________ networkmanager-list mailing list networkmanager-list@gnome.org http://mail.gnome.org/mailman/listinfo/networkmanager-list