[PATCH] huawei: fix ^ICCID parsing
Ben Chan
benchan at chromium.org
Tue Sep 24 14:30:04 PDT 2013
Seems like some modems swap digits in ^ICCID response and some don't.
We may need to compute the check digit to determine which format to
use.
On Tue, Sep 24, 2013 at 2:04 PM, Ben Chan <benchan at chromium.org> wrote:
> ^ICCID reports the ICCID without swapping characters.
> ---
> Here's what I observed on E3121, E3131, and MU736:
>
> <debug> (ttyUSB0): --> 'AT^ICCID?<CR>'
> <debug> (ttyUSB0): <-- '<CR><LF>^ICCID: 8901260463490013584<CR><LF><CR><LF>OK<CR><LF>'
>
> <debug> (ttyUSB0): --> 'AT+CRSM=176,12258,0,0,10<CR>'
> <debug> (ttyUSB0): <-- '<CR><LF>+CRSM: 144,0,"981062403694003185F4"<CR><LF><CR><LF>OK<CR><LF>'
>
> plugins/huawei/mm-sim-huawei.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/plugins/huawei/mm-sim-huawei.c b/plugins/huawei/mm-sim-huawei.c
> index 7963180..55ba839 100644
> --- a/plugins/huawei/mm-sim-huawei.c
> +++ b/plugins/huawei/mm-sim-huawei.c
> @@ -87,8 +87,7 @@ iccid_read_ready (MMBaseModem *modem,
> if (!p)
> goto error;
>
> - /* Huawei ^ICCID response must be character swapped */
> - parsed = mm_3gpp_parse_iccid (p, TRUE, NULL);
> + parsed = mm_3gpp_parse_iccid (p, FALSE, NULL);
> if (parsed) {
> g_simple_async_result_set_op_res_gpointer (simple, parsed, g_free);
> g_simple_async_result_complete (simple);
> --
> 1.8.4
>
More information about the ModemManager-devel
mailing list