Hi  Aleksander and Daniele,

2017-08-17 12:14 GMT+02:00 Aleksander Morgado <[email protected]>:
> On Thu, Aug 17, 2017 at 2:45 AM, Jose, Shijo <[email protected]> wrote:
>>>> I just realized you're working with a MBIM modem. So the "No AT 
>>>> port available to run command" may actually mean there is no AT 
>>>> port detected in the modem. Are you able to see a TTY listed in the 
>>>> "System/ports" entry when you do "mmcli -m 0"?
>>
>> No, I do not see TTY listed. Snippet of "mmcli -m 0" below -
>>
>>   Hardware |   manufacturer: 'Generic'
>>            |              model: 'MBIM [1BC7:1204]'
>>            |            revision: '17.01.571'
>>            |       supported: 'gsm-umts, lte'
>>            |             current: 'gsm-umts, lte'
>>            | equipment id: '35323806113733'
>>   -------------------------
>>   System   |         device: 
>> '/sys/devices/platform/soc/soc:internal-regs/d005e000.usb/usb1/1-1'
>>            |              drivers: 'cdc_mbim'
>>            |                plugin: 'Generic'
>>            |   primary port: 'cdc-wdm0'
>>            |                  ports: 'cdc-wdm0 (mbim), wwan0 (net)'
>>
>
> So the modem doesn't expose any AT capable TTY in this mode? Is there 
> any /dev/ttyUSBX exposed that we may not be probing correctly?
>
>>
>>>Also, we'd generally discourage enabling custom AT commands in most 
>>>situations.  Instead, we'd like to learn more about your use-case and see if 
>>>we can come up with a more >generic way to do >what you want to do.  It may 
>>>well be the case that what you want to do has an analogue in the other 
>>>protocols like MBIM and QMI, and thus we could expose >that functionality 
>>>generically via D-Bus >rather than doing one-off things for specific modems.
>>
>> One of the custom (vendor) AT commands is to switch the firmware (i.e. 
>> reboot using a different firmware) on the LTE modem based on the SIM card 
>> information (operator type).  Another one (#USBCFG) is to change the USB 
>> configuration mode (such as, enable MBIM) on the modem device.
>>
>
>> Is there a configuration mode that has MBIM+AT? You may want to use 
>> that one instead of the one you currently have, which doesn't seem to 
>> expose any AT capable TTY.

>1204 composition indeed has serial ports, but the PID is missing in option 
>kernel driver.

I tried this manually -  echo 1bc7 1204 > 
/sys/bus/usb-serial/drivers/option1/new_id  -
and this exposes the tty ports for AT.

mmcli -m 0 (snippet)
  -------------------------
  System   |         device: 
'/sys/devices/platform/soc/soc:internal-regs/d005e000.usb/usb1/1-1'
           |                 drivers: 'option, cdc_mbim'
           |                   plugin: 'Generic'
           |      primary port: 'cdc-wdm0'
           |                     ports: 'ttyUSB0 (qcdm), ttyUSB3 (at), ttyUSB4 
(at), wwan0 (net), cdc-wdm0 (mbim)'
  -------------------------

However, I have to restart ModemManager with --debug option to be able to send 
AT commands via mmcli (mmcli -m 0 --command="AT"). 
Is debug mode always required?


> As for the command to reboot with a different firmware; this is 
> currently a control flow that ModemManager doesn't expect, so probably 
> the best thing would be to chain a ModemManager stop/start sequence 
> before/after the firmware update control operation (i.e. ModemManager 
> not running at all while your other programs do firmware update, 
> including any AT command required to do so).
>
>> I may also need some standard AT commands such as +CRSM to query certain SIM 
>> fields such as APN stored on the SIM,  +CGQREQ/ +CGEQOS for quality of 
>> service profile and +CGDCONTRDP for PDP Context Parameters.
>>
>
> Some of those we already expose in the interfaces, and some others we 
> could include in the interfaces if they're useful enough.
>
>> Just a note that the product is a Telit LTE modem hard-wired to a processor 
>> via USB2.0 HS. The requirement is to select the appropriate protocol 
>> (MBIM/QMI/PPP) which will provide a control and data path for one or more 
>> PDP contexts and also monitor all modem and connection statistics and share 
>> this information with other processes or update SNMP MIBs. I am also looking 
>> at way for ModemManager to share updates with other processes.
>>
>
> ModemManager has a DBus interface that other processes can use.
> libmm-glib is a client-side C library that allows applications to 
> easily integrate with that DBus interface. mmcli for example is an 
> application that uses libmm-glib to talk to ModemManager via DBus.
> ModemManager "shares" all updates with other processes via DBus, e.g.
> with DBus property updates; clients can "connect" to the "update 
> signals" and get notified right away when the properties change. I'm 
> sure there are multiple ways you could try to integrate the flow you 
> need; e.g. with a net-snmp agent monitoring ModemManager interfaces 
> and publishing your custom OIDs.
>

Thanks, I'll look into this.

Regards,
Shijo

_______________________________________________
ModemManager-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel

Reply via email to