summaryrefslogtreecommitdiffstats
path: root/plugins/icera.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/icera.c')
-rw-r--r--plugins/icera.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/plugins/icera.c b/plugins/icera.c
index ad006ac0..75c877a8 100644
--- a/plugins/icera.c
+++ b/plugins/icera.c
@@ -36,6 +36,7 @@
#include <ofono/devinfo.h>
#include <ofono/netreg.h>
#include <ofono/sim.h>
+#include <ofono/ussd.h>
#include <ofono/gprs.h>
#include <ofono/gprs-context.h>
#include <ofono/log.h>
@@ -141,6 +142,14 @@ static void sim_state_cb(gboolean present, gpointer user_data)
data->have_sim = present;
+ /*
+ * Ensure that the modem is using GSM character set and not IRA,
+ * otherwise weirdness with umlauts and other non-ASCII characters
+ * can result
+ */
+ g_at_chat_send(data->chat, "AT+CSCS=\"GSM\"", none_prefix,
+ NULL, NULL, NULL);
+
ofono_modem_set_powered(modem, TRUE);
}
@@ -276,6 +285,8 @@ static void icera_post_online(struct ofono_modem *modem)
DBG("%p", modem);
ofono_netreg_create(modem, OFONO_VENDOR_ICERA, "atmodem", data->chat);
+
+ ofono_ussd_create(modem, 0, "atmodem", data->chat);
}
static struct ofono_modem_driver icera_driver = {