SMS support through MBIM

Bjørn Mork bjorn at mork.no
Fri Jun 21 08:22:10 PDT 2013


Sending and receiving works fine with the Mediatek based D-Link DWM156-A7
as well:

ModemManager[24658]: <debug> [1371827799.183356] [mm-sms.c:207] generate_submit_pdus(): Created SMS part for singlepart SMS
ModemManager[24658]: <debug> [1371827799.183551] [mm-sms-part.c:947] mm_sms_part_get_submit_pdu(): Creating PDU for part...
ModemManager[24658]: <debug> [1371827799.183622] [mm-sms-part.c:1032] mm_sms_part_get_submit_pdu():   using GSM7 encoding...
ModemManager[24658]: <debug> [1371827799.183705] [mm-sms-part.c:1095] mm_sms_part_get_submit_pdu():   user data length is '9' septets (without UDH)
ModemManager[24658]: [/dev/cdc-wdm1] Sent message...
<<<<<< RAW:
<<<<<<   length = 80
<<<<<<   data   = 03:00:00:00:50:00:00:00:17:00:00:00:01:00:00:00:00:00:00:00:53:3F:BE:EB:14:FE:44:67:9F:90:33:A2:23:E5:6C:3F:03:00:00:00:01:00:00:00:20:00:00:00:00:00:00:00:08:00:00:00:14:00:00:00:00:01:00:08:81:74:09:00:68:00:00:09:F3:77:BB:4C:47:A7:DD:67
ModemManager[24658]: [/dev/cdc-wdm1] Sent message (translated)...
<<<<<< Header:
<<<<<<   length      = 80
<<<<<<   type        = command (0x00000003)
<<<<<<   transaction = 23
<<<<<< Fragment header:
<<<<<<   total   = 1
<<<<<<   current = 0
<<<<<< Contents:
<<<<<<   service = 'sms' (533fbeeb-14fe-4467-9f90-33a223e56c3f)
<<<<<<   cid     = 'send' (0x00000003)
<<<<<<   type    = 'set' (0x00000001)
ModemManager[24658]: [/dev/cdc-wdm1] Received message...
>>>>>> RAW:
>>>>>>   length = 52
>>>>>>   data   = 03:00:00:80:34:00:00:00:17:00:00:00:01:00:00:00:00:00:00:00:53:3F:BE:EB:14:FE:44:67:9F:90:33:A2:23:E5:6C:3F:03:00:00:00:00:00:00:00:04:00:00:00:02:00:00:00
ModemManager[24658]: [/dev/cdc-wdm1] Received message (translated)...
>>>>>> Header:
>>>>>>   length      = 52
>>>>>>   type        = command-done (0x80000003)
>>>>>>   transaction = 23
>>>>>> Fragment header:
>>>>>>   total   = 1
>>>>>>   current = 0
>>>>>> Contents:
>>>>>>   status error = 'None' (0x00000000)
>>>>>>   service      = 'sms' (533fbeeb-14fe-4467-9f90-33a223e56c3f)
>>>>>>   cid          = 'send' (0x00000003)
ModemManager[24658]: [/dev/cdc-wdm1] Received message (translated)...
>>>>>> Header:
>>>>>>   length      = 52
>>>>>>   type        = command-done (0x80000003)
>>>>>>   transaction = 23
>>>>>> Fragment header:
>>>>>>   total   = 1
>>>>>>   current = 0
>>>>>> Contents:
>>>>>>   status error = 'None' (0x00000000)
>>>>>>   service      = 'sms' (533fbeeb-14fe-4467-9f90-33a223e56c3f)
>>>>>>   cid          = 'send' (0x00000003)
ModemManager[24658]: <debug> [1371827818.311907] [mm-at-serial-port.c:408] debug_log(): (ttyUSB1): <-- '<CR><LF>+PSBEARER: 24, 0<CR><LF>'
ModemManager[24658]: [/dev/cdc-wdm1] Received message...
>>>>>> RAW:
>>>>>>   length = 52
>>>>>>   data   = 07:00:00:80:34:00:00:00:00:00:00:00:01:00:00:00:00:00:00:00:53:3F:BE:EB:14:FE:44:67:9F:90:33:A2:23:E5:6C:3F:05:00:00:00:08:00:00:00:02:00:00:00:02:00:00:00
ModemManager[24658]: [/dev/cdc-wdm1] Received message (translated)...
>>>>>> Header:
>>>>>>   length      = 52
>>>>>>   type        = indicate-status (0x80000007)
>>>>>>   transaction = 0
>>>>>> Fragment header:
>>>>>>   total   = 1
>>>>>>   current = 0
>>>>>> Contents:
>>>>>>   service = 'sms' (533fbeeb-14fe-4467-9f90-33a223e56c3f)
>>>>>>   cid     = 'message-store-status' (0x00000005)
ModemManager[24658]: [/dev/cdc-wdm1] Received message (translated)...
>>>>>> Header:
>>>>>>   length      = 52
>>>>>>   type        = indicate-status (0x80000007)
>>>>>>   transaction = 0
>>>>>> Fragment header:
>>>>>>   total   = 1
>>>>>>   current = 0
>>>>>> Contents:
>>>>>>   service = 'sms' (533fbeeb-14fe-4467-9f90-33a223e56c3f)
>>>>>>   cid     = 'message-store-status' (0x00000005)
ModemManager[24658]: <debug> [1371827832.380928] [mm-broadband-modem-mbim.c:1746] sms_notification(): Received flash message: 'new-message'
ModemManager[24658]: <debug> [1371827832.381076] [mm-broadband-modem-mbim.c:1711] sms_notification_read_alert_sms(): Reading flash SMS at index '2'
ModemManager[24658]: [/dev/cdc-wdm1] Sent message...
<<<<<< RAW:
<<<<<<   length = 60
<<<<<<   data   = 03:00:00:00:3C:00:00:00:18:00:00:00:01:00:00:00:00:00:00:00:53:3F:BE:EB:14:FE:44:67:9F:90:33:A2:23:E5:6C:3F:02:00:00:00:00:00:00:00:0C:00:00:00:00:00:00:00:01:00:00:00:02:00:00:00
ModemManager[24658]: [/dev/cdc-wdm1] Sent message (translated)...
<<<<<< Header:
<<<<<<   length      = 60
<<<<<<   type        = command (0x00000003)
<<<<<<   transaction = 24
<<<<<< Fragment header:
<<<<<<   total   = 1
<<<<<<   current = 0
<<<<<< Contents:
<<<<<<   service = 'sms' (533fbeeb-14fe-4467-9f90-33a223e56c3f)
<<<<<<   cid     = 'read' (0x00000002)
<<<<<<   type    = 'query' (0x00000000)
ModemManager[24658]: [/dev/cdc-wdm1] Received message...
>>>>>> RAW:
>>>>>>   length = 264
>>>>>>   data   = 03:00:00:80:08:01:00:00:18:00:00:00:01:00:00:00:00:00:00:00:53:3F:BE:EB:14:FE:44:67:9F:90:33:A2:23:E5:6C:3F:02:00:00:00:00:00:00:00:D8:00:00:00:00:00:00:00:01:00:00:00:10:00:00:00:C8:00:00:00:02:00:00:00:00:00:00:00:10:00:00:00:23:00:00:00:06:91:74:09:00:12:00:04:0A:91:74:74:09:00:68:00:00:31:60:12:71:71:90:80:0B:C8:72:1A:84:2E:A7:41:E8:72:1A:F0:5C:11:00:00:5C:B1:43:00:00:00:00:00:E0:DB:CC:F0:01:00:00:00:54:E7:CC:F0:04:00:00:00:00:00:00:00:44:76:BB:F0:00:00:00:00:F6:6F:BD:F0:74:E5:0A:00:00:00:00:00:1F:01:00:60:0C:FC:CC:F0:38:39:43:00:8C:FD:CC:F0:3E:00:00:00:5C:B1:43:00:44:76:BB:F0:56:00:00:00:AC:FB:42:00:5C:B1:43:00:5C:11:00:00:56:00:00:00:00:B7:00:00:3E:00:00:00:31:5B:0C:00:E0:DB:CC:F0:00:FC:CC:F0:00:00:00:00:10:00:00:00:A6:91:BC:F0:48:FD:42:00:00:00:00:00:00:FC:CC:F0:01:00:00:00
ModemManager[24658]: [/dev/cdc-wdm1] Received message (translated)...
>>>>>> Header:
>>>>>>   length      = 264
>>>>>>   type        = command-done (0x80000003)
>>>>>>   transaction = 24
>>>>>> Fragment header:
>>>>>>   total   = 1
>>>>>>   current = 0
>>>>>> Contents:
>>>>>>   status error = 'None' (0x00000000)
>>>>>>   service      = 'sms' (533fbeeb-14fe-4467-9f90-33a223e56c3f)
>>>>>>   cid          = 'read' (0x00000002)
ModemManager[24658]: [/dev/cdc-wdm1] Received message (translated)...
>>>>>> Header:
>>>>>>   length      = 264
>>>>>>   type        = command-done (0x80000003)
>>>>>>   transaction = 24
>>>>>> Fragment header:
>>>>>>   total   = 1
>>>>>>   current = 0
>>>>>> Contents:
>>>>>>   status error = 'None' (0x00000000)
>>>>>>   service      = 'sms' (533fbeeb-14fe-4467-9f90-33a223e56c3f)
>>>>>>   cid          = 'read' (0x00000002)
ModemManager[24658]: <debug> [1371827832.411778] [mm-sms-part.c:519] mm_sms_part_new_from_binary_pdu(): Parsing PDU (2)...
ModemManager[24658]: <debug> [1371827832.411900] [mm-sms-part.c:548] mm_sms_part_new_from_binary_pdu():   SMSC address parsed: '+4790002100'
ModemManager[24658]: <debug> [1371827832.412013] [mm-sms-part.c:561] mm_sms_part_new_from_binary_pdu():   Deliver type PDU detected
ModemManager[24658]: <debug> [1371827832.412123] [mm-sms-part.c:622] mm_sms_part_new_from_binary_pdu():   Number parsed: '+4747900086'
ModemManager[24658]: <debug> [1371827832.412234] [mm-sms-part.c:726] mm_sms_part_new_from_binary_pdu():   PID: 0
ModemManager[24658]: <debug> [1371827832.412344] [mm-sms-part.c:737] mm_sms_part_new_from_binary_pdu():   user data encoding is GSM7
ModemManager[24658]: <debug> [1371827832.412452] [mm-sms-part.c:765] mm_sms_part_new_from_binary_pdu():   user data length: 11 elements
ModemManager[24658]: <debug> [1371827832.412561] [mm-sms-part.c:771] mm_sms_part_new_from_binary_pdu():   user data length: 10 bytes
ModemManager[24658]: <debug> [1371827832.412671] [mm-sms-part.c:846] mm_sms_part_new_from_binary_pdu(): Decoding SMS text with '11' elements
ModemManager[24658]: <debug> [1371827832.412780] [mm-sms-part.c:244] sms_decode_text(): Converting SMS part text from GSM7 to UTF8...
ModemManager[24658]: <debug> [1371827832.412899] [mm-sms-part.c:247] sms_decode_text():    Got UTF-8 text: 'Hei hei hei'
ModemManager[24658]: <debug> [1371827832.413010] [mm-broadband-modem-mbim.c:2406] add_sms_part(): Correctly parsed PDU (2)
ModemManager[24658]: <debug> [1371827832.413157] [mm-sms-list.c:382] mm_sms_list_take_part(): SMS part at 'mt/2' is from a singlepart SMS
ModemManager[24658]: <debug> [1371827832.413739] [mm-iface-modem-messaging.c:500] sms_added(): Added received SMS at '/org/freedesktop/ModemManager1/SMS/1'



Bjørn


More information about the libmbim-devel mailing list