Using-ModemManager-with-Telit-Modems-Application-Note (1)
Using-ModemManager-with-Telit-Modems-Application-Note (1)
Application Note
80455NT11505A Rev. 0 – 2016-10-14
[04.2016]
The software described in this document is the property of Telit and its licensors. It is
furnished by express license agreement only and may be used only in accordance with the
terms of such an agreement.
II. Copyrighted Materials
Components, units, or third-party products used in the product described herein are NOT
fault-tolerant and are NOT designed, manufactured, or intended for use as on-line control
equipment in the following hazardous environments requiring fail-safe controls: the
operation of Nuclear Facilities, Aircraft Navigation or Aircraft Communication Systems, Air
Traffic Control, Life Support, or Weapons Systems (High Risk Activities"). Telit and its
supplier(s) specifically disclaim any expressed or implied warranty of fitness for such High
Risk Activities.
IV. Trademarks
TELIT and the Stylized T Logo are registered in Trademark Office. All other product or
service names are the property of their respective owners.
V. Third Party Rights
The software may include Third Party Right software. In this case you agree to comply with
all terms and conditions imposed on you in respect of such separate software. In addition
to Third Party Terms, the disclaimer of warranty and limitation of liability provisions in this
License shall apply to the Third Party Right software.
TELIT HEREBY DISCLAIMS ANY AND ALL WARRANTIES EXPRESS OR IMPLIED
FROM ANY THIRD PARTIES REGARDING ANY SEPARATE FILES, ANY THIRD PARTY
MATERIALS INCLUDED IN THE SOFTWARE, ANY THIRD PARTY MATERIALS FROM
WHICH THE SOFTWARE IS DERIVED (COLLECTIVELY “OTHER CODE”), AND THE
USE OF ANY OR ALL THE OTHER CODE IN CONNECTION WITH THE SOFTWARE,
INCLUDING (WITHOUT LIMITATION) ANY WARRANTIES OF SATISFACTORY
QUALITY OR FITNESS FOR A PARTICULAR PURPOSE.
NO THIRD PARTY LICENSORS OF OTHER CODE SHALL HAVE ANY LIABILITY FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED
AND WHETHER MADE UNDER CONTRACT, TORT OR OTHER LEGAL THEORY,
ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE OTHER CODE
OR THE EXERCISE OF ANY RIGHTS GRANTED UNDER EITHER OR BOTH THIS
LICENSE AND THE LEGAL TERMS APPLICABLE TO ANY SEPARATE FILES, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
GE910-QUAD
UL865 SERIES
UE910 SERIES
HE910 SERIES
HE910 MINI PCIE
LE910 SERIES
LE920 AUTO SERIES
LE910 V2 SERIES
LE910 CAT.1 SERIES
LN930 SERIES
NOTICE 2
COPYRIGHTS ................................................................................................ 2
CONTENTS .................................................................................................... 5
1. INTRODUCTION .......................................................................... 6
2. MODEMMANAGER ..................................................................... 9
Overview....................................................................................... 9
License ......................................................................................... 9
Availability..................................................................................... 9
Resources .................................................................................... 9
4. MMCLI ........................................................................................ 11
Overview..................................................................................... 11
Checking modem availability....................................................... 11
Getting modem information ......................................................... 11
Getting sim information ............................................................... 13
Getting bearer information .......................................................... 13
[email protected]
[email protected]
[email protected]
Alternatively, use:
http://www.telit.com/support
For detailed information about where you can buy the Telit modules or for recommendations
on accessories and components visit:
http://www.telit.com
Our aim is to make this guide as helpful as possible. Keep us informed of your comments
and suggestions for improvements.
Telit appreciates feedback from the users of our information.
Caution or Warning – Alerts the user to important points about integrating the
module, if these points are not followed, the module and end user equipment
may fail or malfunction.
License
At the moment of writing ModemManager is distributed according to the GPL V2 license.
Availability
ModemManager is usually available in desktop Linux distributions. If missing, it can be
generally installed using the package manager of your distribution of choice. For example
in Ubuntu 16.04 the command apt can be used:
Source code of ModemManager is publicly available to allow custom builds if packages are
missing. Refer to the project documentation for instructions on the build process.
Resources
Following a list of useful resources:
MODEM PID
GE910-QUAD 0x0022
user@pc:~$ mmcli -L
Found 1 modems:
/org/freedesktop/ModemManager1/Modem/1 [Telit] HE910-D
This is the output when using an HE910-D; it holds four important pieces of information:
<PATH> and <INDEX> are created by ModemManager once a modem has been properly
probed and managed by the daemon. These values are important since most of mmcli
commands need them.
e.g.
user@pc:~$ mmcli -m 1
/org/freedesktop/ModemManager1/Modem/1 (device id
'c45a149f2f0b35583688d850d2fbf0955e1b322b')
-------------------------
Hardware | manufacturer: 'Telit'
| model: 'HE910'
| revision: '12.00.007'
| supported: 'gsm-umts'
| current: 'gsm-umts'
| equipment id: '357164041005136'
-------------------------
System | device: '/sys/devices/pci0000:00/0000:00:14.0/usb3/3-1/3-
1.2/3-1.2.3'
| drivers: 'cdc_acm'
80455NT11505A Rev. 0 Page 11 of 18 2016-10-14
| plugin: 'Telit'
| primary port: 'ttyACM0'
| ports: 'ttyACM3 (at), ttyACM4 (unknown), ttyACM5 (unknown),
ttyACM0 (at), ttyACM1 (unknown), ttyACM2 (unknown)'
-------------------------
Numbers | own : '912313191111'
-------------------------
Status | lock: 'none'
| unlock retries: 'sim-pin (3), sim-pin2 (3), sim-puk (10), sim-puk2
(10)'
| state: 'connected'
| power state: 'on'
| access tech: 'hsdpa'
| signal quality: '57' (recent)
-------------------------
Modes | supported: 'allowed: 2g; preferred: none
| allowed: 3g; preferred: none
| allowed: 2g, 3g; preferred: none'
| current: 'allowed: 2g, 3g; preferred: none'
-------------------------
Bands | supported: 'egsm, dcs, pcs, g850, u2100, u1900, u850, u900,
u17iv'
| current: 'egsm, dcs, u900'
-------------------------
IP | supported: 'ipv4, ipv6, ipv4v6'
-------------------------
3GPP | imei: '357164041005136'
| enabled locks: 'none'
| operator id: '22201'
| operator name: 'I TIM'
| subscription: 'unknown'
| registration: 'home'
-------------------------
SIM | path: '/org/freedesktop/ModemManager1/SIM/1'
-------------------------
Bearers | paths: '/org/freedesktop/ModemManager1/Bearer/0'
Most of the information fields are self-explaining; to check if one of the modems in the
Applicability Table has been properly recognized check the drivers, plugin and primary port
fields according to the following table:
The sim path, in which the terminating number is the <SIM ID> to be used
in sim related operations:
/org/freedesktop/ModemManager1/SIM/1 in this example.
The bearer path, in which the terminating number is the <BEARER ID> to
be used in data connection related operations:
/org/freedesktop/ModemManager1/Bearer/0 in this example.
e.g.
user@pc:~$ mmcli -i 1
SIM '/org/freedesktop/ModemManager1/SIM/1'
-------------------------
Properties | imsi : '222016502151656'
| id : '89390100000787049160'
| operator id : '22201'
| operator name : 'I TIM'
e.g.
user@pc:~$ mmcli -b 0
Bearer '/org/freedesktop/ModemManager1/Bearer/0'
-------------------------
Status | connected: 'yes'
| suspended: 'no'
| interface: 'ttyACM0'
| IP timeout: '20'
-------------------------
Properties | apn: 'ibox.tim.it'
| roaming: 'allowed'
| IP type: 'ipv4v6'
| user: 'none'
| password: 'none'
| number: '*99#'
e.g.
PID Product ID